1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112
|
/* Copyright (C) 2001 ACUNIA
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: JDK1.2
package gnu.testlet.java.util.AbstractSet;
import gnu.testlet.Testlet;
import gnu.testlet.TestHarness;
import java.util.*;
/**
* Written by ACUNIA. <br>
* <br>
* this file contains test for java.util.AbstractSet <br>
*
*/
public class AcuniaAbstractSetTest extends AbstractSet implements Testlet
{
protected TestHarness th;
public void test (TestHarness harness)
{
th = harness;
test_equals();
test_hashCode();
}
/**
* implemented. <br>
*
*/
public void test_equals(){
th.checkPoint("equals(java.lang.Object)boolean");
AcuniaAbstractSetTest xas1 = new AcuniaAbstractSetTest();
AcuniaAbstractSetTest xas2 = new AcuniaAbstractSetTest();
th.check( xas1.equals(xas2) , "checking equality -- 1");
th.check(!xas1.equals(null) , "checking equality -- 2");
th.check(!xas1.equals(new Object()) , "checking equality -- 3");
th.check( xas1.equals(xas1) , "checking equality -- 4");
xas1.v.add(null);
xas1.v.add("a");
xas2.v.add("b");
xas2.v.add(null);
xas2.v.add("a");
xas1.v.add("b");
th.check( xas1.equals(xas2) , "checking equality -- 5");
th.check( xas1.equals(xas1) , "checking equality -- 6");
}
/**
* implemented. <br>
*
*/
public void test_hashCode(){
th.checkPoint("hashCode()int");
AcuniaAbstractSetTest xas = new AcuniaAbstractSetTest();
th.check(xas.hashCode() == 0 ,"checking hc-algorithm -- 1");
xas.v.add(null);
th.check(xas.hashCode() == 0 ,"checking hc-algorithm -- 2");
xas.v.add("a");
int hash = "a".hashCode();
th.check(xas.hashCode() == hash ,"checking hc-algorithm -- 3");
hash += "b".hashCode();
xas.v.add("b");
th.check(xas.hashCode() == hash ,"checking hc-algorithm -- 4");
hash += "c".hashCode();
xas.v.add("c");
th.check(xas.hashCode() == hash ,"checking hc-algorithm -- 5");
hash += "d".hashCode();
xas.v.add("d");
th.check(xas.hashCode() == hash ,"checking hc-algorithm -- 6");
}
// The following methods aand field are needed to use this class as
// Set implementation.
public Vector v = new Vector();
public AcuniaAbstractSetTest(){
super();
}
public int size() {
return v.size();
}
public Iterator iterator() {
return v.iterator();
}
}
|