Sha256: 5c8dbf205d00e687e360459b25b42e5606db4e2e7cbe46e66aa90cd2a393cb50

Contents?: true

Size: 1.06 KB

Versions: 2

Compression:

Stored size: 1.06 KB

Contents

require 'spec_helper.rb'

describe Canmoia::Order do

  it 'should include Camnoia::Order module ' do
    order = Fabricate :order
    order.class.included_modules.should include Canmoia::Order
  end

  it 'should define core domain states for a Order' do
    order = Fabricate :order # Order class must include Canmoia::Order
    order.should respond_to :opened?
    order.should respond_to :reviewing?
    order.should respond_to :accepted?
    order.should respond_to :rejected?
    order.should respond_to :canceled?
    order.should respond_to :completed?
  end

  it 'should compute total value' do
    order = Fabricate :accepted_order
    order.items.sum(&:value).should == order.total
  end

  it 'should not compute total value after opened state' do
    order = Fabricate :order
    first_item = order.items.first

    order.close!

    first_item.value = 1

    order.items.sum(&:value).should == order.total

    first_item.value = 2

    order.items.sum(&:value).should == order.total
  end

  # it 'should ignore workflow_column call if workflow_column already called'
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
canmoia-0.0.2 spec/concerns/order_spec.rb~
canmoia-0.0.1 spec/concerns/order_spec.rb~