1 package org.collectionspace.hello.client.test;
3 import org.collectionspace.hello.client.*;
4 import java.util.ArrayList;
5 import javax.ws.rs.core.MultivaluedMap;
6 import javax.ws.rs.core.Response;
7 import javax.xml.bind.JAXBContext;
8 import javax.xml.bind.Marshaller;
9 import org.collectionspace.hello.Identifier;
10 import org.jboss.resteasy.client.ClientResponse;
11 import org.testng.Assert;
12 import org.testng.annotations.Test;
15 * A IdentifierServiceTest.
17 * @version $Revision:$
19 public class IdentifierServiceTest {
21 private IdentifierClient identifierClient = IdentifierClient.getInstance();
25 public void createIdentifier() {
26 Identifier identifier = new Identifier();
27 identifier.setNamespace("org.bnhm");
28 ClientResponse<Response> res = identifierClient.createIdentifier(identifier);
29 Assert.assertEquals(res.getStatus(), Response.Status.CREATED.getStatusCode());
33 @Test(dependsOnMethods = {"createIdentifier"})
34 public void getIdentifier() {
35 Identifier i = identifierClient.getIdentifier(id).getEntity();
36 verbose("got Identifier", i);
39 private Long extractId(ClientResponse<Response> res) {
40 MultivaluedMap mvm = res.getMetadata();
41 String uri = (String) ((ArrayList) mvm.get("Location")).get(0);
42 String[] segments = uri.split("/");
43 verbose("id=" + segments[segments.length - 1]);
44 return Long.valueOf(segments[segments.length - 1]);
47 private void verbose(String msg) {
48 System.out.println("IdentifierServiceTest : " + msg);
51 private void verbose(String msg, Identifier p) {
54 JAXBContext jc = JAXBContext.newInstance(Identifier.class);
55 Marshaller m = jc.createMarshaller();
56 m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT,
58 m.marshal(p, System.out);
59 //m.marshal(new JAXBElement(new QName("uri", "local"), Identifier.class, p), System.out);
60 } catch (Exception e) {