Sha256: 6985a59f3a5f8577a580c086685e60da56fe5b2cbeebe13c86a191aa8d8e2e48

Contents?: true

Size: 1.08 KB

Versions: 36

Compression:

Stored size: 1.08 KB

Contents

# frozen_string_literal: true

require 'avm/sources/tests/result'
require 'eac_ruby_utils/core_ext'
require 'eac_fs/logs'

module Avm
  module Sources
    module Tests
      class Single
        MAIN_SOURCE_ID = '#main'

        compare_by :order_group, :id
        enable_simple_cache
        enable_speaker

        common_constructor :builder, :source

        delegate :logs, :result, to: :tester
        delegate :to_s, to: :id

        def failed?
          result == ::Avm::Sources::Tests::Result::FAILED
        end

        # @return [String]
        def id
          if main?
            MAIN_SOURCE_ID
          else
            relative_path_from_main_source.to_s
          end
        end

        def main?
          relative_path_from_main_source.to_s == '.'
        end

        def order_group
          main? ? 1 : 0
        end

        # @return [Pathname]
        def relative_path_from_main_source
          source.path.relative_path_from(builder.main_source.path)
        end

        private

        def tester_uncached
          source.tester
        end
      end
    end
  end
end

Version data entries

36 entries across 36 versions & 3 rubygems

Version Path
eac_tools-0.3.0 sub/avm/lib/avm/sources/tests/single.rb
eac_tools-0.2.2 sub/avm/lib/avm/sources/tests/single.rb
avm-0.23.0 lib/avm/sources/tests/single.rb
avm-0.22.0 lib/avm/sources/tests/single.rb
avm-tools-0.120.0 sub/avm/lib/avm/sources/tests/single.rb
avm-0.21.0 lib/avm/sources/tests/single.rb
avm-tools-0.119.0 sub/avm/lib/avm/sources/tests/single.rb
avm-0.20.0 lib/avm/sources/tests/single.rb
avm-tools-0.118.0 sub/avm/lib/avm/sources/tests/single.rb
avm-tools-0.117.3 sub/avm/lib/avm/sources/tests/single.rb
avm-tools-0.117.2 sub/avm/lib/avm/sources/tests/single.rb
avm-tools-0.117.1 sub/avm/lib/avm/sources/tests/single.rb
avm-0.19.0 lib/avm/sources/tests/single.rb
avm-tools-0.117.0 sub/avm/lib/avm/sources/tests/single.rb
avm-tools-0.116.2 sub/avm/lib/avm/sources/tests/single.rb
avm-0.18.1 lib/avm/sources/tests/single.rb
avm-0.18.0 lib/avm/sources/tests/single.rb
avm-tools-0.116.1 sub/avm/lib/avm/sources/tests/single.rb
avm-tools-0.116.0 sub/avm/lib/avm/sources/tests/single.rb
avm-0.17.0 lib/avm/sources/tests/single.rb