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.180 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.179 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.178 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.177 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.176 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.175 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.174 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.173 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.172 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.171 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.170 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.169 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.167 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.166 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.165 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.164 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.163 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.162 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.161 tracks/ruby/test/generator/exercise_case_test.rb
trackler-2.2.1.160 tracks/ruby/test/generator/exercise_case_test.rb