Sha256: 79366b7d007c9f0b09c3edecc558fe187fbe7a2f60577e59953a976f2f785740

Contents?: true

Size: 684 Bytes

Versions: 7

Compression:

Stored size: 684 Bytes

Contents

module Approvals
  module Namers
    class RSpecNamer
      attr_reader :name

      def initialize(example)
        @name = name_for_example(example)
        @output_dir = nil
      end

      def name_for_example(example)
        normalize example.full_description
      end

      def normalize(string)
        string.strip.squeeze(" ").gsub(/[\ :-]+/, '_').gsub(/[\W]/, '').downcase
      end

      def output_dir
        unless @output_dir
          begin
            @output_dir = ::RSpec.configuration.approvals_path
          rescue NoMethodError
          end
          @output_dir ||= 'spec/fixtures/approvals/'
        end
        @output_dir
      end

    end
  end
end

Version data entries

7 entries across 7 versions & 2 rubygems

Version Path
approvals-0.1.7 lib/approvals/namers/rspec_namer.rb
approvals-0.0.26 lib/approvals/namers/rspec_namer.rb
approvals-0.0.25 lib/approvals/namers/rspec_namer.rb
approvals-0.0.24 lib/approvals/namers/rspec_namer.rb
br-approvals-0.0.22 lib/approvals/namers/rspec_namer.rb
approvals-0.0.22 lib/approvals/namers/rspec_namer.rb
approvals-0.0.21 lib/approvals/namers/rspec_namer.rb