From a0975b5c463b7575adde3b1f43fcfa1e91bb59f2 Mon Sep 17 00:00:00 2001
From: Slava Pestov <slava@oberon.internal.stack-effects.com>
Date: Fri, 28 Mar 2008 20:28:17 -0500
Subject: [PATCH] Adding some unit tests

---
 core/tuples/tuples-tests.factor | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/core/tuples/tuples-tests.factor b/core/tuples/tuples-tests.factor
index e670c26c25..09795888a8 100755
--- a/core/tuples/tuples-tests.factor
+++ b/core/tuples/tuples-tests.factor
@@ -316,6 +316,30 @@ C: <server> server
     "IN: tuples.tests TUPLE: bad-superclass < word ;" eval
 ] must-fail
 
+! Reshaping with inheritance
+TUPLE: electronic-device ;
+
+[ ] [ "IN: tuples.tests TUPLE: computer < electronic-device ;" eval ] unit-test
+
+[ f ] [ electronic-device laptop class< ] unit-test
+[ t ] [ server electronic-device class< ] unit-test
+[ t ] [ laptop server class-or electronic-device class< ] unit-test
+
+[ t ] [ "laptop" get electronic-device? ] unit-test
+[ t ] [ "laptop" get computer? ] unit-test
+[ t ] [ "laptop" get laptop? ] unit-test
+[ f ] [ "laptop" get server? ] unit-test
+
+[ t ] [ "server" get electronic-device? ] unit-test
+[ t ] [ "server" get computer? ] unit-test
+[ f ] [ "server" get laptop? ] unit-test
+[ t ] [ "server" get server? ] unit-test
+
+[ ] [ "IN: tuples.tests TUPLE: computer ;" eval ] unit-test
+
+[ f ] [ "laptop" get electronic-device? ] unit-test
+[ t ] [ "laptop" get computer? ] unit-test
+
 ! Hardcore unit tests
 USE: threads