Невозможно удалить товар из корзины.Спек сбой - PullRequest
0 голосов
/ 21 мая 2011

У меня есть простое приложение для корзины покупок, и я пытаюсь проверить следующий метод:

  def add(item_id)
    item = Product.find(item_id)
    args = {
      :product_id=>item.id,
      :seller_id=>item.shop_id,
      :price =>item.price
    }
    cart_items<<CartItem.create(args)
  end

  def remove(item_id)
    cart_items.where(:product_id=>item_id).map(&:destroy)
  end

Спецификация для этой вещи

  it "should remove a product from the cart" do
    cart = Cart.new
    item = Product.create(:price=>3450,:id=>1,:shop_id=>1)
    cart.add(item.id)    
    cart.should_not be_empty

    cart.remove(item.id)
    cart.should be_empty
  end

Неважно, что я делаю, я не могу заставить это пройти. cart_item.length всегда равно 1. Не уверен, почему это происходит. Пожалуйста, помогите.

Ответы [ 2 ]

0 голосов
/ 21 мая 2011

Я подозреваю, что проблема в том, что вы ни в коем случае не сохраняете корзину в базу данных.

0 голосов
/ 21 мая 2011

Я часто обнаруживал, что это потому, что вы не перезагружаете базу данных после удаления элемента.

cart.reload
cart.should be_empty
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...