package net.codjo.dataprocess.common.userparam; import net.codjo.dataprocess.common.userparam.User.Repository; import org.junit.Test; import static net.codjo.test.common.matcher.JUnitMatchers.*; /** * */ public class DefaultUserCodecTest { private UserCodec userCodec = new DefaultUserCodec(); @Test public void toXml() throws Exception { User user = new User("CREO_USER"); user.setCurrentRepository("HB2"); user.addRepository(new Repository("HB3", "23112009", "45")); user.addRepository(new Repository("HB4", "05122008", "90")); String result = "<user>\n" + " <userName>CREO_USER</userName>\n" + " <currentRepository>HB2</currentRepository>\n" + " <repositories>\n" + " <repository>\n" + " <name>HB3</name>\n" + " <expirydate>23112009</expirydate>\n" + " <expiryday>45</expiryday>\n" + " </repository>\n" + " <repository>\n" + " <name>HB4</name>\n" + " <expirydate>05122008</expirydate>\n" + " <expiryday>90</expiryday>\n" + " </repository>\n" + " </repositories>\n" + "</user>"; assertThat(result, equalTo(userCodec.toXml(user))); } @Test public void fromXml() throws Exception { String xml = "<user>\n" + " <userName>CREO_USER</userName>\n" + " <currentRepository>HB2</currentRepository>\n" + " <repositories>\n" + " <repository>\n" + " <name>HB3</name>\n" + " <expirydate>23112009</expirydate>\n" + " <expiryday>45</expiryday>\n" + " </repository>\n" + " <repository>\n" + " <name>HB4</name>\n" + " <expirydate>05122008</expirydate>\n" + " <expiryday>90</expiryday>\n" + " </repository>\n" + " </repositories>\n" + "</user>"; User user = userCodec.fromXml(xml); assertThat(user.getCurrentRepository(), equalTo("HB2")); assertThat(user.getUserName(), equalTo("CREO_USER")); assertThat(user.getRepositoryList().size(), equalTo(2)); assertThat(user.getRepositoryList().get(0).getName(), equalTo("HB3")); assertThat(user.getRepositoryList().get(1).getName(), equalTo("HB4")); assertThat(user.getRepositoryList().get(0).getExpiryday(), equalTo("45")); assertThat(user.getRepositoryList().get(1).getExpiryday(), equalTo("90")); } }