Package com.googlecode.gwt.test.autobean

Source Code of com.googlecode.gwt.test.autobean.AutoBeanCodexTest

package com.googlecode.gwt.test.autobean;

import static org.fest.assertions.api.Assertions.assertThat;

import org.junit.Test;

import com.google.gwt.core.client.GWT;
import com.google.web.bindery.autobean.shared.AutoBean;
import com.google.web.bindery.autobean.shared.AutoBeanCodex;
import com.google.web.bindery.autobean.shared.AutoBeanUtils;
import com.googlecode.gwt.test.GwtTestTest;
import com.googlecode.gwt.test.autobean.MyAutoBeanFactory.Address;
import com.googlecode.gwt.test.autobean.MyAutoBeanFactory.Person;

public class AutoBeanCodexTest extends GwtTestTest {

   private final MyAutoBeanFactory myFactory = GWT.create(MyAutoBeanFactory.class);

   @Test
   public void deserializeFromJson() {
      // Arrange
      String json = "{\"address\":{},\"name\":\"John Locke\"}";

      // Act
      AutoBean<Person> bean = AutoBeanCodex.decode(myFactory, Person.class, json);

      // Assert
      assertThat(bean.as().getAddress()).isNotNull();
      assertThat(bean.as().getName()).isEqualTo("John Locke");
   }

   @Test
   public void serializeToJsonWithAutoBeanUtils() {
      // Arrange
      Person person = myFactory.person().as();
      person.setName("John Locke");
      Address address = myFactory.address().as();
      person.setAddress(address);
      // Retrieve the AutoBean controller
      AutoBean<Person> bean = AutoBeanUtils.getAutoBean(person);

      // Act
      String json = AutoBeanCodex.encode(bean).getPayload();

      // Assert
      assertThat(json).isEqualTo("{\"address\":{},\"name\":\"John Locke\"}");
   }

}
TOP

Related Classes of com.googlecode.gwt.test.autobean.AutoBeanCodexTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.