Sha256: 33ed52c02fd7487d6fe251173df684fed37f2ef844436188058b3511023db14c

Contents?: true

Size: 1.89 KB

Versions: 10

Compression:

Stored size: 1.89 KB

Contents

module RequestLogAnalyzer::Spec::Mocks
  
  def mock_source
    source = mock('RequestLogAnalyzer::Source::Base')
    source.stub!(:file_format).and_return(testing_format)
    source.stub!(:parsed_requests).and_return(2)
    source.stub!(:skipped_requests).and_return(1)    
    source.stub!(:parse_lines).and_return(10)
    
    source.stub!(:warning=)
    source.stub!(:progress=)
    source.stub!(:source_changes=)

    source.stub!(:prepare)
    source.stub!(:finalize)
        
    source.stub!(:each_request).and_return do |block|
      block.call(testing_format.request(:field => 'value1'))
      block.call(testing_format.request(:field => 'value2'))
    end
    
    return source
  end

  def mock_io
    mio = mock('IO')
    mio.stub!(:print)
    mio.stub!(:puts)    
    mio.stub!(:write)
    return mio
  end
  
  def mock_output
    output = mock('RequestLogAnalyzer::Output::Base')
    output.stub!(:header)
    output.stub!(:footer)   
    output.stub!(:puts)
    output.stub!(:<<)    
    output.stub!(:title)
    output.stub!(:line)
    output.stub!(:with_style)    
    output.stub!(:table).and_yield([])
    output.stub!(:io).and_return(mock_io)
    return output
  end
  
  def mock_database(*stubs)
    database = mock('RequestLogAnalyzer::Database')
    database.stub!(:connect)
    database.stub!(:disconnect)
    database.stub!(:connection).and_return(mock_connection)
    stubs.each { |s| database.stub!(s)}
    return database
  end
  
  def mock_connection
    table_creator = mock('ActiveRecord table creator')
    table_creator.stub!(:column)
    
    connection = mock('ActiveRecord::Base.connection')
    connection.stub!(:add_index)
    connection.stub!(:remove_index)
    connection.stub!(:table_exists?).and_return(false)
    connection.stub!(:create_table).and_yield(table_creator).and_return(true)
    connection.stub!(:table_creator).and_return(table_creator)
    return connection
  end
  
  
end

Version data entries

10 entries across 10 versions & 2 rubygems

Version Path
wvanbergen-request-log-analyzer-1.3.0 spec/lib/mocks.rb
wvanbergen-request-log-analyzer-1.3.1 spec/lib/mocks.rb
wvanbergen-request-log-analyzer-1.3.2 spec/lib/mocks.rb
wvanbergen-request-log-analyzer-1.3.3 spec/lib/mocks.rb
wvanbergen-request-log-analyzer-1.3.4 spec/lib/mocks.rb
request-log-analyzer-1.3.4 spec/lib/mocks.rb
request-log-analyzer-1.3.3 spec/lib/mocks.rb
request-log-analyzer-1.3.2 spec/lib/mocks.rb
request-log-analyzer-1.3.1 spec/lib/mocks.rb
request-log-analyzer-1.3.0 spec/lib/mocks.rb