Sha256: 239c5b9430a6ff0fe8571712bd26a0695ee96c38d7cdbaa1b77b3190ec8afd3b

Contents?: true

Size: 841 Bytes

Versions: 59

Compression:

Stored size: 841 Bytes

Contents

require 'test_helper'
require 'tins/xt'

module Tins
  class NamedTest < Test::Unit::TestCase

    def test_named_simple
      a = [ 1, 2, 3 ]
      a.named(:plus1, :map) { |x| x + 1 }
      assert_equal [ 2, 3, 4 ], a.plus1
      Array.named(:odd, :select) { |x| x % 2 == 1 }
      assert_equal [ 3 ], a.plus1.odd
    end

    if RUBY_VERSION >= '1.9'
      def foo(x, y, &block)
        block.call x * y
      end

      def test_more_complex
        Object.named(:foo_with_block, :foo) do |z|
          z ** 2
        end
        assert_equal foo(2, 3) { |z| z ** 2 }, foo_with_block(2, 3)
        Object.named(:foo_23, :foo, 2, 3)
        assert_equal foo(2, 3) { |z| z ** 2 }, foo_23 { |z| z ** 2 }
        Object.named(:foo_2, :foo, 2)
        assert_equal foo(2, 3) { |z| z ** 2 }, foo_2(3) { |z| z ** 2 }
      end
    end
  end
end

Version data entries

59 entries across 58 versions & 4 rubygems

Version Path
tdiary-5.1.2 vendor/bundle/ruby/2.6.0/gems/tins-0.13.2/tests/named_test.rb
tdiary-5.1.1 vendor/bundle/ruby/2.6.0/gems/tins-0.13.2/tests/named_test.rb
tdiary-5.0.8 vendor/bundle/gems/tins-0.13.2/tests/named_test.rb
tdiary-5.0.8 vendor/bundle/ruby/2.5.0/gems/tins-0.13.2/tests/named_test.rb
vagrant-cloudstack-1.1.0 vendor/bundle/gems/tins-1.5.1/tests/named_test.rb
tins-1.5.1 tests/named_test.rb
tins-1.5.0 tests/named_test.rb
tins-1.4.2 tests/named_test.rb
tins-1.4.1 tests/named_test.rb
tins-1.4.0 tests/named_test.rb
tins-1.3.5 tests/named_test.rb
tins-1.3.4 tests/named_test.rb
tins-1.3.3 tests/named_test.rb
tins-1.3.2 tests/named_test.rb
tins-1.3.1 tests/named_test.rb
tins-1.3.0 tests/named_test.rb
tins-1.2.0 tests/named_test.rb
tins-1.1.0 tests/named_test.rb
tins-1.0.1 tests/named_test.rb
tins-1.0.0 tests/named_test.rb