Example #1
0
  @Test
  public void canImportXml() throws JAXBException {
    JAXBContext context = JAXBContext.newInstance(getClass().getPackage().getName());
    Unmarshaller unmarshaller = context.createUnmarshaller();
    Object result = unmarshaller.unmarshal(getClass().getClassLoader().getResource("backup.xml"));
    assertTrue(result instanceof Snapshot);
    Snapshot backUp = (Snapshot) result;

    assertNotNull(backUp);
    assertThat(backUp.getPrincipals().size(), is(5));
    assertThat(backUp.getMessageBoxes().size(), is(10));
    assertThat(backUp.getMembers().size(), is(5));
    assertThat(backUp.getMessages().size(), is(9));

    Member member0 = backUp.getMembers().get(0);
    assertThat(member0.getFirstName(), is("Alfred"));
    assertThat(member0.getInbox(), is(backUp.getMessageBoxes().get(0)));
    assertThat(member0.getSentItems(), is(backUp.getMessageBoxes().get(1)));

    Member member1 = backUp.getMembers().get(1);
    assertThat(member1.getFirstName(), is("Ben"));
    assertThat(member1.getInbox(), is(backUp.getMessageBoxes().get(2)));
    assertThat(member1.getSentItems(), is(backUp.getMessageBoxes().get(3)));

    Member member2 = backUp.getMembers().get(2);
    assertThat(member2.getFirstName(), is("Chris"));
    assertThat(member2.getInbox(), is(backUp.getMessageBoxes().get(4)));
    assertThat(member2.getSentItems(), is(backUp.getMessageBoxes().get(5)));
  }