Sha256: cb67509c465446881da3eca1153dbad85f4b2109dcac84ec4502363f40486465

Contents?: true

Size: 1.43 KB

Versions: 4

Compression:

Stored size: 1.43 KB

Contents

require_relative '../../lib/reek/smell_detectors'
require_relative '../../lib/reek/smell_detectors/base_detector'
require_relative '../../lib/reek/smell_warning'
require_relative '../../lib/reek/cli/options'

FactoryGirl.define do
  factory :context, class: Reek::Context::CodeContext do
    skip_create

    initialize_with do
      new(nil, nil)
    end
  end

  factory :method_context, class: Reek::Context::MethodContext do
    skip_create
    transient do
      source 'def foo; end'
    end

    initialize_with do
      new(nil, Reek::Source::SourceCode.from(source).syntax_tree)
    end
  end

  factory :smell_detector, class: Reek::SmellDetectors::BaseDetector do
    skip_create
    transient do
      smell_type 'FeatureEnvy'
    end

    initialize_with do
      ::Reek::SmellDetectors.const_get(smell_type).new
    end
  end

  factory :smell_warning, class: Reek::SmellWarning do
    skip_create
    smell_detector
    context 'self'
    source 'dummy_file'
    lines [42]
    message 'smell warning message'
    parameters { {} }

    initialize_with do
      new(smell_detector,
          source: source,
          context: context,
          lines: lines,
          message: message,
          parameters: parameters)
    end
  end

  factory :code_comment, class: Reek::CodeComment do
    comment ''
    line 1
    source 'string'
    initialize_with do
      new comment: comment,
          line: line,
          source: source
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
reek-4.5.6 spec/factories/factories.rb
reek-4.5.5 spec/factories/factories.rb
reek-4.5.4 spec/factories/factories.rb
reek-4.5.3 spec/factories/factories.rb