Tests.java revision f6c387128427e121477c1b32ad35cdcaa5101ba3
1/*
2 * Copyright (C) 2007 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 *      http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17package tests.java.lang.String;
18
19import dalvik.annotation.TestTargets;
20import dalvik.annotation.TestLevel;
21import dalvik.annotation.TestTargetNew;
22import dalvik.annotation.TestTargetClass;
23
24import junit.framework.TestCase;
25
26/**
27 * Tests for the class {@link String}.
28 */
29@TestTargetClass(String.class)
30public class Tests extends TestCase {
31    @TestTargetNew(
32        level = TestLevel.PARTIAL,
33        notes = "Doesn't check NullPointerException.",
34        method = "contains",
35        args = {java.lang.CharSequence.class}
36    )
37    public void test_contains() {
38        assertTrue("aabc".contains("abc"));
39        assertTrue("abcd".contains("abc"));
40        assertFalse("abcd".contains("cba"));
41    }
42    @TestTargetNew(
43        level = TestLevel.PARTIAL,
44        notes = "Verifies positive functionality.",
45        method = "charAt",
46        args = {int.class}
47    )
48    public void test_charAt() {
49        assertTrue("abcd".charAt(0) == 'a');
50        assertTrue("abcd".charAt(3) == 'd');
51    }
52    @TestTargetNew(
53        level = TestLevel.PARTIAL,
54        notes = "Doesn't check specific cases.",
55        method = "startsWith",
56        args = {java.lang.String.class}
57    )
58    public void test_StartsWith() {
59        assertTrue("abcd".startsWith("abc"));
60        assertFalse("abcd".startsWith("aabc"));
61    }
62    @TestTargetNew(
63        level = TestLevel.PARTIAL,
64        notes = "Doesn't check specific cases.",
65        method = "endsWith",
66        args = {java.lang.String.class}
67    )
68    public void test_EndsWith() {
69        assertTrue("abcd".endsWith("bcd"));
70        assertFalse("abcd".endsWith("bcde"));
71    }
72    @TestTargetNew(
73        level = TestLevel.TODO,
74        notes = "Verifies nothing.",
75        method = "!Constants",
76        args = {}
77    )
78    public void test_CASE_INSENSITIVE_ORDER() {
79        String  s1 = "ABCDEFG";
80        String  s2 = "abcdefg";
81
82        assertTrue(String.CASE_INSENSITIVE_ORDER.compare(s1, s2) == 0);
83    }
84}
85