@Test
  public void testCreate() throws Exception {
    GroupExtension ext =
        new GroupExtension(
            "mad-group",
            "david@localhost",
            GroupExtension.Type.CREATE,
            "Mad group",
            Collections.<Member>emptyList());
    ext.addMember("alpha@localhost");
    ext.addMember("beta@localhost");

    GroupExtension parsed = parse(ext.toXML());
    assertNotNull(parsed);
    assertEquals("mad-group", parsed.getID());
    assertEquals("david@localhost", parsed.getOwner());
    assertEquals("Mad group", parsed.getSubject());
    assertNotNull(ext.getMembers());
    assertEquals(2, ext.getMembers().size());

    Member m;

    m = ext.getMembers().get(0);
    assertNotNull(m);
    assertEquals("alpha@localhost", m.jid);
    assertEquals(Member.Operation.ADD, m.operation);

    m = ext.getMembers().get(1);
    assertNotNull(m);
    assertEquals("beta@localhost", m.jid);
    assertEquals(Member.Operation.ADD, m.operation);
  }