Sha256: 013dfb19be0521be1b7fa605dccc676f784a8ac8bb5c1d6c51e1c77e0ec27809

Contents?: true

Size: 825 Bytes

Versions: 1

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

1 entries across 1 versions & 1 rubygems

Version Path
message-driver-0.3.0 features/step_definitions/logging_steps.rb