/* Copyright (C) 1999 Hewlett-Packard Company This file is part of Mauve. Mauve is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. Mauve is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with Mauve; see the file COPYING. If not, write to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ // Tags: JLS1.0 package gnu.testlet.wonka.lang.Character; import gnu.testlet.Testlet; import gnu.testlet.TestHarness; public class CharacterTest implements Testlet { protected static TestHarness harness; public void test_Basics() { harness.check(!(Character.forDigit(8, 2) != '\0'), "Error: test_forDigit - 50"); harness.check(!(Character.forDigit(-3, 2) != '\0'), "Error: test_forDigit - 51"); harness.check(!(Character.forDigit(2, 8) != '2'), "Error: test_forDigit - 52"); harness.check(!(Character.forDigit(12, 16) != 'c'), "Error: test_forDigit - 53"); harness.check(!(Character.isJavaLetter('\uFFFF')), "Error: test_forDigit - 54"); harness.check(!(!Character.isJavaLetter('a')), "Error: test_forDigit - 55"); harness.check(!( Character.MIN_VALUE != '\u0000' ), "Error: test_Basics failed - 1" ); harness.check(!( Character.MAX_VALUE != '\uffff' ), "Error: test_Basics failed - 2" ); harness.check(!( Character.MIN_RADIX != 2 ), "Error: test_Basics failed - 3" ); harness.check(!( Character.MAX_RADIX != 36 ), "Error: test_Basics failed - 4" ); Character ch = new Character('b'); harness.check(!( ch.charValue() != 'b' ), "Error: test_Basics failed - 5" ); } public void test_toString() { Character ch = new Character('a'); String str = ch.toString(); harness.check(!( str.length() != 1 || !str.equals("a")), "Error: test_toString failed " ); } public void test_equals() { Character ch1 = new Character('+'); Character ch2 = new Character('+'); Character ch3 = new Character('-'); harness.check(!( !ch1.equals(ch2) || ch1.equals(ch3) || ch1.equals(null)), "Error: test_equals failed - 1" ); } public void test_hashCode( ) { Character ch1 = new Character('a'); harness.check(!( ch1.hashCode() != (int) 'a' ), "Error: test_hashCode returned wrong results" ); } public void test_isSpace( ) { harness.check(!(!Character.isSpace('\t') || !Character.isSpace('\f') || !Character.isSpace('\r') || !Character.isSpace('\n') || !Character.isSpace(' ') || Character.isSpace('+') ), "Error: test_isSpace returned wrong results" ); } public void test_digit( ) { // radix wrong harness.check(!( Character.digit( 'a' , Character.MIN_RADIX - 1 ) != -1 ), "Error: test_digit returned wrong results - 1" ); harness.check(!( Character.digit( 'a' , Character.MAX_RADIX + 1 ) != -1 ), "Error: test_digit returned wrong results - 2" ); } public void test_others() { //calling them just for completion // not supported Character.getNumericValue( 'a' ); // not supported Character.getType( 'a' ); Character.isDefined( 'a' ); Character.isDefined( '\uffff' ); Character.digit('\u0665', 10); Character.digit('\u06F5', 10); Character.digit('\u0968', 10); Character.digit('\u06E8', 10); Character.digit('\u0A68', 10); Character.digit('\u0AE8', 10); Character.digit('\u0B68', 10); Character.digit('\u0BE8', 10); Character.digit('\u0C68', 10); Character.digit('\u0CE8', 10); Character.digit('\u0D68', 10); Character.digit('\u0E52', 10); Character.digit('\u0ED2', 10); Character.digit('\uFF12', 10); Character.digit('\uFFFF', 10); // not supported Character.isISOControl( 'a' ); // not supported Character.isIdentifierIgnorable( 'a' ); // not supported Character.isJavaIdentifierPart( 'a' ); // not supported Character.isJavaIdentifierStart( 'a' ); // not supported Character.isJavaLetter( 'a' ); Character.isJavaLetterOrDigit( 'a' ); harness.check(!(Character.isJavaLetterOrDigit('\uFFFF')), "Error: isJavaLetterOrDigit - 60"); harness.check(!(Character.isLetterOrDigit('\uFFFF')), "Error: isLetterOrDigit - 61"); // not supported Character.isLetter( 'a' ); Character.isLetterOrDigit( 'a' ); Character.isLowerCase( 'A' ); Character.isLowerCase( 'a' ); Character.isSpace( 'a' ); // not supported Character.isSpaceChar( 'a' ); // not supported Character.isTitleCase( 'a' ); // not supported Character.isUnicodeIdentifierPart( 'a' ); // not supported Character.isUnicodeIdentifierStart( 'a' ); Character.isUpperCase( 'a' ); Character.isUpperCase( 'A' ); // not supported Character.isWhitespace( 'a' ); // not supported Character.toTitleCase( 'a' ); } public void testall() { test_Basics(); test_toString(); test_equals(); test_hashCode(); test_isSpace(); test_digit(); test_others(); } public void test (TestHarness the_harness) { harness = the_harness; testall (); } }