Sha256: 569c8e870bed0b365f8437c8acd54fb4352bc82a5776967a759395464268b4c3

Contents?: true

Size: 1.55 KB

Versions: 1

Compression:

Stored size: 1.55 KB

Contents

#  _____         _
# |_   _|__  ___| |_
#   | |/ _ \/ __| __|
#   | |  __/\__ \ |_
#   |_|\___||___/\__|
#
# for lib/facets/more/predicate.rb
#
# Extracted Tue Jul 25 10:07:15 EDT 2006
# Unit Tools Reap Test Extractor
#

require 'facets/more/predicate.rb'


  require 'test/unit'

  module TestLogic

    include Predicate::LogicInclusion
    extend Predicate::LogicExtension

    def man(x)
    end

    def woman(x)
    end

    def tool(x)
    end

    def mortal(x)
      woman(x) | man(x)
    end

    def can_use(x, y)
      ( man(x) | woman(x) ) & tool(y)
    end

  end

  class TC_Predicate < Test::Unit::TestCase

    include TestLogic

    def setup
      man('socrates')
      woman('dido')
      tool('hammer')
      can_use('me', 'ball')
    end

    def test_facts
      assert(man?('socrates'), "man?('socrates')")
      assert(woman?('dido'), "woman?('dido')")
      assert(tool?('hammer'), "tool?('hammer')")
      assert(can_use?('me', 'ball'), "can_use?('me', 'ball')")
    end

    def test_deductions
      assert(mortal?('socrates'))
      assert(mortal?('dido'))
      assert(can_use?('socrates','hammer'))
      assert(can_use?('dido','hammer'))
    end

    def test_queries
      assert(man(/.*/).include?(['socrates']))
      assert(woman(/.*/).include?(['dido']))
      assert(mortal(/.*/).include?(['socrates']))
      assert(mortal(/.*/).include?(['dido']))
      assert(can_use(/.*/,/.*/).include?(['socrates', 'hammer']))
      assert(can_use(/.*/,/.*/).include?(['dido', 'hammer']))
      assert(can_use(/.*/,/.*/).include?(['me', 'ball']))
    end

  end


Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
facets-1.7.0 test/lib/facets/more/test_predicate.rb