Sha256: ccbff81869ce552e5a69304eae58b890d5a5771ef490353978df924fc76f32d8

Contents?: true

Size: 1.5 KB

Versions: 136

Compression:

Stored size: 1.5 KB

Contents

require_relative '../test_helper'

module Generator
  class ExerciseCaseTest < Minitest::Test
    def test_name
      subject = ExerciseCase.new(canonical: OpenStruct.new(description: 'foo'))
      assert_equal 'test_foo', subject.name
    end

    def test_name_with_trailing_whitespace
      subject = ExerciseCase.new(canonical: OpenStruct.new(description: 'foo '))
      assert_equal 'test_foo', subject.name
    end

    def test_name_with_leading_whitespace
      subject = ExerciseCase.new(canonical: OpenStruct.new(description: ' foo'))
      assert_equal 'test_foo', subject.name
    end

    def test_skipped_index_zero
      assert_equal '# skip', ExerciseCase.new(canonical: nil).skipped(0)
    end

    def test_skipped_index_nonzero
      assert_equal 'skip', ExerciseCase.new(canonical: nil).skipped(1)
    end

    def test_forwarding_to_canonical
      mock_canonical = Minitest::Mock.new
      mock_canonical.expect :key, 'fake value'
      subject = ExerciseCase.new(canonical: mock_canonical)
      subject.key
      mock_canonical.verify
    end

    def test_method_mising_calls_super
      subject = ExerciseCase.new(canonical: nil)
      assert_raises NoMethodError do
        subject.key
      end
    end

    def test_true_respond_to?
      subject = ExerciseCase.new(canonical: OpenStruct.new(key: 'value'))
      assert subject.respond_to?(:key)
    end

    def test_false_respond_to?
      subject = ExerciseCase.new(canonical: OpenStruct.new())
      refute subject.respond_to?(:key)
    end
  end
end

Version data entries

136 entries across 136 versions & 1 rubygems

Version Path
trackler-2.2.1.159 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.158 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.157 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.156 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.155 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.154 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.153 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.152 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.151 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.150 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.149 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.148 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.147 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.146 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.145 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.144 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.143 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.142 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.141 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.140 tracks/ruby/test/generator/exercise_case_test.rb