Sha256: b60bf129289a0284af1b1bd8111f1f913efd9045f255e5b99279cbd65532a0a6

Contents?: true

Size: 1.19 KB

Versions: 11

Compression:

Stored size: 1.19 KB

Contents

require 'helper.rb'

module BibTeX
  class FiltersTest < Minitest::Spec
    it 'should Filters should be singleton classes' do
      assert_equal false, Filter.respond_to?(:new)
      assert_equal Filter.instance.object_id, Filter.instance.object_id
    end

    describe 'Filters.resolve' do
      it 'should return the filter if a filter is given' do
        assert_equal Filter.instance.object_id, Filters.resolve(Filter.instance).object_id
      end

      it 'should return the parameter if it quacks like a filter' do
        f = Object.new
        def f.apply
          nil
        end
        assert_equal f.object_id, Filters.resolve(f).object_id
      end

      it 'should return the filter if there is a filter by that name' do
        class FooBar < Filter; end
        assert_equal FooBar.instance.object_id, Filters.resolve(:foobar).object_id
        assert_equal FooBar.instance.object_id, Filters.resolve('foobar').object_id
        Filter.subclasses.delete(FooBar)
      end

      it 'should return nil if there is no filter by that name' do
        assert_nil Filters.resolve(:foobar)
        assert_nil Filters.resolve('foobar')
        assert_nil Filters.resolve(nil)
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 2 rubygems

Version Path
bibtex-ruby-6.1.0 test/bibtex/test_filters.rb
bibtex-ruby-6.0.0 test/bibtex/test_filters.rb
bibtex-ruby-5.1.6 test/bibtex/test_filters.rb
bibtex-ruby-5.1.5 test/bibtex/test_filters.rb
metanorma-cli-1.3.4 gems/ruby/2.6.0/gems/bibtex-ruby-5.1.4/test/bibtex/test_filters.rb
metanorma-cli-1.3.3.1 gems/ruby/2.6.0/gems/bibtex-ruby-5.1.4/test/bibtex/test_filters.rb
bibtex-ruby-5.1.4 test/bibtex/test_filters.rb
bibtex-ruby-5.1.3 test/bibtex/test_filters.rb
bibtex-ruby-5.1.2 test/bibtex/test_filters.rb
bibtex-ruby-5.1.1 test/bibtex/test_filters.rb
bibtex-ruby-5.1.0 test/bibtex/test_filters.rb