1f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectpackage junit.framework;
2f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
3f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project/**
4f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * A set of assert methods.  Messages are only displayed when an assert fails.
5f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project */
6f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
7f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectpublic class Assert {
8f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
9f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Protect constructor since it is a static only class
10f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
11f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    protected Assert() {
12f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
13f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
14f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
15f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that a condition is true. If it isn't it throws
16f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * an AssertionFailedError with the given message.
17f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
18f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertTrue(String message, boolean condition) {
19f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        if (!condition)
20f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            fail(message);
21f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
22f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
23f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that a condition is true. If it isn't it throws
24f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * an AssertionFailedError.
25f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
26f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertTrue(boolean condition) {
27f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertTrue(null, condition);
28f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
29f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
30f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that a condition is false. If it isn't it throws
31f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * an AssertionFailedError with the given message.
32f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
33f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertFalse(String message, boolean condition) {
34f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertTrue(message, !condition);
35f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
36f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
37f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that a condition is false. If it isn't it throws
38f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * an AssertionFailedError.
39f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
40f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertFalse(boolean condition) {
41f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertFalse(null, condition);
42f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
43f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
44f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Fails a test with the given message.
45f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
46f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void fail(String message) {
47f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        throw new AssertionFailedError(message);
48f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
49f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
50f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Fails a test with no message.
51f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
52f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void fail() {
53f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        fail(null);
54f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
55f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
56f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that two objects are equal. If they are not
57f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * an AssertionFailedError is thrown with the given message.
58f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
59f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertEquals(String message, Object expected, Object actual) {
60f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        if (expected == null && actual == null)
61f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            return;
62f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        if (expected != null && expected.equals(actual))
63f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            return;
64f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        failNotEquals(message, expected, actual);
65f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
66f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
67f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that two objects are equal. If they are not
68f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * an AssertionFailedError is thrown.
69f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
70f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertEquals(Object expected, Object actual) {
71f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertEquals(null, expected, actual);
72f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
73f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
74de75089fb7216d19e9c22cce4dc62a49513477d3Carl Shapiro     * Asserts that two Strings are equal.
75f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
76f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertEquals(String message, String expected, String actual) {
77f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        if (expected == null && actual == null)
78f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            return;
79f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        if (expected != null && expected.equals(actual))
80f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            return;
81f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        throw new ComparisonFailure(message, expected, actual);
82f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
83f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
84de75089fb7216d19e9c22cce4dc62a49513477d3Carl Shapiro     * Asserts that two Strings are equal.
85f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
86f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertEquals(String expected, String actual) {
87f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertEquals(null, expected, actual);
88f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
89f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
90f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that two doubles are equal concerning a delta.  If they are not
91f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * an AssertionFailedError is thrown with the given message.  If the expected
92f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * value is infinity then the delta value is ignored.
93f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
94f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertEquals(String message, double expected, double actual, double delta) {
95f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        // handle infinity specially since subtracting to infinite values gives NaN and the
96f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        // the following test fails
97f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        if (Double.isInfinite(expected)) {
98f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            if (!(expected == actual))
99f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project                failNotEquals(message, new Double(expected), new Double(actual));
100f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        } else if (!(Math.abs(expected-actual) <= delta)) // Because comparison with NaN always returns false
101f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            failNotEquals(message, new Double(expected), new Double(actual));
102f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
103f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
104f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that two doubles are equal concerning a delta. If the expected
105f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * value is infinity then the delta value is ignored.
106f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
107f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertEquals(double expected, double actual, double delta) {
108f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertEquals(null, expected, actual, delta);
109f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
110f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
111f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that two floats are equal concerning a delta. If they are not
112f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * an AssertionFailedError is thrown with the given message.  If the expected
113f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * value is infinity then the delta value is ignored.
114f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
115f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertEquals(String message, float expected, float actual, float delta) {
116f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project         // handle infinity specially since subtracting to infinite values gives NaN and the
117f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        // the following test fails
118f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        if (Float.isInfinite(expected)) {
119f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            if (!(expected == actual))
120f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project                failNotEquals(message, new Float(expected), new Float(actual));
121f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        } else if (!(Math.abs(expected-actual) <= delta))
122f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project              failNotEquals(message, new Float(expected), new Float(actual));
123f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
124f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
125f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that two floats are equal concerning a delta. If the expected
126f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * value is infinity then the delta value is ignored.
127f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
128f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertEquals(float expected, float actual, float delta) {
129f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertEquals(null, expected, actual, delta);
130f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
131f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
132f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that two longs are equal. If they are not
133f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * an AssertionFailedError is thrown with the given message.
134f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
135f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertEquals(String message, long expected, long actual) {
136f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertEquals(message, new Long(expected), new Long(actual));
137f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
138f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
139f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that two longs are equal.
140f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
141f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertEquals(long expected, long actual) {
142f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertEquals(null, expected, actual);
143f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
144f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
145f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that two booleans are equal. If they are not
146f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * an AssertionFailedError is thrown with the given message.
147f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
148f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertEquals(String message, boolean expected, boolean actual) {
149f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            assertEquals(message, new Boolean(expected), new Boolean(actual));
150f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      }
151f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
152f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that two booleans are equal.
153f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      */
154f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertEquals(boolean expected, boolean actual) {
155f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertEquals(null, expected, actual);
156f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
157f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
158f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that two bytes are equal. If they are not
159f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * an AssertionFailedError is thrown with the given message.
160f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
161f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      static public void assertEquals(String message, byte expected, byte actual) {
162f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertEquals(message, new Byte(expected), new Byte(actual));
163f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
164f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
165f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        * Asserts that two bytes are equal.
166f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
167f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertEquals(byte expected, byte actual) {
168f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertEquals(null, expected, actual);
169f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
170f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
171f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that two chars are equal. If they are not
172f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * an AssertionFailedError is thrown with the given message.
173f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
174f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      static public void assertEquals(String message, char expected, char actual) {
175f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            assertEquals(message, new Character(expected), new Character(actual));
176f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      }
177f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
178f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that two chars are equal.
179f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
180f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      static public void assertEquals(char expected, char actual) {
181f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertEquals(null, expected, actual);
182f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
183f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
184f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that two shorts are equal. If they are not
185f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * an AssertionFailedError is thrown with the given message.
186f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
187f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertEquals(String message, short expected, short actual) {
188f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            assertEquals(message, new Short(expected), new Short(actual));
189f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
190f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      /**
191f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that two shorts are equal.
192f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
193f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertEquals(short expected, short actual) {
194f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertEquals(null, expected, actual);
195f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
196f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
197f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that two ints are equal. If they are not
198f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * an AssertionFailedError is thrown with the given message.
199f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
200f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      static public void assertEquals(String message, int expected, int actual) {
201f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertEquals(message, new Integer(expected), new Integer(actual));
202f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      }
203f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      /**
204f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        * Asserts that two ints are equal.
205f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
206f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      static public void assertEquals(int expected, int actual) {
207f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project          assertEquals(null, expected, actual);
208f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
209f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
210f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that an object isn't null.
211f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
212f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertNotNull(Object object) {
213f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertNotNull(null, object);
214f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
215f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
216f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that an object isn't null. If it is
217f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * an AssertionFailedError is thrown with the given message.
218f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
219f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertNotNull(String message, Object object) {
220f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertTrue(message, object != null);
221f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
222f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
223f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that an object is null.
224f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
225f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertNull(Object object) {
226f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertNull(null, object);
227f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
228f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
229f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that an object is null.  If it is not
230f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * an AssertionFailedError is thrown with the given message.
231f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
232f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertNull(String message, Object object) {
233f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertTrue(message, object == null);
234f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
235f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
236f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that two objects refer to the same object. If they are not
237f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * an AssertionFailedError is thrown with the given message.
238f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
239f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertSame(String message, Object expected, Object actual) {
240f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        if (expected == actual)
241f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            return;
242f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        failNotSame(message, expected, actual);
243f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
244f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
245f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that two objects refer to the same object. If they are not
246f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * the same an AssertionFailedError is thrown.
247f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
248f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertSame(Object expected, Object actual) {
249f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertSame(null, expected, actual);
250f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
251f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     /**
252f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      * Asserts that two objects refer to the same object. If they are not
253f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      * an AssertionFailedError is thrown with the given message.
254f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      */
255f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertNotSame(String message, Object expected, Object actual) {
256f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        if (expected == actual)
257f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            failSame(message);
258f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
259f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    /**
260f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * Asserts that two objects refer to the same object. If they are not
261f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     * the same an AssertionFailedError is thrown.
262f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project     */
263f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static public void assertNotSame(Object expected, Object actual) {
264f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        assertNotSame(null, expected, actual);
265f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
266f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
267f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static private void failSame(String message) {
268f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        String formatted= "";
269f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project         if (message != null)
270f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project             formatted= message+" ";
271f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project         fail(formatted+"expected not same");
272f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
273f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
274f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static private void failNotSame(String message, Object expected, Object actual) {
275f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        String formatted= "";
276f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        if (message != null)
277f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            formatted= message+" ";
278f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        fail(formatted+"expected same:<"+expected+"> was not:<"+actual+">");
279f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
280f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
281f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static private void failNotEquals(String message, Object expected, Object actual) {
282f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        fail(format(message, expected, actual));
283f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
284f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
285f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    static String format(String message, Object expected, Object actual) {
286f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        String formatted= "";
287f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        if (message != null)
288f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project            formatted= message+" ";
289f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        return formatted+"expected:<"+expected+"> but was:<"+actual+">";
290f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
291f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project}
292