Sha256: c4e34b9943322ab7270250c3e9ca179358d6dd3d9e2631e1abaf22c59b761a86

Contents?: true

Size: 1.27 KB

Versions: 2

Compression:

Stored size: 1.27 KB

Contents

require 'helper'

describe Toy::Logger do
  uses_constants('User')

  before do
    @logger = Toy.logger
  end

  after do
    Toy.logger = @logger
  end

  it "should use Toy.logger for class" do
    User.logger.should == Toy.logger
  end

  it "should use Toy.logger for instance" do
    User.new.logger.should == Toy.logger
  end

  describe ".log_operation" do
    let(:adapter) { Adapter[:memory].new({}) }

    it "logs operation" do
      Toy.logger = stub(:debug? => true)
      User.logger.should_receive(:debug).with('TOYSTORE GET User :memory "foo"')
      User.logger.should_receive(:debug).with('  "bar"')
      User.log_operation(:get, User, adapter, 'foo', 'bar')
    end

    it "ignores operations that should not be logged" do
      Toy.logger = stub(:debug? => true)
      User.logger.should_receive(:debug).with('TOYSTORE IMG User :memory "foo"')
      User.log_operation(:img, User, adapter, 'foo', 'bar')
    end
  end

  describe "#log_operation" do
    let(:adapter) { Adapter[:memory].new({}) }

    it "logs operation" do
      Toy.logger = stub(:debug? => true)
      User.logger.should_receive(:debug).with('TOYSTORE GET User :memory "foo"')
      User.logger.should_receive(:debug).with('  "bar"')
      User.log_operation(:get, User, adapter, 'foo', 'bar')
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
toystore-0.8.3 spec/toy/logger_spec.rb
toystore-0.8.2 spec/toy/logger_spec.rb