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.139 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.138 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.137 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.136 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.135 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.134 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.133 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.132 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.131 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.130 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.129 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.128 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.127 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.126 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.125 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.124 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.123 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.122 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.121 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.120 tracks/ruby/test/generator/exercise_case_test.rb