aboutsummaryrefslogtreecommitdiff
path: root/src/test/java/org/yaml/snakeyaml/generics/GenericArrayTypeTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java/org/yaml/snakeyaml/generics/GenericArrayTypeTest.java')
-rw-r--r--src/test/java/org/yaml/snakeyaml/generics/GenericArrayTypeTest.java160
1 files changed, 69 insertions, 91 deletions
diff --git a/src/test/java/org/yaml/snakeyaml/generics/GenericArrayTypeTest.java b/src/test/java/org/yaml/snakeyaml/generics/GenericArrayTypeTest.java
index e81c137e..5f6815c8 100644
--- a/src/test/java/org/yaml/snakeyaml/generics/GenericArrayTypeTest.java
+++ b/src/test/java/org/yaml/snakeyaml/generics/GenericArrayTypeTest.java
@@ -1,119 +1,97 @@
/**
- * Copyright (c) 2008, http://www.snakeyaml.org
+ * Copyright (c) 2008, SnakeYAML
*
- * Licensed 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
+ * Licensed 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
+ * 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.
+ * 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.yaml.snakeyaml.generics;
import java.beans.IntrospectionException;
-
import junit.framework.TestCase;
-
import org.yaml.snakeyaml.Util;
import org.yaml.snakeyaml.Yaml;
public class GenericArrayTypeTest extends TestCase {
- public void testClasses() throws IntrospectionException {
- GenericArray ga = new GenericArray();
- Yaml yaml = new Yaml();
- String doc = yaml.dump(ga);
- // System.out.println(doc);
- String etalon = "!!org.yaml.snakeyaml.generics.GenericArrayTypeTest$GenericArray\n"
- + "home: [1, 2, 3]\n" + "name: Array3\n";
- assertEquals(etalon, doc);
- if (GenericsBugDetector.isProperIntrospection()) {
- GenericArray parsed = (GenericArray) yaml.load(doc);
- assertEquals("Array3", parsed.getName());
- assertEquals(3, parsed.getHome().length);
- } else {
- try {
- yaml.load(doc);
- } catch (Exception e) {
- // TODO Check GenericArrayType
- String message = "Cannot create property=home for JavaBean=org.yaml.snakeyaml.generics.GenericArrayTypeTest$GenericArray";
- assertTrue(e.getMessage(), e.getMessage().contains(message));
- }
- }
- }
+ public void testClasses() throws IntrospectionException {
+ GenericArray ga = new GenericArray();
+ Yaml yaml = new Yaml();
+ String doc = yaml.dump(ga);
+ // System.out.println(doc);
+ String etalon = "!!org.yaml.snakeyaml.generics.GenericArrayTypeTest$GenericArray\n"
+ + "home: [1, 2, 3]\n" + "name: Array3\n";
+ assertEquals(etalon, doc);
+ GenericArray parsed = yaml.load(doc);
+ assertEquals("Array3", parsed.getName());
+ assertEquals(3, parsed.getHome().length);
+ }
- public static class GenericArray extends AbstractAnimal<Integer[]> {
- private Integer[] home;
+ public static class GenericArray extends AbstractAnimal<Integer[]> {
- public GenericArray() {
- home = new Integer[3];
- for (int i = 0; i < home.length; i++) {
- home[i] = i + 1;
- }
- setName("Array" + String.valueOf(3));
- }
+ private Integer[] home;
- @Override
- public Integer[] getHome() {
- return home;
- }
+ public GenericArray() {
+ home = new Integer[3];
+ for (int i = 0; i < home.length; i++) {
+ home[i] = i + 1;
+ }
+ setName("Array" + 3);
+ }
- @Override
- public void setHome(Integer[] home) {
- this.home = home;
- }
+ @Override
+ public Integer[] getHome() {
+ return home;
}
- public void testJavaBean() throws IntrospectionException {
- GenericArray ga = new GenericArray();
- ArrayBean bean = new ArrayBean();
- bean.setId("ID556677");
- bean.setGa(ga);
- Yaml dumper = new Yaml();
- String doc = dumper.dumpAsMap(bean);
- // System.out.println(doc);
- assertEquals(Util.getLocalResource("javabeans/genericArray-1.yaml"), doc);
- //
- Yaml beanLoader = new Yaml();
- if (GenericsBugDetector.isProperIntrospection()) {
- ArrayBean loaded = beanLoader.loadAs(doc, ArrayBean.class);
- assertEquals("ID556677", loaded.getId());
- assertEquals("Array3", loaded.getGa().getName());
- assertEquals(3, loaded.getGa().getHome().length);
- } else {
- try {
- beanLoader.load(doc);
- } catch (Exception e) {
- // TODO Check GenericArrayType
- String message = "Cannot create property=home for JavaBean=org.yaml.snakeyaml.generics.GenericArrayTypeTest$GenericArray";
- assertTrue(e.getMessage(), e.getMessage().contains(message));
- }
- }
+ @Override
+ public void setHome(Integer[] home) {
+ this.home = home;
}
+ }
- public static class ArrayBean {
- private String id;
- private GenericArray ga;
+ public void testJavaBean() throws IntrospectionException {
+ GenericArray ga = new GenericArray();
+ ArrayBean bean = new ArrayBean();
+ bean.setId("ID556677");
+ bean.setGa(ga);
+ Yaml dumper = new Yaml();
+ String doc = dumper.dumpAsMap(bean);
+ // System.out.println(doc);
+ assertEquals(Util.getLocalResource("javabeans/genericArray-1.yaml"), doc);
+ //
+ Yaml beanLoader = new Yaml();
+ ArrayBean loaded = beanLoader.loadAs(doc, ArrayBean.class);
+ assertEquals("ID556677", loaded.getId());
+ assertEquals("Array3", loaded.getGa().getName());
+ assertEquals(3, loaded.getGa().getHome().length);
+ }
- public String getId() {
- return id;
- }
+ public static class ArrayBean {
- public void setId(String id) {
- this.id = id;
- }
+ private String id;
+ private GenericArray ga;
- public GenericArray getGa() {
- return ga;
- }
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public GenericArray getGa() {
+ return ga;
+ }
- public void setGa(GenericArray ga) {
- this.ga = ga;
- }
+ public void setGa(GenericArray ga) {
+ this.ga = ga;
}
+ }
}