class OrderTest < Minitest::Test
def setup
@order = Order.new
end
def around(&block)
Order.stub :can_be_processed_today?, true, &block
end
def test_initiated_at
assert_equal Date.today, @order.initiated_at.to_date
end
def test_add_product
product = Product.new
@order << product
assert_equal [product], @order.products
assert_equal 1, @order.size
assert
[email protected]?
end
def test_valid
@order.user = User.new
@order << Product.new
assert @order.valid?
end
def test_valid_when_no_user
@order << Product.new
assert
[email protected]?
end
def test_valid_when_no_products
@order.user = User.new
assert
[email protected]?
end
def test_cancel
@order.cancel
assert_equal :canceled, @order.state
end
end