Sha256: 75d6746c50ad6d37230afbf46d4a369c9d08255167797ce7162765d3fb637891

Contents?: true

Size: 745 Bytes

Versions: 3

Compression:

Stored size: 745 Bytes

Contents

require 'spec_helper'
class FakeKeyValueStore

end


describe Roulette::Transaction do
    before do
      @kv_store = FakeKeyValueStore.new
      @key = "key"
      @args = [@key, "value"]
    end

    describe '#new' do
      it "keeps args, stores, and key" do
        transaction = Roulette::Transaction.new(:store => @kv_store, :args => @args)
        transaction.store.should eq(@kv_store)
        transaction.args.should eq(@args)
      end
    end

    describe "#fire" do
      it "sends a method to a kv_store" do
        fired_method = :sadd
        @kv_store.should_receive(fired_method)
        transaction = Roulette::Transaction.new(:store => @kv_store, :args => @args)
        transaction.fire(fired_method)
      end
    end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
roulette-0.0.5 spec/roulette/transaction_spec.rb
roulette-0.0.4 spec/roulette/transaction_spec.rb
roulette-0.0.3 spec/roulette/transaction_spec.rb