1e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray/* 2e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray * Copyright (C) 2014 The Android Open Source Project 3e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray * 4e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray * Licensed under the Apache License, Version 2.0 (the "License"); 5e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray * you may not use this file except in compliance with the License. 6e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray * You may obtain a copy of the License at 7e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray * 8e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray * http://www.apache.org/licenses/LICENSE-2.0 9e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray * 10e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray * Unless required by applicable law or agreed to in writing, software 11e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray * distributed under the License is distributed on an "AS IS" BASIS, 12e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray * See the License for the specific language governing permissions and 14e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray * limitations under the License. 15e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray */ 16e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 17e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray/** 18e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray * Common superclass for test cases. 19e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray */ 20e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 21e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffrayimport java.util.Arrays; 22e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 23e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffraypublic abstract class TestCase { 24e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertSame(Object expected, Object value) { 25e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if (expected != value) { 26e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError("Objects are not the same: expected " + 27e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray String.valueOf(expected) + ", got " + String.valueOf(value)); 28e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 29e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 30e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 31e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertNotSame(Object expected, Object value) { 32e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if (expected == value) { 33e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError( 34e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray "Objects are the same: " + String.valueOf(expected)); 35e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 36e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 37e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 38e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertEquals(String message, int expected, int actual) { 39e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if (expected != actual) { 40e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError(message); 41e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 42e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 43e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 44e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertEquals(int expected, int actual) { 45e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if (expected != actual) { 46e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError("Expected " + expected + " got " + actual); 47e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 48e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 49e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 50e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertTrue(String message, boolean condition) { 51e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if (!condition) { 52e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError(message); 53e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 54e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 55e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 56e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertTrue(boolean condition) { 57e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray assertTrue("Expected true", condition); 58e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 59e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 60e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertFalse(String message, boolean condition) { 61e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if (condition) { 62e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError(message); 63e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 64e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 65e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 66e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertFalse(boolean condition) { 67e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray assertFalse("Expected false", condition); 68e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 69e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 70e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertEquals(Object expected, Object actual) { 71e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if (!expected.equals(actual)) { 72e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray String msg = "Expected \"" + expected + "\" but got \"" + actual + "\""; 73e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError(msg); 74e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 75e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 76e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 77e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertNotEquals(int expected, int actual) { 78e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if (expected == actual) { 79e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError("Expected " + expected + " got " + actual); 80e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 81e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 82e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 83e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertNotEquals(Object expected, Object actual) { 84e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if (expected.equals(actual)) { 85e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray String msg = "Objects are the same: " + String.valueOf(expected); 86e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError(msg); 87e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 88e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 89e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 90e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static <T> void assertArrayEquals(T[] actual, T... expected) { 91e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray assertTrue(Arrays.equals(expected, actual)); 92e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 93e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 94e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertEquals( 95e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray String message, Object expected, Object actual) { 96e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if (!expected.equals(actual)) { 97e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError(message); 98e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 99e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 100e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 101e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertEquals( 102e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray String message, long expected, long actual) { 103e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if (expected != actual) { 104e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError(message); 105e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 106e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 107e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 108e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertEquals(long expected, long actual) { 109e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if (expected != actual) { 110e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError("Expected " + expected + " got " + actual); 111e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 112e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 113e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 114e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertEquals( 115e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray String message, boolean expected, boolean actual) { 116e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if (expected != actual) { 117e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError(message); 118e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 119e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 120e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 121e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertEquals(boolean expected, boolean actual) { 122e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if (expected != actual) { 123e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError("Expected " + expected + " got " + actual); 124e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 125e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 126e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 127e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertEquals( 128e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray String message, float expected, float actual) { 129e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if (expected != actual) { 130e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError(message); 131e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 132e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 133e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 134e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertEquals(float expected, float actual) { 135e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if (expected != actual) { 136e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError("Expected " + expected + " got " + actual); 137e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 138e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 139e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 140e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertEquals(float expected, float actual, 141e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray float tolerance) { 142e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if ((actual < expected - tolerance) || (expected + tolerance < actual)) { 143e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError("Expected " + expected + " got " + actual + 144e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray " tolerance " + tolerance); 145e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 146e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 147e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 148e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertEquals( 149e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray String message, double expected, double actual) { 150e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if (expected != actual) { 151e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError(message); 152e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 153e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 154e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 155e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertEquals(double expected, double actual) { 156e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if (expected != actual) { 157e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError("Expected " + expected + " got " + actual); 158e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 159e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 160e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 161e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertEquals(double expected, double actual, 162e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray double tolerance) { 163e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if ((actual < expected - tolerance) || (expected + tolerance < actual)) { 164e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError("Expected " + expected + " got " + actual + 165e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray " tolerance " + tolerance); 166e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 167e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 168e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 169e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertSame( 170e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray String message, Object expected, Object actual) { 171e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if (expected != actual) { 172e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError(message); 173e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 174e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 175e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 176e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertNull(String message, Object object) { 177e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if (object != null) { 178e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError(message); 179e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 180e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 181e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 182e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertNull(Object object) { 183e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray assertNull("Expected null", object); 184e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 185e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 186e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertNotNull(String message, Object object) { 187e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray if (object == null) { 188e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError(message); 189e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 190e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 191e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 192e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void assertNotNull(Object object) { 193e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray assertNotNull("Expected non-null", object); 194e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 195e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray 196e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray public static void fail(String msg) { 197e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray throw new AssertionError(msg); 198e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray } 199e50383288a75244255d3ecedcc79ffe9caf774cbNicolas Geoffray} 200