add (meta) unit test for POITestCase
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1756356 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
f3ba3ffe5f
commit
8d38e8e674
@ -32,13 +32,16 @@ import java.security.PrivilegedActionException;
|
|||||||
import java.security.PrivilegedExceptionAction;
|
import java.security.PrivilegedExceptionAction;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Locale;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import org.apache.poi.util.SuppressForbidden;
|
import org.apache.poi.util.SuppressForbidden;
|
||||||
|
import org.apache.poi.util.Internal;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Util class for POI JUnit TestCases, which provide additional features
|
* Util class for POI JUnit TestCases, which provide additional features
|
||||||
*/
|
*/
|
||||||
|
@Internal
|
||||||
public final class POITestCase {
|
public final class POITestCase {
|
||||||
public static void assertContains(String haystack, String needle) {
|
public static void assertContains(String haystack, String needle) {
|
||||||
assertNotNull(haystack);
|
assertNotNull(haystack);
|
||||||
@ -47,6 +50,19 @@ public final class POITestCase {
|
|||||||
haystack.contains(needle)
|
haystack.contains(needle)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void assertContainsIgnoreCase(String haystack, String needle, Locale locale) {
|
||||||
|
assertNotNull(haystack);
|
||||||
|
assertNotNull(needle);
|
||||||
|
String hay = haystack.toLowerCase(locale);
|
||||||
|
String n = needle.toLowerCase(locale);
|
||||||
|
assertTrue("Unable to find expected text '" + needle + "' in text:\n" + haystack,
|
||||||
|
hay.contains(n)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
public static void assertContainsIgnoreCase(String haystack, String needle) {
|
||||||
|
assertContainsIgnoreCase(haystack, needle, Locale.ROOT);
|
||||||
|
}
|
||||||
|
|
||||||
public static void assertNotContained(String haystack, String needle) {
|
public static void assertNotContained(String haystack, String needle) {
|
||||||
assertNotNull(haystack);
|
assertNotNull(haystack);
|
||||||
|
126
src/testcases/org/apache/poi/TestPOITestCase.java
Normal file
126
src/testcases/org/apache/poi/TestPOITestCase.java
Normal file
@ -0,0 +1,126 @@
|
|||||||
|
/* ====================================================================
|
||||||
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
|
contributor license agreements. See the NOTICE file distributed with
|
||||||
|
this work for additional information regarding copyright ownership.
|
||||||
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
|
(the "License"); you may not use this file except in compliance with
|
||||||
|
the License. You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
==================================================================== */
|
||||||
|
|
||||||
|
package org.apache.poi;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
|
import static org.junit.Assert.assertTrue;
|
||||||
|
import static org.junit.Assert.fail;
|
||||||
|
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.Locale;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import org.apache.poi.POITestCase;
|
||||||
|
import org.junit.Ignore;
|
||||||
|
import org.junit.Test;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A class for testing the POI Junit TestCase utility class
|
||||||
|
*/
|
||||||
|
public final class TestPOITestCase {
|
||||||
|
@Test
|
||||||
|
public void assertContains() {
|
||||||
|
POITestCase.assertContains("There is a needle in this haystack", "needle");
|
||||||
|
/*try {
|
||||||
|
POITestCase.assertContains("There is gold in this haystack", "needle");
|
||||||
|
fail("found a needle");
|
||||||
|
} catch (final junit.framework.AssertionFailedError e) {
|
||||||
|
// expected
|
||||||
|
}*/
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void assertContainsIgnoreCase_Locale() {
|
||||||
|
POITestCase.assertContainsIgnoreCase("There is a Needle in this haystack", "needlE", Locale.ROOT);
|
||||||
|
// FIXME: test failing case
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void assertContainsIgnoreCase() {
|
||||||
|
POITestCase.assertContainsIgnoreCase("There is a Needle in this haystack", "needlE");
|
||||||
|
// FIXME: test failing case
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void assertNotContained() {
|
||||||
|
POITestCase.assertNotContained("There is a needle in this haystack", "gold");
|
||||||
|
// FIXME: test failing case
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void assertMapContains() {
|
||||||
|
Map<String, String> haystack = Collections.singletonMap("needle", "value");
|
||||||
|
POITestCase.assertContains(haystack, "needle");
|
||||||
|
// FIXME: test failing case
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Utility method to get the value of a private/protected field.
|
||||||
|
* Only use this method in test cases!!!
|
||||||
|
*/
|
||||||
|
@Ignore
|
||||||
|
@Test
|
||||||
|
public void getFieldValue() {
|
||||||
|
/*
|
||||||
|
final Class<? super T> clazz;
|
||||||
|
final T instance;
|
||||||
|
final Class<R> fieldType;
|
||||||
|
final String fieldName;
|
||||||
|
|
||||||
|
final R expected;
|
||||||
|
final R actual = POITestCase.getFieldValue(clazz, instance, fieldType, fieldName);
|
||||||
|
assertEquals(expected, actual);
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Utility method to call a private/protected method.
|
||||||
|
* Only use this method in test cases!!!
|
||||||
|
*/
|
||||||
|
@Ignore
|
||||||
|
@Test
|
||||||
|
public void callMethod() {
|
||||||
|
/*
|
||||||
|
final Class<? super T> clazz;
|
||||||
|
final T instance;
|
||||||
|
final Class<R> returnType;
|
||||||
|
final String methodName;
|
||||||
|
final Class<?>[] parameterTypes;
|
||||||
|
final Object[] parameters;
|
||||||
|
|
||||||
|
final R expected;
|
||||||
|
final R actual = POITestCase.callMethod(clazz, instance, returnType, methodName, parameterTypes, parameters);
|
||||||
|
assertEquals(expected, actual);
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Utility method to shallow compare all fields of the objects
|
||||||
|
* Only use this method in test cases!!!
|
||||||
|
*/
|
||||||
|
@Ignore
|
||||||
|
@Test
|
||||||
|
public void assertReflectEquals() throws Exception {
|
||||||
|
/*
|
||||||
|
final Object expected;
|
||||||
|
final Object actual;
|
||||||
|
POITestCase.assertReflectEquals(expected, actual);
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user