| /** |
| * Copyright (c) 2008-2010, http://code.google.com/p/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 |
| * |
| * 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.yaml.snakeyaml.issues.issue50; |
| |
| import junit.framework.TestCase; |
| |
| import org.yaml.snakeyaml.Yaml; |
| |
| /** |
| * test issue 50. |
| */ |
| public class SnakeyamlTest extends TestCase { |
| public static interface SomeBean { |
| String getAttribute1(); |
| |
| String getAttribute2(); |
| } |
| |
| /* public */static abstract class BaseSomeBean implements SomeBean { |
| private String attribute1; |
| |
| public String getAttribute1() { |
| return attribute1; |
| } |
| |
| public void setAttribute1(String attribute1) { |
| this.attribute1 = attribute1; |
| } |
| } |
| |
| public static final class SomeBeanImpl extends BaseSomeBean { |
| private String attribute2; |
| |
| public SomeBeanImpl(final String attribute1, final String attribute2) { |
| setAttribute1(attribute1); |
| setAttribute2(attribute2); |
| } |
| |
| public String getAttribute2() { |
| return attribute2; |
| } |
| |
| public void setAttribute2(String attribute2) { |
| this.attribute2 = attribute2; |
| } |
| |
| @Override |
| public String toString() { |
| return "SomeBeanImpl"; |
| } |
| } |
| |
| public void testIntrospector() throws Exception { |
| SomeBean someBean = new SomeBeanImpl("value1", "value2"); |
| Yaml dumper = new Yaml(); |
| String output = dumper.dump(someBean); |
| // System.out.println(output); |
| assertEquals( |
| "!!org.yaml.snakeyaml.issues.issue50.SnakeyamlTest$SomeBeanImpl {attribute1: value1,\n attribute2: value2}\n", |
| output); |
| } |
| } |