114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson/*
214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson *  Licensed to the Apache Software Foundation (ASF) under one or more
314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson *  contributor license agreements.  See the NOTICE file distributed with
414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson *  this work for additional information regarding copyright ownership.
514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson *  The ASF licenses this file to You under the Apache License, Version 2.0
614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson *  (the "License"); you may not use this file except in compliance with
714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson *  the License.  You may obtain a copy of the License at
814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson *
914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson *     http://www.apache.org/licenses/LICENSE-2.0
1014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson *
1114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson *  Unless required by applicable law or agreed to in writing, software
1214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson *  distributed under the License is distributed on an "AS IS" BASIS,
1314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson *  See the License for the specific language governing permissions and
1514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson *  limitations under the License.
1614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson */
1714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
184557728efb66c455a52b7669a8eefef7a9e54854Jesse Wilsonpackage libcore.java.util;
1914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
2014816f17144d90174628ee82dc616d4b9c921149Jesse Wilsonimport java.util.Arrays;
2114816f17144d90174628ee82dc616d4b9c921149Jesse Wilsonimport java.util.Collection;
2214816f17144d90174628ee82dc616d4b9c921149Jesse Wilsonimport java.util.HashMap;
2314816f17144d90174628ee82dc616d4b9c921149Jesse Wilsonimport java.util.Iterator;
2414816f17144d90174628ee82dc616d4b9c921149Jesse Wilsonimport java.util.NoSuchElementException;
2514816f17144d90174628ee82dc616d4b9c921149Jesse Wilsonimport java.util.Set;
2614816f17144d90174628ee82dc616d4b9c921149Jesse Wilsonimport java.util.SortedSet;
2714816f17144d90174628ee82dc616d4b9c921149Jesse Wilsonimport java.util.TreeSet;
2814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
2914816f17144d90174628ee82dc616d4b9c921149Jesse Wilsonpublic class OldTreeSetTest extends junit.framework.TestCase {
3014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
3114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    TreeSet ts;
3214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
3314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    Object objArray[] = new Object[1000];
3414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
3514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    public void test_ConstructorLjava_util_Collection() {
3614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        // Test for method java.util.TreeSet(java.util.Collection)
3714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        TreeSet myTreeSet = new TreeSet(Arrays.asList(objArray));
3814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        assertTrue("TreeSet incorrect size",
3914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson                myTreeSet.size() == objArray.length);
4014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        for (int counter = 0; counter < objArray.length; counter++)
4114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            assertTrue("TreeSet does not contain correct elements", myTreeSet
4214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson                    .contains(objArray[counter]));
4314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
4414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        HashMap hm = new HashMap();
4514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        hm.put("First", new Integer(1));
4614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        hm.put(new Integer(2), "two");
4714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
4814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        try {
4914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            new TreeSet(hm.values());
5014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            fail("ClassCastException expected");
5114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        } catch (ClassCastException e) {
5214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            //expected
5314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        }
5414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
5514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        try {
5614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            new TreeSet((Collection)null);
5714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            fail("NullPointerException expected");
5814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        } catch (NullPointerException e) {
5914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            //expected
6014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        }
6114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    }
6214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
6314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    public void test_ConstructorLjava_util_SortedSet() {
6414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        try {
6514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            new TreeSet((SortedSet)null);
6614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            fail("NullPointerException expected");
6714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        } catch (NullPointerException e) {
6814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            //expected
6914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        }
7014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    }
7114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
7214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    public void test_addLjava_lang_Object() {
7314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        // Test for method boolean java.util.TreeSet.add(java.lang.Object)
7414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        ts.add(new Integer(-8));
7514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        assertTrue("Failed to add Object", ts.contains(new Integer(-8)));
7614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        ts.add(objArray[0]);
7714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        assertTrue("Added existing element", ts.size() == objArray.length + 1);
7814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
7914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        HashMap hm = new HashMap();
8014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        hm.put("First", new Integer(1));
8114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        hm.put(new Integer(2), "two");
8214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
8314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        try {
8414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            ts.add("Wrong element");
8514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            fail("ClassCastException expected");
8614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        } catch (ClassCastException e) {
8714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            //expected
8814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        }
8914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    }
9014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
9114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    public void test_addAllLjava_util_Collection() {
9214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        // Test for method boolean
9314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        // java.util.TreeSet.addAll(java.util.Collection)
9414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        TreeSet s = new TreeSet();
9514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        s.addAll(ts);
9614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        assertTrue("Incorrect size after add", s.size() == ts.size());
9714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        Iterator i = ts.iterator();
9814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        while (i.hasNext())
9914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            assertTrue("Returned incorrect set", s.contains(i.next()));
10014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
10114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        HashMap hm = new HashMap();
10214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        hm.put("First", new Integer(1));
10314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        hm.put(new Integer(2), "two");
10414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
10514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        try {
10614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            s.addAll(hm.values());
10714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            fail("ClassCastException expected");
10814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        } catch (ClassCastException e) {
10914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            //expected
11014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        }
11114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
11214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        try {
11314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            s.addAll(null);
11414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            fail("NullPointerException expected");
11514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        } catch (NullPointerException e) {
11614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            //expected
11714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        }
11814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    }
11914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
12014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    public void test_first() {
12114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        // Test for method java.lang.Object java.util.TreeSet.first()
12214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        assertTrue("Returned incorrect first element",
12314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson                ts.first() == objArray[0]);
12414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
12514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        ts = new TreeSet();
12614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        try {
12714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            ts.first();
12814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            fail("NoSuchElementException expected");
12914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        } catch (NoSuchElementException e) {
13014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            //expected
13114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        }
13214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    }
13314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
13414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    public void test_headSetLjava_lang_Object() {
13514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        // Test for method java.util.SortedSet
13614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        // java.util.TreeSet.headSet(java.lang.Object)
13714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        Set s = ts.headSet(new Integer(100));
13814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        assertEquals("Returned set of incorrect size", 100, s.size());
13914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        for (int i = 0; i < 100; i++)
14014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            assertTrue("Returned incorrect set", s.contains(objArray[i]));
14114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
14214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        SortedSet sort = ts.headSet(new Integer(100));
14314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        try {
14414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            sort.headSet(new Integer(101));
14514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            fail("IllegalArgumentException expected");
14614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        } catch (IllegalArgumentException e) {
14714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            //expected
14814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        }
14914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
15014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        try {
15114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            ts.headSet(this);
15214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            fail("ClassCastException expected");
15314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        } catch (ClassCastException e) {
15414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            //expected
15514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        }
15614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
15714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        try {
15814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            ts.headSet(null);
15914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            fail("NullPointerException expected");
16014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        } catch (NullPointerException e) {
16114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            //expected
16214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        }
16314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    }
16414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
16514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    public void test_last() {
16614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        // Test for method java.lang.Object java.util.TreeSet.last()
16714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        assertTrue("Returned incorrect last element",
16814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson                ts.last() == objArray[objArray.length - 1]);
16914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
17014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        ts = new TreeSet();
17114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        try {
17214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            ts.last();
17314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            fail("NoSuchElementException expected");
17414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        } catch (NoSuchElementException e) {
17514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            //expected
17614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        }
17714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    }
17814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
17914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    public void test_subSetLjava_lang_ObjectLjava_lang_Object() {
18014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        // Test for method java.util.SortedSet
18114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        // java.util.TreeSet.subSet(java.lang.Object, java.lang.Object)
18214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        final int startPos = objArray.length / 4;
18314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        final int endPos = 3 * objArray.length / 4;
18414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        SortedSet aSubSet = ts.subSet(objArray[startPos], objArray[endPos]);
18514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        assertTrue("Subset has wrong number of elements",
18614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson                aSubSet.size() == (endPos - startPos));
18714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        for (int counter = startPos; counter < endPos; counter++)
18814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            assertTrue("Subset does not contain all the elements it should",
18914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson                    aSubSet.contains(objArray[counter]));
19014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
19114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        try {
19214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            ts.subSet(objArray[3], objArray[0]);
19314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            fail("IllegalArgumentException expected");
19414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        } catch (IllegalArgumentException e) {
19514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            //expected
19614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        }
19714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
19814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        try {
19914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            ts.subSet(null, objArray[3]);
20014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            fail("NullPointerException expected");
20114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        } catch (NullPointerException e) {
20214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            //expected
20314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        }
20414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
20514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        try {
20614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            ts.subSet(objArray[3], null);
20714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            fail("NullPointerException expected");
20814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        } catch (NullPointerException e) {
20914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            //expected
21014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        }
21114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
21214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        try {
21314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            ts.subSet(objArray[3], this);
21414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            fail("ClassCastException expected");
21514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        } catch (ClassCastException e) {
21614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            //expected
21714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        }
21814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    }
21914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
22014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    public void test_tailSetLjava_lang_Object() {
22114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        // Test for method java.util.SortedSet
22214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        // java.util.TreeSet.tailSet(java.lang.Object)
22314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        Set s = ts.tailSet(new Integer(900));
22414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        assertEquals("Returned set of incorrect size", 100, s.size());
22514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        for (int i = 900; i < objArray.length; i++)
22614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            assertTrue("Returned incorrect set", s.contains(objArray[i]));
22714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
22814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        SortedSet sort = ts.tailSet(new Integer(101));
22914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
23014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        try {
23114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            sort.tailSet(new Integer(100));
23214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            fail("IllegalArgumentException expected");
23314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        } catch (IllegalArgumentException e) {
23414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            //expected
23514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        }
23614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
23714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        try {
23814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            ts.tailSet(this);
23914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            fail("ClassCastException expected");
24014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        } catch (ClassCastException e) {
24114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            //expected
24214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        }
24314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
24414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        try {
24514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            ts.tailSet(null);
24614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            fail("NullPointerException expected");
24714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        } catch (NullPointerException e) {
24814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            //expected
24914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        }
25014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    }
25114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
25214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    /**
25314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson     * Sets up the fixture, for example, open a network connection. This method
25414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson     * is called before a test is executed.
25514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson     */
25614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    protected void setUp() {
25714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        ts = new TreeSet();
25814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        for (int i = 0; i < objArray.length; i++) {
25914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            Object x = objArray[i] = new Integer(i);
26014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson            ts.add(x);
26114816f17144d90174628ee82dc616d4b9c921149Jesse Wilson        }
26214816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    }
26314816f17144d90174628ee82dc616d4b9c921149Jesse Wilson
26414816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    /**
26514816f17144d90174628ee82dc616d4b9c921149Jesse Wilson     * Tears down the fixture, for example, close a network connection. This
26614816f17144d90174628ee82dc616d4b9c921149Jesse Wilson     * method is called after a test is executed.
26714816f17144d90174628ee82dc616d4b9c921149Jesse Wilson     */
26814816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    protected void tearDown() {
26914816f17144d90174628ee82dc616d4b9c921149Jesse Wilson    }
27014816f17144d90174628ee82dc616d4b9c921149Jesse Wilson}
271