Class: Utils::ConfigFile::Probe

Inherits:
BlockConfig show all
Defined in:
lib/utils/config_file.rb

Overview

A configuration class for test execution settings.

This class manages the configuration options related to running tests, specifically supporting different test frameworks and defining which directories should be included in test discovery and execution.

Instance Method Summary collapse

Methods inherited from BlockConfig

config, inherited, lazy_config, #to_ruby

Constructor Details

#initialize(&block) ⇒ Probe

The initialize method sets up the configuration by validating the test framework.

This method initializes the configuration object and ensures that the specified test framework is one of the allowed values. It raises an error if the test framework is not supported.

Parameters:

  • a block to be passed to the superclass initializer



258
259
260
261
262
263
264
# File 'lib/utils/config_file.rb', line 258

def initialize(&block)
  super
  test_frameworks_allowed = [ :'test-unit', :rspec ]
  test_frameworks_allowed.include?(test_framework) or
    raise ConfigFileError,
      "test_framework has to be in #{test_frameworks_allowed.inspect}"
end

Instance Method Details

#include_dirs_argumentString

The include_dirs_argument method constructs a colon-separated string from include directories.

This method takes the include directories configuration and converts it into a single colon-delimited string suitable for use in command-line arguments or environment variables.

Returns:

  • a colon-separated string of include directory paths



246
247
248
# File 'lib/utils/config_file.rb', line 246

def include_dirs_argument
  Array(include_dirs) * ':'
end

#server_urlString

The server_url method configures the URL for the probe server communication.

This method sets up a DSL accessor for the probe server URL, providing a default value that uses a Unix domain socket located in the current working directory.

Returns:

  • the configured probe server URL including the default socket path



236
# File 'lib/utils/config_file.rb', line 236

dsl_accessor :server_url, "unix://#{Pathname.pwd + 'probe.socket'}"