[Scummvm-cvs-logs] SF.net SVN: scummvm:[52680] scummvm/trunk/test/common/rational.h

fingolfin at users.sourceforge.net fingolfin at users.sourceforge.net
Sun Sep 12 09:24:58 CEST 2010


Revision: 52680
          http://scummvm.svn.sourceforge.net/scummvm/?rev=52680&view=rev
Author:   fingolfin
Date:     2010-09-12 07:24:57 +0000 (Sun, 12 Sep 2010)

Log Message:
-----------
COMMON: Add unit tests for recently fixed Common::Rational bugs

Specifically, the bugs in operators - and / for mixed Rational/int args,
fixed in rev #52675, are tested for.

Revision Links:
--------------
    http://scummvm.svn.sourceforge.net/scummvm/?rev=52675&view=rev

Modified Paths:
--------------
    scummvm/trunk/test/common/rational.h

Modified: scummvm/trunk/test/common/rational.h
===================================================================
--- scummvm/trunk/test/common/rational.h	2010-09-11 21:23:22 UTC (rev 52679)
+++ scummvm/trunk/test/common/rational.h	2010-09-12 07:24:57 UTC (rev 52680)
@@ -79,6 +79,11 @@
 		TS_ASSERT_EQUALS(r1 + r0, Common::Rational(5, 2));
 		TS_ASSERT_EQUALS(r0 - r1, Common::Rational(3, 2));
 		TS_ASSERT_EQUALS(r1 - r0, Common::Rational(-3, 2));
+
+		TS_ASSERT_EQUALS(1 + r1, Common::Rational(3, 2));
+		TS_ASSERT_EQUALS(r1 + 1, Common::Rational(3, 2));
+		TS_ASSERT_EQUALS(1 - r1, Common::Rational(1, 2));
+		TS_ASSERT_EQUALS(r1 - 1, Common::Rational(-1, 2));
 	}
 
 	void test_mul() {
@@ -95,6 +100,9 @@
 		TS_ASSERT_EQUALS((-r2) * r3, -r4);
 		TS_ASSERT_EQUALS(r2 * (-r3), -r4);
 		TS_ASSERT_EQUALS((-r2) * (-r3), r4);
+
+		TS_ASSERT_EQUALS(r1 * 2, 1);
+		TS_ASSERT_EQUALS(2 * r1, 1);
 	}
 
 	void test_div() {
@@ -102,5 +110,8 @@
 		Common::Rational r1(1, 2);
 
 		TS_ASSERT_EQUALS(r0 / r1, 4);
+
+		TS_ASSERT_EQUALS(r1 / 2, Common::Rational(1, 4));
+		TS_ASSERT_EQUALS(2 / r1, Common::Rational(4, 1));
 	}
 };


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list