Author: doll
Date: Mon Jun 16 17:28:29 2008
New Revision: 668361

URL: http://svn.apache.org/viewvc?rev=668361&view=rev
Log:
Copied some of the integration tests from the abdera based code over to test 
the dataservice code. Just did json at the moment because the atom format isn't 
fully locked down yet. 



Added:
    
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/
    
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/AbstractLargeRestfulTests.java
      - copied, changed from r668245, 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/abdera/AbstractLargeRestfulTests.java
    
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonActivityTest.java
      - copied, changed from r668245, 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/abdera/RestfulJsonActivityTest.java
    
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonDataTest.java
      - copied, changed from r668245, 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/abdera/RestfulJsonDataTest.java
    
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonPeopleTest.java
      - copied, changed from r668245, 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/abdera/RestfulJsonPeopleTest.java
Modified:
    
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/dataservice/DataServiceServlet.java
    
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/dataservice/HandlerProvider.java
    
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/SocialApiTestsGuiceModule.java

Modified: 
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/dataservice/DataServiceServlet.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/dataservice/DataServiceServlet.java?rev=668361&r1=668360&r2=668361&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/dataservice/DataServiceServlet.java
 (original)
+++ 
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/dataservice/DataServiceServlet.java
 Mon Jun 16 17:28:29 2008
@@ -75,7 +75,7 @@
   }
 
   // Only for testing use. Do not override the injector.
-  void setInjector(Injector injector) {
+  public void setInjector(Injector injector) {
     this.injector = injector;
   }
 

Modified: 
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/dataservice/HandlerProvider.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/dataservice/HandlerProvider.java?rev=668361&r1=668360&r2=668361&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/dataservice/HandlerProvider.java
 (original)
+++ 
incubator/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/dataservice/HandlerProvider.java
 Mon Jun 16 17:28:29 2008
@@ -28,6 +28,11 @@
 public class HandlerProvider {
   Map<String, Class<? extends DataRequestHandler>> handlers;
 
+  // Used by tests
+  public HandlerProvider(Map<String, Class<? extends DataRequestHandler>> 
handlers) {
+    this.handlers = handlers;
+  }
+
   @Inject
   public HandlerProvider(PersonHandler peopleHandler, ActivityHandler 
activityHandler,
       AppDataHandler appDataHandler) {

Modified: 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/SocialApiTestsGuiceModule.java
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/SocialApiTestsGuiceModule.java?rev=668361&r1=668360&r2=668361&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/SocialApiTestsGuiceModule.java
 (original)
+++ 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/SocialApiTestsGuiceModule.java
 Mon Jun 16 17:28:29 2008
@@ -39,6 +39,9 @@
 import org.apache.shindig.social.samplecontainer.XmlStateFileFetcher;
 import org.apache.shindig.social.samplecontainer.SampleContainerRouteManager;
 import org.apache.shindig.social.abdera.SocialRouteManager;
+import org.apache.shindig.social.dataservice.PersonService;
+import org.apache.shindig.social.dataservice.ActivityService;
+import org.apache.shindig.social.dataservice.AppDataService;
 
 import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
@@ -65,6 +68,10 @@
     bind(DataService.class).to(BasicDataService.class);
     bind(ActivitiesService.class).to(BasicActivitiesService.class);
 
+    bind(PersonService.class).to(BasicPeopleService.class);
+    bind(ActivityService.class).to(BasicActivitiesService.class);
+    bind(AppDataService.class).to(BasicDataService.class);
+
     bind(XmlStateFileFetcher.class).to(MockXmlStateFileFetcher.class);
     bind(SocialRouteManager.class).to(SampleContainerRouteManager.class);
 

Copied: 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/AbstractLargeRestfulTests.java
 (from r668245, 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/abdera/AbstractLargeRestfulTests.java)
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/AbstractLargeRestfulTests.java?p2=incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/AbstractLargeRestfulTests.java&p1=incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/abdera/AbstractLargeRestfulTests.java&r1=668245&r2=668361&rev=668361&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/abdera/AbstractLargeRestfulTests.java
 (original)
+++ 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/AbstractLargeRestfulTests.java
 Mon Jun 16 17:28:29 2008
@@ -15,134 +15,99 @@
  * copyright in this work, please see the NOTICE file in the top level
  * directory of this distribution.
  */
-package org.apache.shindig.social.abdera;
+package org.apache.shindig.social.dataservice.integration;
 
-import org.apache.shindig.social.JettyServer;
+import org.apache.shindig.common.BasicSecurityTokenDecoder;
+import org.apache.shindig.social.SocialApiTestsGuiceModule;
+import org.apache.shindig.social.dataservice.ActivityHandler;
+import org.apache.shindig.social.dataservice.AppDataHandler;
+import org.apache.shindig.social.dataservice.DataRequestHandler;
+import org.apache.shindig.social.dataservice.DataServiceServlet;
+import org.apache.shindig.social.dataservice.HandlerProvider;
+import org.apache.shindig.social.dataservice.PersonHandler;
+import org.apache.shindig.social.opensocial.util.BeanJsonConverter;
+import org.apache.shindig.social.opensocial.util.BeanXmlConverter;
 
 import com.google.common.collect.Maps;
-import org.apache.abdera.Abdera;
-import org.apache.abdera.model.Base;
-import org.apache.abdera.model.Entry;
-import org.apache.abdera.protocol.Response;
-import org.apache.abdera.protocol.client.AbderaClient;
-import org.apache.abdera.protocol.client.ClientResponse;
-import org.apache.abdera.util.Constants;
-import org.apache.abdera.util.MimeTypeHelper;
-import org.apache.abdera.writer.Writer;
-import org.apache.abdera.writer.WriterFactory;
-import org.json.JSONException;
+import com.google.inject.Guice;
+import org.easymock.classextension.EasyMock;
 import org.json.JSONObject;
-import org.junit.After;
-import org.junit.AfterClass;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-import org.junit.Before;
-import org.junit.BeforeClass;
 
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
 import javax.xml.stream.XMLInputFactory;
 import javax.xml.stream.XMLStreamConstants;
 import javax.xml.stream.XMLStreamException;
 import javax.xml.stream.XMLStreamReader;
-import java.io.BufferedReader;
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
-import java.io.IOException;
+import java.io.PrintWriter;
 import java.util.Map;
-import java.util.logging.Logger;
 
+import junit.framework.TestCase;
 
-public abstract class AbstractLargeRestfulTests {
-  private static Logger logger =
-      Logger.getLogger(AbstractLargeRestfulTests.class.getName());
-
-  private static JettyServer server;
-  private static Abdera abdera = Abdera.getInstance();
-  protected static AbderaClient client = new AbderaClient();
-
-  private static int JETTY_PORT = 9002;
-  private static String BASE = "/social/rest";
-  protected static String BASEURL = "http://localhost:"; + JETTY_PORT + BASE;
-
-  protected ClientResponse resp;
-
-  @BeforeClass
-  public static void setUpOnce() throws Exception {
-    try {
-      server = new JettyServer();
-      server.start(JETTY_PORT, BASE + "/*");
-    } catch (Exception e) {
-      e.printStackTrace();
-    }
-  }
-
-  @AfterClass
-  public static void tearDownOnce() throws Exception {
-    server.stop();
-  }
-
-  @Before
-  public void setUp() throws Exception {
-  }
-
-  @After
-  public void tearDown() throws Exception {
-    resp.release();
-  }
-
-  protected void checkForGoodResponse(ClientResponse response,
-      String mimeType) {
-    assertNotNull(response);
-    assertEquals(Response.ResponseType.SUCCESS, response.getType());
-    assertTrue(MimeTypeHelper.isMatch(response.getContentType().toString(),
-        mimeType));
-  }
+public abstract class AbstractLargeRestfulTests extends TestCase {
+  private HttpServletRequest req;
+  private HttpServletResponse res;
+  private DataServiceServlet servlet;
+
+  @Override
+  protected void setUp() throws Exception {
+    Map<String, Class<? extends DataRequestHandler>> handlers = 
Maps.newHashMap();
+    handlers.put(DataServiceServlet.PEOPLE_ROUTE, PersonHandler.class);
+    handlers.put(DataServiceServlet.ACTIVITY_ROUTE, ActivityHandler.class);
+    handlers.put(DataServiceServlet.APPDATA_ROUTE, AppDataHandler.class);
+
+    servlet = new DataServiceServlet();
+    servlet.setHandlers(new HandlerProvider(handlers));
+    servlet.setInjector(Guice.createInjector(new SocialApiTestsGuiceModule()));
+    servlet.setBeanConverters(new BeanJsonConverter(), new BeanXmlConverter());
+    servlet.setSecurityTokenDecoder(new BasicSecurityTokenDecoder());
+
+    req = EasyMock.createMock(HttpServletRequest.class);
+    res = EasyMock.createMock(HttpServletResponse.class);
+  }
+
+  protected String getJsonResponse(String path, String method) throws 
Exception {
+    return getJsonResponse(path, method, Maps.<String, String>newHashMap());
+  }
+
+  protected String getJsonResponse(String path, String method, Map<String, 
String> extraParams)
+      throws Exception {
+    req.setCharacterEncoding("UTF-8");
+
+    EasyMock.expect(req.getPathInfo()).andStubReturn(path);
+    EasyMock.expect(req.getMethod()).andStubReturn(method);
+    EasyMock.expect(req.getParameter("format")).andStubReturn(null);
+    
EasyMock.expect(req.getParameter("X-HTTP-Method-Override")).andStubReturn(method);
+    EasyMock.expect(req.getParameter("st")).andStubReturn(
+        "john.doe:john.doe:app:container.com:foo:bar");
 
-  protected void checkForGoodJsonResponse(ClientResponse response) {
-    checkForGoodResponse(response, "application/json");
-  }
-
-  protected void checkForGoodAtomResponse(ClientResponse response) {
-    checkForGoodResponse(response, Constants.ATOM_MEDIA_TYPE);
-  }
-
-  protected void checkForBadResponse(ClientResponse response) {
-    assertNotNull(response);
-    assertEquals(Response.ResponseType.CLIENT_ERROR, response.getType());
-  }
-
-  protected JSONObject getJson(ClientResponse resp) throws IOException,
-      JSONException {
-    BufferedReader reader = new BufferedReader(resp.getReader());
-
-    StringBuilder json = new StringBuilder();
-    String line = reader.readLine();
-    while (line != null) {
-      json.append(line);
-      line = reader.readLine();
+    for (Map.Entry<String, String> entry : extraParams.entrySet()) {
+      
EasyMock.expect(req.getParameter(entry.getKey())).andStubReturn(entry.getValue());
     }
 
-    logger.fine(json.toString());
-    return new JSONObject(json.toString());
-  }
+    ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
+    PrintWriter writer = new PrintWriter(outputStream);
+    EasyMock.expect(res.getWriter()).andReturn(writer);
+
+    EasyMock.replay(req, res);
+    servlet.service(req, res);
+    EasyMock.verify(req, res);
 
-  protected void prettyPrint(Base doc) throws IOException {
-    WriterFactory writerFactory = abdera.getWriterFactory();
-    Writer writer = writerFactory.getWriter("prettyxml");
-    ByteArrayOutputStream os = new ByteArrayOutputStream();
-    writer.writeTo(doc, os);
-    logger.fine(os.toString("utf8"));
+    writer.flush();
+    return outputStream.toString();
   }
 
-  protected String getIdFromXmlContent(String str) throws XMLStreamException {
-    return parseXmlContent(str).get("id");
+  protected JSONObject getJson(String json) throws Exception {
+    return new JSONObject(json);
   }
 
   /**
    * parse entry.content xml into a Map<> struct
    * @param str input content string
    * @return the map<> of <name, value> pairs from the content xml
-   * @throws XMLStreamException If the str is not valid xml
+   * @throws javax.xml.stream.XMLStreamException If the str is not valid xml
    */
   protected Map<String, String> parseXmlContent(String str)
       throws XMLStreamException {
@@ -168,8 +133,4 @@
     return columns;
   }
 
-  protected Entry getNewEntry() {
-    return abdera.getFactory().newEntry();
-  }
-
-}
+}
\ No newline at end of file

Copied: 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonActivityTest.java
 (from r668245, 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/abdera/RestfulJsonActivityTest.java)
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonActivityTest.java?p2=incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonActivityTest.java&p1=incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/abdera/RestfulJsonActivityTest.java&r1=668245&r2=668361&rev=668361&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/abdera/RestfulJsonActivityTest.java
 (original)
+++ 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonActivityTest.java
 Mon Jun 16 17:28:29 2008
@@ -15,17 +15,15 @@
  * copyright in this work, please see the NOTICE file in the top level
  * directory of this distribution.
  */
-package org.apache.shindig.social.abdera;
+package org.apache.shindig.social.dataservice.integration;
 
 import org.apache.shindig.social.SocialApiTestsGuiceModule;
 import org.apache.shindig.social.opensocial.model.Activity;
 
 import org.json.JSONException;
 import org.json.JSONObject;
-import static org.junit.Assert.assertEquals;
 import org.junit.Test;
 
-
 public class RestfulJsonActivityTest extends AbstractLargeRestfulTests {
 
   /**
@@ -41,8 +39,7 @@
    */
   @Test
   public void testGetActivityJson() throws Exception {
-    resp = client.get(BASEURL + "/activities/john.doe/@self/1");
-    checkForGoodJsonResponse(resp);
+    String resp = getJsonResponse("/activities/john.doe/@self/1", "GET");
     JSONObject result = getJson(resp);
     assertActivitiesEqual(
         SocialApiTestsGuiceModule.MockXmlStateFileFetcher.johnActivity,
@@ -68,8 +65,7 @@
    */
   @Test
   public void testGetActivitiesJson() throws Exception {
-    resp = client.get(BASEURL + "/activities/john.doe/@self");
-    checkForGoodJsonResponse(resp);
+    String resp = getJsonResponse("/activities/john.doe/@self", "GET");
     JSONObject result = getJson(resp);
 
     assertEquals(1, result.getInt("totalResults"));
@@ -98,10 +94,8 @@
    */
   @Test
   public void testGetFriendsActivitiesJson() throws Exception {
-    // TODO: test that the ids passed into the activities service are correct
     // TODO: change this test to use different people
-    resp = client.get(BASEURL + "/activities/john.doe/@friends");
-    checkForGoodJsonResponse(resp);
+    String resp = getJsonResponse("/activities/john.doe/@friends", "GET");
     JSONObject result = getJson(resp);
 
     assertEquals(1, result.getInt("totalResults"));
@@ -121,4 +115,4 @@
 
   // TODO: Add tests for the fields= parameter
   // TODO: Add tests for post
-}
+}
\ No newline at end of file

Copied: 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonDataTest.java
 (from r668245, 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/abdera/RestfulJsonDataTest.java)
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonDataTest.java?p2=incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonDataTest.java&p1=incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/abdera/RestfulJsonDataTest.java&r1=668245&r2=668361&rev=668361&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/abdera/RestfulJsonDataTest.java
 (original)
+++ 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonDataTest.java
 Mon Jun 16 17:28:29 2008
@@ -15,14 +15,17 @@
  * copyright in this work, please see the NOTICE file in the top level
  * directory of this distribution.
  */
-package org.apache.shindig.social.abdera;
+package org.apache.shindig.social.dataservice.integration;
 
 import 
org.apache.shindig.social.SocialApiTestsGuiceModule.MockXmlStateFileFetcher;
 
-import static junit.framework.Assert.*;
 import org.json.JSONObject;
 import org.junit.Test;
 
+import java.util.Map;
+
+import com.google.common.collect.Maps;
+
 
 public class RestfulJsonDataTest extends AbstractLargeRestfulTests {
 
@@ -41,8 +44,9 @@
   @Test
   public void testGetFriendsAppDataJson() throws Exception {
     // app id is mocked out
-    resp = client.get(BASEURL + "/appdata/john.doe/@friends/app?fields=count");
-    checkForGoodJsonResponse(resp);
+    Map<String, String> extraParams = Maps.newHashMap();
+    extraParams.put("fields", "count");
+    String resp = getJsonResponse("/appdata/john.doe/@friends/app", "GET", 
extraParams);
 
     JSONObject data = getJson(resp).getJSONObject("entry");
     assertEquals(2, data.length());
@@ -72,8 +76,10 @@
   @Test
   public void testGetSelfAppDataJson() throws Exception {
     // app id is mocked out
-    resp = client.get(BASEURL + "/appdata/john.doe/@self/app");
-    checkForGoodJsonResponse(resp);
+    Map<String, String> extraParams = Maps.newHashMap();
+    extraParams.put("fields", null);
+    String resp = getJsonResponse("/appdata/john.doe/@self/app", "GET", 
extraParams);
+
     JSONObject data = getJson(resp).getJSONObject("entry");
     assertEquals(1, data.length());
 
@@ -97,8 +103,9 @@
   @Test
   public void testGetSelfAppDataJsonWithKey() throws Exception {
     // app id is mocked out
-    resp = client.get(BASEURL + "/appdata/john.doe/@self/app?fields=count");
-    checkForGoodJsonResponse(resp);
+    Map<String, String> extraParams = Maps.newHashMap();
+    extraParams.put("fields", "count");
+    String resp = getJsonResponse("/appdata/john.doe/@self/app", "GET", 
extraParams);
 
     JSONObject data = getJson(resp).getJSONObject("entry");
     assertEquals(1, data.length());
@@ -124,8 +131,9 @@
   @Test
   public void testGetSelfAppDataJsonWithInvalidKeys() throws Exception {
     // app id is mocked out
-    resp = client.get(BASEURL + "/appdata/john.doe/@self/app?fields=peabody");
-    checkForGoodJsonResponse(resp);
+    Map<String, String> extraParams = Maps.newHashMap();
+    extraParams.put("fields", "peabody");
+    String resp = getJsonResponse("/appdata/john.doe/@self/app", "GET", 
extraParams);
 
     JSONObject data = getJson(resp).getJSONObject("entry");
     assertEquals(1, data.length());
@@ -138,4 +146,4 @@
   // TODO: support for indexBy??
   // TODO: support for post and delete
 
-}
+}
\ No newline at end of file

Copied: 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonPeopleTest.java
 (from r668245, 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/abdera/RestfulJsonPeopleTest.java)
URL: 
http://svn.apache.org/viewvc/incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonPeopleTest.java?p2=incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonPeopleTest.java&p1=incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/abdera/RestfulJsonPeopleTest.java&r1=668245&r2=668361&rev=668361&view=diff
==============================================================================
--- 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/abdera/RestfulJsonPeopleTest.java
 (original)
+++ 
incubator/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonPeopleTest.java
 Mon Jun 16 17:28:29 2008
@@ -15,21 +15,29 @@
  * copyright in this work, please see the NOTICE file in the top level
  * directory of this distribution.
  */
-package org.apache.shindig.social.abdera;
+package org.apache.shindig.social.dataservice.integration;
 
 import org.apache.shindig.social.SocialApiTestsGuiceModule;
-import org.apache.shindig.social.opensocial.model.*;
+import org.apache.shindig.social.opensocial.model.Address;
+import org.apache.shindig.social.opensocial.model.BodyType;
+import org.apache.shindig.social.opensocial.model.Email;
 import org.apache.shindig.social.opensocial.model.Enum;
+import org.apache.shindig.social.opensocial.model.Name;
+import org.apache.shindig.social.opensocial.model.Organization;
+import org.apache.shindig.social.opensocial.model.Person;
+import org.apache.shindig.social.opensocial.model.Phone;
+import org.apache.shindig.social.opensocial.model.Url;
 
+import com.google.common.collect.Maps;
+import org.easymock.classextension.EasyMock;
 import org.json.JSONArray;
-import org.json.JSONObject;
 import org.json.JSONException;
-import static org.junit.Assert.assertEquals;
+import org.json.JSONObject;
 import org.junit.Test;
 
-import java.util.List;
 import java.util.Date;
-
+import java.util.List;
+import java.util.Map;
 
 public class RestfulJsonPeopleTest extends AbstractLargeRestfulTests {
 
@@ -59,8 +67,7 @@
   @Test
   public void testGetPersonJson() throws Exception {
     // Currently, for Shindig {pid}/@all/{uid} == {uid}/@self
-    resp = client.get(BASEURL + "/people/john.doe/@self");
-    checkForGoodJsonResponse(resp);
+    String resp = getJsonResponse("/people/john.doe/@self", "GET");
     JSONObject result = getJson(resp);
 
     Person johnDoe = SocialApiTestsGuiceModule.MockXmlStateFileFetcher.johnDoe;
@@ -240,7 +247,7 @@
         Organization.Field.WEBPAGE);
   }
 
-  private void assertBooleanField(JSONObject result, Boolean expected,
+  private void assertBooleanField(JSONObject result, boolean expected,
       Object field) throws JSONException {
     assertEquals(expected, result.getBoolean(field.toString()));
   }
@@ -293,9 +300,15 @@
    */
   @Test
   public void testGetPeopleJson() throws Exception {
+    Map<String, String> extraParams = Maps.newHashMap();
+    extraParams.put("orderBy", null);
+    extraParams.put("filterBy", null);
+    extraParams.put("startIndex", null);
+    extraParams.put("count", null);
+    extraParams.put("fields", null);
+
     // Currently, for Shindig @all == @friends
-    resp = client.get(BASEURL + "/people/john.doe/@friends");
-    checkForGoodJsonResponse(resp);
+    String resp = getJsonResponse("/people/john.doe/@friends", "GET", 
extraParams);
     JSONObject result = getJson(resp);
 
     assertEquals(2, result.getInt("totalResults"));
@@ -323,4 +336,4 @@
   // TODO: Add tests for paging, sorting
   // TODO: Add tests for fields parameter
   // TODO: Add tests for networkDistance
-}
+}
\ No newline at end of file


Reply via email to