Sha256: d7f97c189eb2d1aae8e6639ce588752a61ce78d83a53a3a95c0deb591f18834e

Contents?: true

Size: 825 Bytes

Versions: 5

Compression:

Stored size: 825 Bytes

Contents

require 'logger'

LOG_FILE_NAME = 'cucumber_log_file.log'

Given(/^I am logging to a log file(?: at the (#{STRING_OR_SYM}) level)?$/) do |level|
  step "an empty file named \"#{LOG_FILE_NAME}\""
  in_current_dir do
    @logger = Logger.new(LOG_FILE_NAME)
  end
  step "I set the log level to #{level || 'info'}"
  @orig_logger, MessageDriver.logger = MessageDriver.logger, @logger
end

Given(/^I set the log level to (#{STRING_OR_SYM})$/) do |level|
  level = level ? level.to_s.upcase : 'INFO'
  @logger.level = Logger::SEV_LABEL.find_index(level)
end

Then 'the log file should contain:' do |string|
  step "the file \"#{LOG_FILE_NAME}\" should contain:", string
end

After do
  if @logger
    @logger.close
    @logger = nil
  end
  if @orig_logger
    MessageDriver.logger = @orig_logger
    @orig_logger = nil
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
message-driver-0.5.3 features/step_definitions/logging_steps.rb
message-driver-0.5.2 features/step_definitions/logging_steps.rb
message-driver-0.5.1 features/step_definitions/logging_steps.rb
message-driver-0.5.0 features/step_definitions/logging_steps.rb
message-driver-0.4.0 features/step_definitions/logging_steps.rb