1bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com/* 2bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com * Copyright (C) 2011 The Android Open Source Project 3bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com * 4bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com * Licensed under the Apache License, Version 2.0 (the "License"); 5bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com * you may not use this file except in compliance with the License. 6bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com * You may obtain a copy of the License at 7bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com * 8bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com * http://www.apache.org/licenses/LICENSE-2.0 9bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com * 10bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com * Unless required by applicable law or agreed to in writing, software 11bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com * distributed under the License is distributed on an "AS IS" BASIS, 12bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com * See the License for the specific language governing permissions and 14bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com * limitations under the License. 15bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com */ 16bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 17e839716d35f486b6016048ee211ee7e473d46a2aNicolas Geoffray// Some parts of this code is Common Public License - v 1.0 18e839716d35f486b6016048ee211ee7e473d46a2aNicolas Geoffray// See NOTICE file in junit project. 19bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 20e839716d35f486b6016048ee211ee7e473d46a2aNicolas Geoffraypackage junit.framework; 21bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 22bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.compublic class Assert { 23bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com protected Assert() {} 24bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 25bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertEquals(String message, boolean expected, boolean actual) { 26bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com if (actual != expected) { 27bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com fail(message, "expected " + expected + " but was " + actual); 28bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 29bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 30bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 31bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertEquals(boolean expected, boolean actual) { 32bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com assertEquals("", expected, actual); 33bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 34bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 35bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertEquals(String message, byte expected, byte actual) { 36bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com if (actual != expected) { 37bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com fail(message, "expected " + expected + " but was " + actual); 38bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 39bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 40bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 41bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertEquals(byte expected, byte actual) { 42bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com assertEquals("", expected, actual); 43bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 44bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 45bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertEquals(String message, short expected, short actual) { 46bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com if (actual != expected) { 47bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com fail(message, "expected " + expected + " but was " + actual); 48bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 49bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 50bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 51bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertEquals(short expected, short actual) { 52bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com assertEquals("", expected, actual); 53bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 54bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 55bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertEquals(String message, int expected, int actual) { 56bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com if (actual != expected) { 57bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com fail(message, "expected " + expected + " but was " + actual); 58bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 59bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 60bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 61bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertEquals(int expected, int actual) { 62bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com assertEquals("", expected, actual); 63bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 64bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 65bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertEquals(String message, long expected, long actual) { 66bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com if (actual != expected) { 67bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com fail(message, "expected " + expected + " but was " + actual); 68bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 69bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 70bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 71bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertEquals(long expected, long actual) { 72bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com assertEquals("", expected, actual); 73bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 74bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 75bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertEquals(String message, char expected, char actual) { 76bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com if (actual != expected) { 77bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com fail(message, "expected " + expected + " but was " + actual); 78bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 79bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 80bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 81bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertEquals(char expected, char actual) { 82bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com assertEquals("", expected, actual); 83bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 84bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 85bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertEquals(String message, String expected, String actual) { 86bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com assertEquals(message, (Object) expected, (Object) actual); 87bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 88bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 89bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertEquals(String expected, String actual) { 90bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com assertEquals("", (Object) expected, (Object) actual); 91bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 92bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 93bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertEquals(String message, Object expected, Object actual) { 94e839716d35f486b6016048ee211ee7e473d46a2aNicolas Geoffray if (expected == null && actual == null) { 95e839716d35f486b6016048ee211ee7e473d46a2aNicolas Geoffray return; 96e839716d35f486b6016048ee211ee7e473d46a2aNicolas Geoffray } 97e839716d35f486b6016048ee211ee7e473d46a2aNicolas Geoffray if (expected != null && expected.equals(actual)) { 98e839716d35f486b6016048ee211ee7e473d46a2aNicolas Geoffray return; 99bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 100e839716d35f486b6016048ee211ee7e473d46a2aNicolas Geoffray fail(message, "expected " + expected + " but was " + actual); 101bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 102bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 103bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertEquals(Object expected, Object actual) { 104bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com assertEquals("", expected, actual); 105bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 106bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 107bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com // assertEquals with delta 108e839716d35f486b6016048ee211ee7e473d46a2aNicolas Geoffray static public void assertEquals(String message, double expected, double actual, double delta) { 109e839716d35f486b6016048ee211ee7e473d46a2aNicolas Geoffray if (Double.compare(expected, actual) == 0) { 110bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com return; 111bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 112e839716d35f486b6016048ee211ee7e473d46a2aNicolas Geoffray if (!(Math.abs(expected-actual) <= delta)) { 113bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com fail(message, "expected " + expected + " but was " + actual + "; delta=" + delta); 114bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 115e839716d35f486b6016048ee211ee7e473d46a2aNicolas Geoffray } 116bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 117bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertEquals(double expected, double actual, double delta) { 118bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com assertEquals("", expected, actual, delta); 119bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 120e839716d35f486b6016048ee211ee7e473d46a2aNicolas Geoffray 121e839716d35f486b6016048ee211ee7e473d46a2aNicolas Geoffray static public void assertEquals(String message, float expected, float actual, float delta) { 122e839716d35f486b6016048ee211ee7e473d46a2aNicolas Geoffray if (Float.compare(expected, actual) == 0) { 123bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com return; 124bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 125e839716d35f486b6016048ee211ee7e473d46a2aNicolas Geoffray if (!(Math.abs(expected - actual) <= delta)) { 126bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com fail(message, "expected " + expected + " but was " + actual + "; delta=" + delta); 127bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 128bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 129bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 130bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertEquals(float expected, float actual, float delta) { 131bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com assertEquals("", expected, actual, delta); 132bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 133bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 134bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com // other asserts 135bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 136bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertTrue(String message, boolean condition) { 137bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com if (!condition) { 138bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com throw new AssertionFailedError(message); 139bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 140bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 141bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 142bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertTrue(boolean condition) { 143bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com assertTrue("", condition); 144bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 145bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 146bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertFalse(String message, boolean condition) { 147bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com if (condition) { 148bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com throw new AssertionFailedError(message); 149bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 150bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 151bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 152bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertFalse(boolean condition) { 153bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com assertFalse("", condition); 154bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 155bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 156bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertNull(String message, Object reference) { 157bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com if (reference != null) { 158bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com throw new AssertionFailedError(message); 159bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 160bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 161bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 162bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertNull(Object reference) { 163bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com assertNull("", reference); 164bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 165bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 166bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertNotNull(String message, Object reference) { 167bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com if (reference == null) { 168bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com throw new AssertionFailedError(message); 169bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 170bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 171bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 172bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertNotNull(Object reference) { 173bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com assertNotNull("", reference); 174bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 175bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 176bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertSame(String message, Object expected, Object actual) { 177bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com if (expected != actual) { 178bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com fail(message, "expected same " + expected + ", " + actual); 179bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 180bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 181bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 182bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertSame(Object expected, Object actual) { 183bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com assertSame("", expected, actual); 184bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 185bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 186bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertNotSame(String message, Object expected, Object actual) { 187bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com if (expected == actual) { 188bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com fail(message, "expected not same " + expected + ", " + actual); 189bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 190bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 191bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 192bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void assertNotSame(Object expected, Object actual) { 193bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com assertNotSame("", expected, actual); 194bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 195bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 196bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com // fail 197bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 198bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void fail(String message) { 199bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com throw new AssertionFailedError(message); 200bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 201bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 202bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com public static void fail() { 203bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com throw new AssertionFailedError(); 204bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 205bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com 206ec87632c66b964e58a87d7d77fa154326113a027kroot@google.com protected static void fail(String message, String detail) { 207bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com if (message == null || message.isEmpty()) { 208bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com throw new AssertionFailedError(detail); 209bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } else { 210bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com throw new AssertionFailedError(message + ": " + detail); 211bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 212bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com } 213bd8bda78cc5740aeae8de67b52f1d86e208f4864jessewilson@google.com} 214