View Javadoc

    1   /**
    2    * Copyright (c) 2008-2011, http://www.snakeyaml.org
    3    *
    4    * Licensed under the Apache License, Version 2.0 (the "License");
    5    * you may not use this file except in compliance with the License.
    6    * You may obtain a copy of the License at
    7    *
    8    *     http://www.apache.org/licenses/LICENSE-2.0
    9    *
    10   * Unless required by applicable law or agreed to in writing, software
    11   * distributed under the License is distributed on an "AS IS" BASIS,
    12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    13   * See the License for the specific language governing permissions and
    14   * limitations under the License.
    15   */
    16
    17  package org.yaml.snakeyaml.issues.issue115;
    18
    19  import junit.framework.TestCase;
    20
    21  import org.yaml.snakeyaml.Yaml;
    22
    23  public class ParameterizedJavaBeanTest extends TestCase {
    24
    25      public void testAsStandalone() {
    26          ParameterizedBean<Integer, String> bean = new ParameterizedBean<Integer, String>();
    27          bean.setK(13);
    28          bean.setV("ID47");
    29          Yaml yaml = new Yaml();
    30          String result = yaml.dump(bean);
    31          assertEquals("!!org.yaml.snakeyaml.issues.issue115.ParameterizedBean {k: 13, v: ID47}\n",
    32                  result);
    33          // load
    34          @SuppressWarnings("unchecked")
    35          ParameterizedBean<Integer, String> beanParsed = (ParameterizedBean<Integer, String>) yaml
    36                  .load(result);
    37          assertEquals(new Integer(13), beanParsed.getK());
    38          assertEquals("ID47", beanParsed.getV());
    39      }
    40
    41      public void testAsJavaBeanProperty() {
    42          Yaml yaml = new Yaml();
    43          IssueBean issue = new IssueBean();
    44          ParameterizedBean<Integer, String> bean = new ParameterizedBean<Integer, String>();
    45          bean.setK(432);
    46          bean.setV("Val432");
    47          issue.setBean(bean);
    48          String result = yaml.dump(issue);
    49          assertEquals("!!org.yaml.snakeyaml.issues.issue115.IssueBean\nbean: {k: 432, v: Val432}\n",
    50                  result);
    51          // load
    52          IssueBean issueParsed = (IssueBean) yaml.load(result);
    53          assertEquals(new Integer(432), issueParsed.getBean().getK());
    54          assertEquals("Val432", issueParsed.getBean().getV());
    55      }
    56  }