summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorshyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-01-24 15:01:50 +0000
committershyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-01-24 15:01:50 +0000
commitcdd72bedf42048e35540b72a742d470b76770279 (patch)
tree31a7c7255b093733c67e0e6aaa3ce23e48bdd115
parent05159a8ba1a7756c28833647603f075ded3bf5be (diff)
merge revision(s) 19339:
* lib/matrix.rb (Vector#eql?): typo of the method name as "eqn?". (Vector#eqn?): removed. Defined by mistake. Fixes [ruby-dev:36294]. Reported by weda <weda AT issp.u-tokyo.ac.jp> and an anonymous user. * test/matrix/test_matrix.rb: added. * test/matrix/test_vector.rb: added. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8_6@21753 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog11
-rw-r--r--lib/matrix.rb2
-rw-r--r--test/matrix/test_matrix.rb43
-rw-r--r--test/matrix/test_vector.rb43
-rw-r--r--version.h8
5 files changed, 102 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index bbf2d3e070..b143d7e175 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+Sun Jan 25 00:00:50 2009 Yuki Sonoda (Yugui) <yugui@yugui.jp>
+
+ * lib/matrix.rb (Vector#eql?): typo of the method name as "eqn?".
+ (Vector#eqn?): removed. Defined by mistake.
+ Fixes [ruby-dev:36294]. Reported by weda <weda AT
+ issp.u-tokyo.ac.jp> and an anonymous user.
+
+ * test/matrix/test_matrix.rb: added.
+
+ * test/matrix/test_vector.rb: added.
+
Fri Jan 23 11:42:21 2009 Shugo Maeda <shugo@ruby-lang.org>
* NEWS: added an entry for REXML.
diff --git a/lib/matrix.rb b/lib/matrix.rb
index c62acdf9aa..c4fa8cefda 100644
--- a/lib/matrix.rb
+++ b/lib/matrix.rb
@@ -1081,7 +1081,7 @@ class Vector
other.compare_by(@elements)
end
- alias eqn? ==
+ alias eql? ==
#
# For internal use.
diff --git a/test/matrix/test_matrix.rb b/test/matrix/test_matrix.rb
new file mode 100644
index 0000000000..9e132efa5e
--- /dev/null
+++ b/test/matrix/test_matrix.rb
@@ -0,0 +1,43 @@
+require 'test/unit'
+require 'matrix'
+
+class TestMatrix < Test::Unit::TestCase
+ def setup
+ @m1 = Matrix[[1,2,3], [4,5,6]]
+ @m2 = Matrix[[1,2,3], [4,5,6]]
+ @m3 = @m1.clone
+ @m4 = Matrix[[1,0, 2.0, 3.0], [4.0, 5.0, 6.0]]
+ @n1 = Matrix[[2,3,4], [5,6,7]]
+ end
+
+ def test_identity
+ assert_same @m1, @m1
+ assert_not_same @m1, @m2
+ assert_not_same @m1, @m3
+ assert_not_same @m1, @m4
+ assert_not_same @m1, @n1
+ end
+
+ def test_equality
+ assert_equal @m1, @m1
+ assert_equal @m1, @m2
+ assert_equal @m1, @m3
+ assert_not_equal @m1, @m4
+ assert_not_equal @m1, @n1
+ end
+
+ def test_hash_equality
+ assert @m1.eql?(@m1)
+ assert @m1.eql?(@m2)
+ assert @m1.eql?(@m3)
+ assert !@m1.eql?(@m4)
+ assert !@m1.eql?(@n1)
+
+ hash = { @m1 => :value }
+ assert hash.key?(@m1)
+ assert hash.key?(@m2)
+ assert hash.key?(@m3)
+ assert !hash.key?(@m4)
+ assert !hash.key?(@n1)
+ end
+end
diff --git a/test/matrix/test_vector.rb b/test/matrix/test_vector.rb
new file mode 100644
index 0000000000..d8f5c778c3
--- /dev/null
+++ b/test/matrix/test_vector.rb
@@ -0,0 +1,43 @@
+require 'test/unit'
+require 'matrix'
+
+class TestVector < Test::Unit::TestCase
+ def setup
+ @v1 = Vector[1,2,3]
+ @v2 = Vector[1,2,3]
+ @v3 = @v1.clone
+ @v4 = Vector[1,0, 2.0, 3.0]
+ @w1 = Vector[2,3,4]
+ end
+
+ def test_identity
+ assert_same @v1, @v1
+ assert_not_same @v1, @v2
+ assert_not_same @v1, @v3
+ assert_not_same @v1, @v4
+ assert_not_same @v1, @w1
+ end
+
+ def test_equality
+ assert_equal @v1, @v1
+ assert_equal @v1, @v2
+ assert_equal @v1, @v3
+ assert_not_equal @v1, @v4
+ assert_not_equal @v1, @w1
+ end
+
+ def test_hash_equality
+ assert @v1.eql?(@v1)
+ assert @v1.eql?(@v2)
+ assert @v1.eql?(@v3)
+ assert !@v1.eql?(@v4)
+ assert !@v1.eql?(@w1)
+
+ hash = { @v1 => :value }
+ assert hash.key?(@v1)
+ assert hash.key?(@v2)
+ assert hash.key?(@v3)
+ assert !hash.key?(@v4)
+ assert !hash.key?(@w1)
+ end
+end
diff --git a/version.h b/version.h
index b506f3f80e..ffad6fd071 100644
--- a/version.h
+++ b/version.h
@@ -1,15 +1,15 @@
#define RUBY_VERSION "1.8.6"
-#define RUBY_RELEASE_DATE "2009-01-23"
+#define RUBY_RELEASE_DATE "2009-01-25"
#define RUBY_VERSION_CODE 186
-#define RUBY_RELEASE_CODE 20090123
-#define RUBY_PATCHLEVEL 307
+#define RUBY_RELEASE_CODE 20090125
+#define RUBY_PATCHLEVEL 308
#define RUBY_VERSION_MAJOR 1
#define RUBY_VERSION_MINOR 8
#define RUBY_VERSION_TEENY 6
#define RUBY_RELEASE_YEAR 2009
#define RUBY_RELEASE_MONTH 1
-#define RUBY_RELEASE_DAY 23
+#define RUBY_RELEASE_DAY 25
#ifdef RUBY_EXTERN
RUBY_EXTERN const char ruby_version[];