You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2018/02/04 21:17:15 UTC
commons-testing git commit: Add tests.
Repository: commons-testing
Updated Branches:
refs/heads/master e22cc4fe8 -> 2062a231b
Add tests.
Project: http://git-wip-us.apache.org/repos/asf/commons-testing/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-testing/commit/2062a231
Tree: http://git-wip-us.apache.org/repos/asf/commons-testing/tree/2062a231
Diff: http://git-wip-us.apache.org/repos/asf/commons-testing/diff/2062a231
Branch: refs/heads/master
Commit: 2062a231b3de86217866a9b5bd05163b3e33a88f
Parents: e22cc4f
Author: Gary Gregory <ga...@gmail.com>
Authored: Sun Feb 4 14:17:12 2018 -0700
Committer: Gary Gregory <ga...@gmail.com>
Committed: Sun Feb 4 14:17:12 2018 -0700
----------------------------------------------------------------------
.gitignore | 7 ++-
.../junit4/AbstractAvailableLocalesTest.java | 4 +-
.../testing/junit4/DefaultLocaleTestRule.java | 60 ++++++++++++++++++++
.../junit4/ObjectToStringComparator.java | 5 ++
.../junit4/SetDefaultLocaleTestRule.java | 58 -------------------
.../testing/junit4/AvailableLocalesTest.java | 58 +++++++++++++++++++
.../junit4/DefaultLocaleTestRuleTest.java | 41 +++++++++++++
.../junit4/ObjectToStringComparatorTest.java | 39 +++++++++++++
8 files changed, 209 insertions(+), 63 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/commons-testing/blob/2062a231/.gitignore
----------------------------------------------------------------------
diff --git a/.gitignore b/.gitignore
index fbdf7eb..721dfeb 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
-/.classpath
-/.project
-/.settings/
+**/.classpath
+**/.project
+**/.settings/
+**/target/
http://git-wip-us.apache.org/repos/asf/commons-testing/blob/2062a231/commons-testing-junit4/src/main/java/org/apache/commons/testing/junit4/AbstractAvailableLocalesTest.java
----------------------------------------------------------------------
diff --git a/commons-testing-junit4/src/main/java/org/apache/commons/testing/junit4/AbstractAvailableLocalesTest.java b/commons-testing-junit4/src/main/java/org/apache/commons/testing/junit4/AbstractAvailableLocalesTest.java
index 23459a3..160c384 100644
--- a/commons-testing-junit4/src/main/java/org/apache/commons/testing/junit4/AbstractAvailableLocalesTest.java
+++ b/commons-testing-junit4/src/main/java/org/apache/commons/testing/junit4/AbstractAvailableLocalesTest.java
@@ -81,12 +81,12 @@ public abstract class AbstractAvailableLocalesTest {
private final Locale locale;
@Rule
- public final SetDefaultLocaleTestRule rule;
+ public final DefaultLocaleTestRule rule;
public AbstractAvailableLocalesTest(final Locale locale) {
super();
this.locale = locale;
- this.rule = new SetDefaultLocaleTestRule(locale);
+ this.rule = new DefaultLocaleTestRule(locale);
}
public Locale getLocale() {
http://git-wip-us.apache.org/repos/asf/commons-testing/blob/2062a231/commons-testing-junit4/src/main/java/org/apache/commons/testing/junit4/DefaultLocaleTestRule.java
----------------------------------------------------------------------
diff --git a/commons-testing-junit4/src/main/java/org/apache/commons/testing/junit4/DefaultLocaleTestRule.java b/commons-testing-junit4/src/main/java/org/apache/commons/testing/junit4/DefaultLocaleTestRule.java
new file mode 100644
index 0000000..31e3f38
--- /dev/null
+++ b/commons-testing-junit4/src/main/java/org/apache/commons/testing/junit4/DefaultLocaleTestRule.java
@@ -0,0 +1,60 @@
+/*
+ * 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.commons.testing.junit4;
+
+import java.util.Locale;
+
+import org.junit.rules.TestRule;
+import org.junit.runner.Description;
+import org.junit.runners.model.Statement;
+
+/**
+ * Sets the default {@code Locale} to the given locale for the duration of the test.
+ *
+ * @since 1.0.0
+ */
+public class DefaultLocaleTestRule implements TestRule {
+
+ private final Locale locale;
+
+ public DefaultLocaleTestRule(final Locale locale) {
+ super();
+ this.locale = locale;
+ }
+
+ @Override
+ public Statement apply(final Statement base, final Description description) {
+ return new Statement() {
+ @Override
+ public void evaluate() throws Throwable {
+ final Locale savedLocale = Locale.getDefault();
+ Locale.setDefault(getLocale());
+ try {
+ base.evaluate();
+ } finally {
+ Locale.setDefault(savedLocale);
+ }
+ }
+ };
+ }
+
+ public Locale getLocale() {
+ return locale;
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/commons-testing/blob/2062a231/commons-testing-junit4/src/main/java/org/apache/commons/testing/junit4/ObjectToStringComparator.java
----------------------------------------------------------------------
diff --git a/commons-testing-junit4/src/main/java/org/apache/commons/testing/junit4/ObjectToStringComparator.java b/commons-testing-junit4/src/main/java/org/apache/commons/testing/junit4/ObjectToStringComparator.java
index c04bacf..3e2861b 100644
--- a/commons-testing-junit4/src/main/java/org/apache/commons/testing/junit4/ObjectToStringComparator.java
+++ b/commons-testing-junit4/src/main/java/org/apache/commons/testing/junit4/ObjectToStringComparator.java
@@ -20,6 +20,11 @@ package org.apache.commons.testing.junit4;
import java.io.Serializable;
import java.util.Comparator;
+/**
+ * Compares objects based on their {@code toString()} values.
+ *
+ * @since 1.0.0
+ */
public final class ObjectToStringComparator implements Comparator<Object>, Serializable {
private static final long serialVersionUID = 1L;
http://git-wip-us.apache.org/repos/asf/commons-testing/blob/2062a231/commons-testing-junit4/src/main/java/org/apache/commons/testing/junit4/SetDefaultLocaleTestRule.java
----------------------------------------------------------------------
diff --git a/commons-testing-junit4/src/main/java/org/apache/commons/testing/junit4/SetDefaultLocaleTestRule.java b/commons-testing-junit4/src/main/java/org/apache/commons/testing/junit4/SetDefaultLocaleTestRule.java
deleted file mode 100644
index 4b7dbd9..0000000
--- a/commons-testing-junit4/src/main/java/org/apache/commons/testing/junit4/SetDefaultLocaleTestRule.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * 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.commons.testing.junit4;
-
-import java.util.Locale;
-
-import org.junit.rules.TestRule;
-import org.junit.runner.Description;
-import org.junit.runners.model.Statement;
-
-/**
- * Sets the default {@code Locale} to the given locale for the duration of the test.
- */
-public class SetDefaultLocaleTestRule implements TestRule {
-
- private final Locale locale;
-
- public SetDefaultLocaleTestRule(final Locale locale) {
- super();
- this.locale = locale;
- }
-
- @Override
- public Statement apply(final Statement base, final Description description) {
- return new Statement() {
- @Override
- public void evaluate() throws Throwable {
- final Locale savedLocale = Locale.getDefault();
- Locale.setDefault(getLocale());
- try {
- base.evaluate();
- } finally {
- Locale.setDefault(savedLocale);
- }
- }
- };
- }
-
- public Locale getLocale() {
- return locale;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/commons-testing/blob/2062a231/commons-testing-junit4/src/test/java/org/apache/commons/testing/junit4/AvailableLocalesTest.java
----------------------------------------------------------------------
diff --git a/commons-testing-junit4/src/test/java/org/apache/commons/testing/junit4/AvailableLocalesTest.java b/commons-testing-junit4/src/test/java/org/apache/commons/testing/junit4/AvailableLocalesTest.java
new file mode 100644
index 0000000..17eea73
--- /dev/null
+++ b/commons-testing-junit4/src/test/java/org/apache/commons/testing/junit4/AvailableLocalesTest.java
@@ -0,0 +1,58 @@
+/*
+ * 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.commons.testing.junit4;
+
+import java.util.Collections;
+import java.util.Locale;
+import java.util.Set;
+import java.util.concurrent.ConcurrentSkipListSet;
+
+import org.junit.AfterClass;
+import org.junit.Assert;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+public class AvailableLocalesTest extends AbstractAvailableLocalesTest {
+
+ private static Set<Locale> found;
+
+ @AfterClass
+ public static void afterClass() {
+ final ConcurrentSkipListSet<Locale> expected = createSet();
+ Collections.addAll(expected, Locale.getAvailableLocales());
+ Assert.assertEquals(expected, found);
+ }
+
+ @BeforeClass
+ public static void beforeClass() {
+ found = createSet();
+ }
+
+ private static ConcurrentSkipListSet<Locale> createSet() {
+ return new ConcurrentSkipListSet<>(new ObjectToStringComparator());
+ }
+
+ public AvailableLocalesTest(final Locale locale) {
+ super(locale);
+ }
+
+ @Test
+ public void test() {
+ found.add(getLocale());
+ }
+}
http://git-wip-us.apache.org/repos/asf/commons-testing/blob/2062a231/commons-testing-junit4/src/test/java/org/apache/commons/testing/junit4/DefaultLocaleTestRuleTest.java
----------------------------------------------------------------------
diff --git a/commons-testing-junit4/src/test/java/org/apache/commons/testing/junit4/DefaultLocaleTestRuleTest.java b/commons-testing-junit4/src/test/java/org/apache/commons/testing/junit4/DefaultLocaleTestRuleTest.java
new file mode 100644
index 0000000..514cc80
--- /dev/null
+++ b/commons-testing-junit4/src/test/java/org/apache/commons/testing/junit4/DefaultLocaleTestRuleTest.java
@@ -0,0 +1,41 @@
+/*
+ * 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.commons.testing.junit4;
+
+import java.util.Locale;
+
+import org.junit.Assert;
+import org.junit.Rule;
+import org.junit.Test;
+
+/**
+ * Sets the default {@code Locale} to the given Locale for the duration of the test.
+ *
+ * @since 1.0.0
+ */
+public class DefaultLocaleTestRuleTest {
+
+ @Rule
+ public DefaultLocaleTestRule testRule = new DefaultLocaleTestRule(Locale.CANADA);
+
+ @Test
+ public void test() {
+ Assert.assertEquals(Locale.CANADA, Locale.getDefault());
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/commons-testing/blob/2062a231/commons-testing-junit4/src/test/java/org/apache/commons/testing/junit4/ObjectToStringComparatorTest.java
----------------------------------------------------------------------
diff --git a/commons-testing-junit4/src/test/java/org/apache/commons/testing/junit4/ObjectToStringComparatorTest.java b/commons-testing-junit4/src/test/java/org/apache/commons/testing/junit4/ObjectToStringComparatorTest.java
new file mode 100644
index 0000000..a3b720e
--- /dev/null
+++ b/commons-testing-junit4/src/test/java/org/apache/commons/testing/junit4/ObjectToStringComparatorTest.java
@@ -0,0 +1,39 @@
+/*
+ * 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.commons.testing.junit4;
+
+import java.util.Collections;
+import java.util.Locale;
+import java.util.concurrent.ConcurrentSkipListSet;
+
+import org.junit.Assert;
+
+public class ObjectToStringComparatorTest {
+
+ public static void afterClass() {
+ final ConcurrentSkipListSet<Locale> expected = createSet();
+ final Locale[] availableLocales = Locale.getAvailableLocales();
+ Collections.addAll(expected, availableLocales);
+ Assert.assertEquals(expected.size(), availableLocales.length);
+ }
+
+ private static ConcurrentSkipListSet<Locale> createSet() {
+ return new ConcurrentSkipListSet<>(new ObjectToStringComparator());
+ }
+
+}