[前][次][番号順一覧][スレッド一覧][生データ]

yarv-diff:265

From: ko1 atdot.net
Date: 15 Feb 2006 13:13:31 -0000
Subject: [yarv-diff:265] r428 - in trunk: . lib lib/runit lib/runit/cui

Author: aamine
Date: 2006-02-15 22:13:31 +0900 (Wed, 15 Feb 2006)
New Revision: 428

Added:
   trunk/lib/runit/
   trunk/lib/runit/assert.rb
   trunk/lib/runit/cui/
   trunk/lib/runit/cui/testrunner.rb
   trunk/lib/runit/error.rb
   trunk/lib/runit/testcase.rb
   trunk/lib/runit/testresult.rb
   trunk/lib/runit/testsuite.rb
   trunk/lib/runit/topublic.rb
Modified:
   trunk/ChangeLog
Log:
* lib/runit: forgot to commit.


Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog	2006-02-15 13:12:34 UTC (rev 427)
+++ trunk/ChangeLog	2006-02-15 13:13:31 UTC (rev 428)
@@ -4,6 +4,11 @@
 #  from Mon, 03 May 2004 01:24:19 +0900
 #
 
+2006-02-15(Wed) 22:13:29 +0900  Minero Aoki  <aamine loveruby.net>
+
+	* lib/runit: forgot to commit.
+
+
 2006-02-15(Wed) 22:12:25 +0900  Minero Aoki  <aamine loveruby.net>
 
 	* lib/weakref.rb: do not use Thread.critical=.

Added: trunk/lib/runit/assert.rb
===================================================================
--- trunk/lib/runit/assert.rb	2006-02-15 13:12:34 UTC (rev 427)
+++ trunk/lib/runit/assert.rb	2006-02-15 13:13:31 UTC (rev 428)
@@ -0,0 +1,73 @@
+# Author:: Nathaniel Talbott.
+# Copyright:: Copyright (c) 2000-2002 Nathaniel Talbott. All rights reserved.
+# License:: Ruby license.
+
+require 'test/unit/assertions'
+require 'runit/error'
+
+module RUNIT
+  module Assert
+    include Test::Unit::Assertions
+
+    def setup_assert
+    end
+
+    def assert_no_exception(*args, &block)
+      assert_nothing_raised(*args, &block)
+    end
+
+    # To deal with the fact that RubyUnit does not check that the
+    # regular expression is, indeed, a regular expression, if it is
+    # not, we do our own assertion using the same semantics as
+    # RubyUnit
+    def assert_match(actual_string, expected_re, message="")
+      _wrap_assertion {
+        full_message = build_message(message, "Expected <?> to match <?>", actual_string, expected_re)
+        assert_block(full_message) {
+          expected_re =~ actual_string
+        }
+        Regexp.last_match
+      }
+    end
+
+    def assert_not_nil(actual, message="")
+      assert(!actual.nil?, message)
+    end
+
+    def assert_not_match(actual_string, expected_re, message="")
+      assert_no_match(expected_re, actual_string, message)
+    end
+
+    def assert_matches(*args)
+      assert_match(*args)
+    end
+
+    def assert_fail(message="")
+      flunk(message)
+    end
+
+    def assert_equal_float(expected, actual, delta, message="")
+      assert_in_delta(expected, actual, delta, message)
+    end
+
+    def assert_send(object, method, *args)
+      super([object, method, *args])
+    end
+
+    def assert_exception(exception, message="", &block)
+      assert_raises(exception, message, &block)
+    end
+
+    def assert_respond_to(method, object, message="")
+      if (called_internally?)
+        super
+      else
+        super(object, method, message)
+      end
+    end
+
+    def called_internally?
+      /assertions\.rb/.match(caller[1])
+    end
+  end
+end

Added: trunk/lib/runit/cui/testrunner.rb
===================================================================
--- trunk/lib/runit/cui/testrunner.rb	2006-02-15 13:12:34 UTC (rev 427)
+++ trunk/lib/runit/cui/testrunner.rb	2006-02-15 13:13:31 UTC (rev 428)
@@ -0,0 +1,51 @@
+# Author:: Nathaniel Talbott.
+# Copyright:: Copyright (c) 2000-2002 Nathaniel Talbott. All rights reserved.
+# License:: Ruby license.
+
+require 'test/unit/ui/console/testrunner'
+require 'runit/testresult'
+
+module RUNIT
+  module CUI
+    class TestRunner < Test::Unit::UI::Console::TestRunner
+      @@quiet_mode = false
+      
+      def self.run(suite)
+        self.new().run(suite)
+      end
+      
+      def initialize
+        super nil
+      end
+      
+      def run(suite, quiet_mode=@@quiet_mode)
+        @suite = suite
+        def @suite.suite
+          self
+        end
+        @output_level = (quiet_mode ? Test::Unit::UI::PROGRESS_ONLY : Test::Unit::UI::VERBOSE)
+        start
+      end
+      
+      def create_mediator(suite)
+        mediator = Test::Unit::UI::TestRunnerMediator.new(suite)
+        class << mediator
+          attr_writer :result_delegate
+          def create_result
+            return @result_delegate.create_result
+          end
+        end
+        mediator.result_delegate = self
+        return mediator
+      end
+      
+      def create_result
+        return RUNIT::TestResult.new
+      end
+      
+      def self.quiet_mode=(boolean)
+        @@quiet_mode = boolean
+      end
+    end
+  end
+end

Added: trunk/lib/runit/error.rb
===================================================================
--- trunk/lib/runit/error.rb	2006-02-15 13:12:34 UTC (rev 427)
+++ trunk/lib/runit/error.rb	2006-02-15 13:13:31 UTC (rev 428)
@@ -0,0 +1,9 @@
+# Author:: Nathaniel Talbott.
+# Copyright:: Copyright (c) 2000-2002 Nathaniel Talbott. All rights reserved.
+# License:: Ruby license.
+
+require 'test/unit/assertionfailederror.rb'
+
+module RUNIT
+  AssertionFailedError = Test::Unit::AssertionFailedError
+end

Added: trunk/lib/runit/testcase.rb
===================================================================
--- trunk/lib/runit/testcase.rb	2006-02-15 13:12:34 UTC (rev 427)
+++ trunk/lib/runit/testcase.rb	2006-02-15 13:13:31 UTC (rev 428)
@@ -0,0 +1,45 @@
+# Author:: Nathaniel Talbott.
+# Copyright:: Copyright (c) 2000-2002 Nathaniel Talbott. All rights reserved.
+# License:: Ruby license.
+
+require 'runit/testresult'
+require 'runit/testsuite'
+require 'runit/assert'
+require 'runit/error'
+require 'test/unit/testcase'
+
+module RUNIT
+  class TestCase < Test::Unit::TestCase  
+    include RUNIT::Assert
+    
+    def self.suite
+      method_names = instance_methods(true)
+      tests = method_names.delete_if { |method_name| method_name !~ /^test/ }
+      suite = TestSuite.new(name)
+      tests.each {
+        |test|
+        catch(:invalid_test) {
+          suite << new(test, name)
+        }
+      }
+      return suite
+    end
+    
+    def initialize(test_name, suite_name=self.class.name)
+      super(test_name)
+    end
+    
+    def assert_equals(*args)
+      assert_equal(*args)
+    end
+    
+    def name
+      super.sub(/^(.*?)\((.*)\)$/, '\2#\1')
+    end
+    
+    def run(result, &progress_block)
+      progress_block = proc {} unless (block_given?)
+      super(result, &progress_block)
+    end
+  end
+end

Added: trunk/lib/runit/testresult.rb
===================================================================
--- trunk/lib/runit/testresult.rb	2006-02-15 13:12:34 UTC (rev 427)
+++ trunk/lib/runit/testresult.rb	2006-02-15 13:13:31 UTC (rev 428)
@@ -0,0 +1,44 @@
+# Author:: Nathaniel Talbott.
+# Copyright:: Copyright (c) 2000-2002 Nathaniel Talbott. All rights reserved.
+# License:: Ruby license.
+
+require 'test/unit/testresult'
+
+module RUNIT
+  class TestResult < Test::Unit::TestResult
+    attr_reader(:errors, :failures)
+    def succeed?
+      return passed?
+    end
+    def failure_size
+      return failure_count
+    end
+    def run_asserts
+      return assertion_count
+    end
+    def error_size
+      return error_count
+    end
+    def run_tests
+      return run_count
+    end
+    def add_failure(failure)
+      def failure.at
+        return location
+      end
+      def failure.err
+        return message
+      end
+      super(failure)
+    end
+    def add_error(error)
+      def error.at
+        return location
+      end
+      def error.err
+        return exception
+      end
+      super(error)
+    end
+  end
+end

Added: trunk/lib/runit/testsuite.rb
===================================================================
--- trunk/lib/runit/testsuite.rb	2006-02-15 13:12:34 UTC (rev 427)
+++ trunk/lib/runit/testsuite.rb	2006-02-15 13:13:31 UTC (rev 428)
@@ -0,0 +1,26 @@
+# Author:: Nathaniel Talbott.
+# Copyright:: Copyright (c) 2000-2002 Nathaniel Talbott. All rights reserved.
+# License:: Ruby license.
+
+require 'test/unit/testsuite'
+
+module RUNIT
+  class TestSuite < Test::Unit::TestSuite
+    def add_test(*args)
+      add(*args)
+    end
+    
+    def add(*args)
+      self.<<(*args)
+    end
+    
+    def count_test_cases
+      return size
+    end
+    
+    def run(result, &progress_block)
+      progress_block = proc {} unless (block_given?)
+      super(result, &progress_block)
+    end
+  end
+end

Added: trunk/lib/runit/topublic.rb
===================================================================
--- trunk/lib/runit/topublic.rb	2006-02-15 13:12:34 UTC (rev 427)
+++ trunk/lib/runit/topublic.rb	2006-02-15 13:13:31 UTC (rev 428)
@@ -0,0 +1,8 @@
+# Author:: Nathaniel Talbott.
+# Copyright:: Copyright (c) 2000-2002 Nathaniel Talbott. All rights reserved.
+# License:: Ruby license.
+
+module RUNIT
+  module ToPublic
+  end
+end


-- 
ML: yarv-diff quickml.atdot.net
Info: http://www.atdot.net/~ko1/quickml

[前][次][番号順一覧][スレッド一覧][生データ]