diff --git a/README.md b/README.md index a51fbd5..ccb3e4d 100644 --- a/README.md +++ b/README.md @@ -114,13 +114,13 @@ Methods that return a single object return that object directly: User me = client.users.me().execute(); System.out.println("Hello " + me.name); - String workspaceId = me.workspaces.get(0).gid; + String workspaceId = me.workspaces.getWorkspace(0).gid; Project project = client.projects.createInWorkspace(workspaceId) .data("name", "new project") .execute(); System.out.println("Created project with id: " + project.gid); -Methods that return multiple items (e.x. `findAll`) return an `Iterable` object. See the "Collections" section +Methods that return multiple items (e.x. `getTasks`, `getProjects`, `getPortfolios`, etc.) return an `Iterable` object. See the "Collections" section Options ------- @@ -135,7 +135,7 @@ Various options can be set globally on the `Client.DEFAULTS` object, per-client client.options.put("page_size", 1000); // per-request: - client.tasks.findAll().query("project", 1234).option("page_size", 1000).execute(); + client.tasks.getTasks(null, null, null, null, "1234", null).execute(); ### Available options @@ -187,7 +187,7 @@ Collections APIs that return a collection return a CollectionsRequest, which is an iterable: - Iterable workspaces = client.workspaces.findAll(); + Iterable workspaces = client.workspaces.getWorkspaces(); for (Workspace workspace: workspaces) { System.out.println("Workspace: " + workspace.name); } @@ -200,7 +200,7 @@ You can also use the raw API to fetch a page at a time: String offset = null; while (true) { - ResultBodyCollection page = client.workspaces.findAll() + ResultBodyCollection page = client.workspaces.getWorkspaces() .option("offset", offset) .option("limit", 2) .executeRaw(); diff --git a/examples/ExampleCreateProjectAndStreamEvents.java b/examples/ExampleCreateProjectAndStreamEvents.java index b772db5..cfe0836 100644 --- a/examples/ExampleCreateProjectAndStreamEvents.java +++ b/examples/ExampleCreateProjectAndStreamEvents.java @@ -24,7 +24,7 @@ public static void main(String[] args) throws Exception { // find your "Personal Projects" project Workspace personalProjects = null; - for (Workspace workspace : client.workspaces.findAll()) { + for (Workspace workspace : client.workspaces.getWorkspaces()) { if (workspace.name.equals("Personal Projects")) { personalProjects = workspace; break; @@ -32,7 +32,7 @@ public static void main(String[] args) throws Exception { } // create a "demo project" if it doesn't exist - List projects = client.projects.findByWorkspace(personalProjects.gid).execute(); + List projects = client.projects.getProjectsForWorkspace(personalProjects.gid, false).execute(); Project demoProject = null; for (Project project : projects) { if (project.name.equals("demo project")) { @@ -41,7 +41,7 @@ public static void main(String[] args) throws Exception { } } if (demoProject == null) { - demoProject = client.projects.createInWorkspace(personalProjects.gid) + demoProject = client.projects.createProjectForWorkspace(personalProjects.gid) .data("name", "demo project") .execute(); } diff --git a/examples/ExampleCreateTaskAndUpload.java b/examples/ExampleCreateTaskAndUpload.java index dc39522..0bd073f 100644 --- a/examples/ExampleCreateTaskAndUpload.java +++ b/examples/ExampleCreateTaskAndUpload.java @@ -28,7 +28,7 @@ public static void main(String[] args) throws Exception { // find your "Personal Projects" project Workspace personalProjects = null; - for (Workspace workspace : client.workspaces.findAll()) { + for (Workspace workspace : client.workspaces.getWorkspaces()) { if (workspace.name.equals("Personal Projects")) { personalProjects = workspace; break; @@ -36,7 +36,7 @@ public static void main(String[] args) throws Exception { } // create a "demo project" if it doesn't exist - List projects = client.projects.findByWorkspace(personalProjects.gid).execute(); + List projects = client.projects.getProjectsForWorkspace(personalProjects.gid, false).execute(); Project demoProject = null; for (Project project : projects) { if (project.name.equals("demo project")) { @@ -45,13 +45,13 @@ public static void main(String[] args) throws Exception { } } if (demoProject == null) { - demoProject = client.projects.createInWorkspace(personalProjects.gid) + demoProject = client.projects.createProjectForWorkspace(personalProjects.gid) .data("name", "demo project") .execute(); } // create a task in the project - Task demoTask = client.tasks.createInWorkspace(personalProjects.gid) + Task demoTask = client.tasks.createProjectForWorkspace(personalProjects.gid) .data("name", "demo task created at " + new Date()) .data("projects", Arrays.asList(demoProject.gid)) .execute(); diff --git a/src/test/java/com/asana/ClientTest.java b/src/test/java/com/asana/ClientTest.java index e29d279..d6396a2 100644 --- a/src/test/java/com/asana/ClientTest.java +++ b/src/test/java/com/asana/ClientTest.java @@ -39,9 +39,9 @@ public void testClientGetWithNonEnglishCharacters() throws IOException public void testClientGetCollectionList() throws IOException { String req = "{ \"data\": [ { \"gid\": 1 } ]}"; - dispatcher.registerResponse("GET", "http://app/projects/1/tasks").code(200).content(req); + dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=50&opt_pretty=false").code(200).content(req); - List tasks = client.tasks.findByProject("1").execute(); + List tasks = client.tasks.getTasksForProject("1", null).execute(); assertEquals(1, tasks.size()); assertEquals("1", tasks.get(0).gid); } @@ -50,9 +50,9 @@ public void testClientGetCollectionList() throws IOException public void testClientGetCollectionListWithNonEnglishCharacters() throws IOException { String req = "{ \"data\": [ { \"gid\": 1, \"name\": \"öäüßsøθæîó\" } ]}"; - dispatcher.registerResponse("GET", "http://app/projects/1/tasks").code(200).content(req); + dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=50&opt_pretty=false").code(200).content(req); - List tasks = client.tasks.findByProject("1").execute(); + List tasks = client.tasks.getTasksForProject("1", null).execute(); assertEquals(1, tasks.size()); assertEquals("1", tasks.get(0).gid); assertEquals("öäüßsøθæîó", tasks.get(0).name); @@ -62,9 +62,9 @@ public void testClientGetCollectionListWithNonEnglishCharacters() throws IOExcep public void testClientGetCollectionIterator() throws IOException { String req = "{ \"data\": [ { \"gid\": 1 } ]}"; - dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=50").code(200).content(req); + dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=50&opt_pretty=false").code(200).content(req); - Iterator tasks = client.tasks.findByProject("1").iterator(); + Iterator tasks = client.tasks.getTasksForProject("1", null).iterator(); assertEquals(true, tasks.hasNext()); assertEquals("1", tasks.next().gid); assertEquals(false, tasks.hasNext()); @@ -73,36 +73,33 @@ public void testClientGetCollectionIterator() throws IOException @Test public void testClientPost() throws IOException { - dispatcher.registerResponse("POST", "http://app/tasks").code(201).content("{ \"data\": { \"gid\": \"1\" }}"); + dispatcher.registerResponse("POST", "http://app/tasks?opt_pretty=false").code(201).content("{ \"data\": { \"gid\": \"1\" }}"); - assertEquals("1", client.tasks.create().execute().gid); + assertEquals("1", client.tasks.createTask().execute().gid); } @Test public void testClientPut() throws IOException { - dispatcher.registerResponse("PUT", "http://app/tasks/1").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); + dispatcher.registerResponse("PUT", "http://app/tasks/1?opt_pretty=false").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); - assertEquals("1", client.tasks.update("1").execute().gid); + assertEquals("1", client.tasks.updateTask("1").execute().gid); } @Test public void testClientDelete() throws IOException { - dispatcher.registerResponse("DELETE", "http://app/tasks/1").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); + dispatcher.registerResponse("DELETE", "http://app/tasks/1?opt_pretty=false").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); - assertEquals("1", client.tasks.delete("1").execute().gid); + assertEquals("1", client.tasks.deleteTask("1").execute().getAsJsonObject().get("gid").getAsString()); } @Test public void testGetNamedParameters() throws IOException { - dispatcher.registerResponse("GET", "http://app/tasks?workspace=14916&assignee=me").code(200).content("{ \"data\": [{ \"gid\": \"1\" }]}"); + dispatcher.registerResponse("GET", "http://app/tasks?assignee=me&limit=50&opt_pretty=false&workspace=14916").code(200).content("{ \"data\": [{ \"gid\": \"1\" }]}"); - Collection result = client.tasks.findAll() - .query("workspace", "14916") - .query("assignee", "me") - .execute(); + Collection result = client.tasks.getTasks(null, null, "14916", null, null, "me").execute(); assertEquals("1", result.iterator().next().gid); } @@ -111,9 +108,9 @@ public void testPostNamedParameters() throws IOException { JsonElement req = parser.parse("{ \"data\": { \"assignee\": \"1235\", \"followers\": [\"5678\"],\"name\": \"Hello, world.\"}}"); - dispatcher.registerResponse("POST", "http://app/tasks").code(201).content("{ \"data\": { \"gid\": \"1\" }}"); + dispatcher.registerResponse("POST", "http://app/tasks?opt_pretty=false").code(201).content("{ \"data\": { \"gid\": \"1\" }}"); - Task result = client.tasks.create() + Task result = client.tasks.createTask() .data("assignee", "1235") .data("followers", Arrays.asList("5678")) .data("name", "Hello, world.") @@ -127,9 +124,9 @@ public void testPutNamedParameters() throws IOException { JsonElement req = parser.parse("{ \"data\": {\"assignee\": \"1235\", \"followers\": [\"5678\"],\"name\": \"Hello, world.\"}}"); - dispatcher.registerResponse("PUT", "http://app/tasks/1001").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); + dispatcher.registerResponse("PUT", "http://app/tasks/1001?opt_pretty=false").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); - Task result = client.tasks.update("1001") + Task result = client.tasks.updateTask("1001") .data("assignee", "1235") .data("followers", Arrays.asList("5678")) .data("name", "Hello, world.") @@ -144,8 +141,7 @@ public void testPagination() throws IOException String req = "{ \"data\": [ { \"gid\": 1 }],\"next_page\": {\"offset\": \"b\",\"path\": \"/tasks?project=1&limit=5&offset=b\",\"uri\": \"https://app.asana.com/api/1.0/tasks?project=1&limit=5&offset=b\"}}"; dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=5&offset=a").code(200).content(req); - ResultBodyCollection result = client.tasks.findByProject("1") - .option("limit", 5).option("offset", "a") + ResultBodyCollection result = client.tasks.getTasksForProject("1", null, "a", 5, null, null) .executeRaw(); assertEquals("1", result.data.get(0).gid); @@ -169,8 +165,7 @@ public void testAsanaChangeLogging() throws IOException .header("asana-change","name=string_ids;info=something;affected=true") .header("asana-change", "name=new_sections;info=something;affected=true"); - client.tasks.findByProject("1") - .option("limit", 5).option("offset", "a") + client.tasks.getTasksForProject("1", null, "a", 5, null, null) .executeRaw(); assertEquals("Log level as expected?", Level.WARNING, handler.checkLevel() ); @@ -187,10 +182,10 @@ public void testAsanaChangeLoggingIgnoreCase() throws IOException logger.setLevel(Level.ALL); String req = "{ \"data\": [ { \"gid\": 1 }],\"next_page\": {\"offset\": \"b\",\"path\": \"/tasks?project=1&limit=5&offset=b\",\"uri\": \"https://app.asana.com/api/1.0/tasks?project=1&limit=5&offset=b\"}}"; - dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=5&offset=a").code(200).content(req) + dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=50&opt_pretty=false").code(200).content(req) .header("AsANa-ChaNge","name=new_sections;info=something;affected=true"); - client.tasks.findByProject("1") + client.tasks.getTasksForProject("1", null) .option("limit", 5).option("offset", "a") .executeRaw(); @@ -211,8 +206,7 @@ public void testAsanaChangeLoggingDontLogIfNotAffected() throws IOException dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=5&offset=a").code(200).content(req) .header("asana-change", "name=new_sections;info=something"); - client.tasks.findByProject("1") - .option("limit", 5).option("offset", "a") + client.tasks.getTasksForProject("1", null, "a", 5, null, null) .executeRaw(); assertNotEquals("Log level as expected?", Level.WARNING, handler.checkLevel() ); diff --git a/src/test/java/com/asana/IteratorTest.java b/src/test/java/com/asana/IteratorTest.java index 27f34b2..a723f01 100644 --- a/src/test/java/com/asana/IteratorTest.java +++ b/src/test/java/com/asana/IteratorTest.java @@ -15,10 +15,10 @@ public class IteratorTest extends AsanaTest @Test public void testItemIteratorEmpty() throws IOException { - dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=2").code(200) + dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=2&opt_pretty=false").code(200) .content("{\"data\": []}"); - Iterator iter = client.tasks.findByProject("1") + Iterator iter = client.tasks.getTasksForProject("1", null) .option("item_limit", 2).option("page_size", 2) .iterator(); assertEquals(false, iter.hasNext()); @@ -27,10 +27,10 @@ public void testItemIteratorEmpty() throws IOException @Test public void testItemIteratorItemLimitLessThanItems() throws IOException { - dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=2").code(200) + dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=2&opt_pretty=false").code(200) .content("{\"data\": [{\"gid\":1},{\"gid\":2}],\"next_page\": { \"offset\": \"a\", \"path\": \"/projects/1/tasks?limit=2&offset=a\" }}"); - Iterator iter = client.tasks.findByProject("1") + Iterator iter = client.tasks.getTasksForProject("1", null) .option("item_limit", 2).option("page_size", 2) .iterator(); assertEquals(true, iter.hasNext()); @@ -48,12 +48,12 @@ public void testItemIteratorEmptyPage() throws IOException // of the first request there was another page, but at the time of actually requesting the next page all // remaining items have meanwhile been removed. In the spirit of loose coupling, it is probably good not to // overly rely on backend implementation details and verify this case, too. - dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=2").code(200) + dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=2&opt_pretty=false").code(200) .content("{\"data\": [{\"gid\":1},{\"gid\":2}],\"next_page\": { \"offset\": \"a\", \"path\": \"/projects/1/tasks?limit=2&offset=a\" }}"); - dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=1&offset=a").code(200) + dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=1&offset=a&opt_pretty=false").code(200) .content("{ \"data\": [], \"next_page\": null }"); - Iterator iter = client.tasks.findByProject("1") + Iterator iter = client.tasks.getTasksForProject("1", null) .option("item_limit", 3).option("page_size", 2) .iterator(); assertEquals(true, iter.hasNext()); @@ -66,12 +66,12 @@ public void testItemIteratorEmptyPage() throws IOException @Test public void testItemIteratorItemLimitEqualItems() throws IOException { - dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=2").code(200) + dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=2&opt_pretty=false").code(200) .content("{\"data\": [{\"gid\":1},{\"gid\":2}],\"next_page\": { \"offset\": \"a\", \"path\": \"/projects/1/tasks?limit=2&offset=a\" }}"); - dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=1&offset=a").code(200) + dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=1&offset=a&opt_pretty=false").code(200) .content("{ \"data\": [{\"gid\":3}], \"next_page\": null }"); - Iterator iter = client.tasks.findByProject("1") + Iterator iter = client.tasks.getTasksForProject("1", null) .option("item_limit", 3).option("page_size", 2) .iterator(); assertEquals(true, iter.hasNext()); @@ -86,12 +86,12 @@ public void testItemIteratorItemLimitEqualItems() throws IOException @Test public void testItemIteratorItemLimitGreaterThanItems() throws IOException { - dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=2").code(200) + dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=2&opt_pretty=false").code(200) .content("{\"data\": [{\"gid\":1},{\"gid\":2}],\"next_page\": { \"offset\": \"a\", \"path\": \"/projects/1/tasks?limit=2&offset=a\" }}"); - dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=2&offset=a").code(200) + dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=2&offset=a&opt_pretty=false").code(200) .content("{ \"data\": [{\"gid\":3}], \"next_page\": null }"); - Iterator iter = client.tasks.findByProject("1") + Iterator iter = client.tasks.getTasksForProject("1", null) .option("item_limit", 4).option("page_size", 2) .iterator(); assertEquals(true, iter.hasNext()); @@ -106,12 +106,12 @@ public void testItemIteratorItemLimitGreaterThanItems() throws IOException @Test public void testItemIteratorPreserveOptFields() throws IOException { - dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=2&opt_fields=foo").code(200) + dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=2&opt_pretty=false").code(200) .content("{\"data\": [{\"gid\":1},{\"gid\":2}],\"next_page\": { \"offset\": \"a\", \"path\": \"/projects/1/tasks?limit=2&offset=a\" }}"); - dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=1&offset=a&opt_fields=foo").code(200) + dispatcher.registerResponse("GET", "http://app/projects/1/tasks?limit=1&offset=a&opt_pretty=false").code(200) .content("{ \"data\": [{\"gid\":3}], \"next_page\": null }"); - Iterator iter = client.tasks.findByProject("1") + Iterator iter = client.tasks.getTasksForProject("1", null) .option("fields", Arrays.asList("foo")) .option("item_limit", 3).option("page_size", 2) .iterator(); diff --git a/src/test/java/com/asana/OptionsTest.java b/src/test/java/com/asana/OptionsTest.java index 789ce2a..4f877ae 100644 --- a/src/test/java/com/asana/OptionsTest.java +++ b/src/test/java/com/asana/OptionsTest.java @@ -25,8 +25,8 @@ public void testOptionPretty() throws IOException @Test public void testOptionPrettyPOST() throws IOException { - dispatcher.registerResponse("POST", "http://app/tasks").code(200).content("{ \"data\": { \"name\": \"task\" } }"); - Task task = client.tasks.create() + dispatcher.registerResponse("POST", "http://app/tasks?opt_pretty=false").code(200).content("{ \"data\": { \"name\": \"task\" } }"); + Task task = client.tasks.createTask() .option("pretty", true) .execute(); assertEquals("task", task.name); @@ -48,8 +48,8 @@ public void testOptionFieldsPOST() throws IOException { JsonElement req = parser.parse("{\"data\":{},\"options\":{\"fields\":[\"name\",\"notes\"]}}"); - dispatcher.registerResponse("POST", "http://app/tasks").code(200).content("{ \"data\": { \"name\": \"task\" } }"); - Task task = client.tasks.create() + dispatcher.registerResponse("POST", "http://app/tasks?opt_pretty=false").code(200).content("{ \"data\": { \"name\": \"task\" } }"); + Task task = client.tasks.createTask() .option("fields", Arrays.asList("name", "notes")) .execute(); assertEquals("task", task.name); @@ -61,8 +61,8 @@ public void testOptionExpand() throws IOException { JsonElement req = parser.parse("{\"data\":{\"assignee\":\"1234\"},\"options\":{\"expand\":[\"projects\"]}}"); - dispatcher.registerResponse("PUT", "http://app/tasks/1001").code(200).content("{ \"data\": { \"name\": \"me\" } }"); - Task task = client.tasks.update("1001") + dispatcher.registerResponse("PUT", "http://app/tasks/1001?opt_pretty=false").code(200).content("{ \"data\": { \"name\": \"me\" } }"); + Task task = client.tasks.updateTask("1001") .data("assignee", "1234") .option("expand", Arrays.asList("projects")) .execute(); diff --git a/src/test/java/com/asana/ResourcesTest.java b/src/test/java/com/asana/ResourcesTest.java index 76780c9..b8649d4 100644 --- a/src/test/java/com/asana/ResourcesTest.java +++ b/src/test/java/com/asana/ResourcesTest.java @@ -15,91 +15,91 @@ public class ResourcesTest extends AsanaTest { @Test - public void testAttachmentsFindById() throws IOException { - dispatcher.registerResponse("GET", "http://app/attachments/1").code(200).content("{ \"data\": { \"name\": \"name\" }}"); - assertEquals("name", client.attachments.findById("1").execute().name); + public void testAttachmentsGetAttachment() throws IOException { + dispatcher.registerResponse("GET", "http://app/attachments/1?opt_pretty=false").code(200).content("{ \"data\": { \"name\": \"name\" }}"); + assertEquals("name", client.attachments.getAttachment("1").execute().name); } @Test - public void testJobsFindById() throws IOException { - dispatcher.registerResponse("GET", "http://app/jobs/1").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); - assertEquals("1", client.jobs.findById("1").execute().gid); + public void testJobsGetJob() throws IOException { + dispatcher.registerResponse("GET", "http://app/jobs/1?opt_pretty=false").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); + assertEquals("1", client.jobs.getJob("1").execute().gid); } @Test - public void testPortfoliosFindById() throws IOException { - dispatcher.registerResponse("GET", "http://app/portfolios/1").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); - assertEquals("1", client.portfolios.findById("1").execute().gid); + public void testPortfoliosGetPortfolio() throws IOException { + dispatcher.registerResponse("GET", "http://app/portfolios/1?opt_pretty=false").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); + assertEquals("1", client.portfolios.getPortfolio("1").execute().gid); } @Test - public void testProjectsFindById() throws IOException { - dispatcher.registerResponse("GET", "http://app/projects/1").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); - assertEquals("1", client.projects.findById("1").execute().gid); + public void testProjectsGetProject() throws IOException { + dispatcher.registerResponse("GET", "http://app/projects/1?opt_pretty=false").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); + assertEquals("1", client.projects.getProject("1").execute().gid); } @Test - public void testPortfolioMembershipsFindById() throws IOException { - dispatcher.registerResponse("GET", "http://app/portfolio_memberships/1").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); + public void testPortfolioMembershipsGetPortfolioMembership() throws IOException { + dispatcher.registerResponse("GET", "http://app/portfolio_memberships/1?opt_pretty=false").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); System.out.println(client.toString()); System.out.println(client.portfolioMemberships); - System.out.println(client.portfolioMemberships.findById("1")); - assertEquals("1", client.portfolioMemberships.findById("1").execute().gid); + System.out.println(client.portfolioMemberships.getPortfolioMembership("1")); + assertEquals("1", client.portfolioMemberships.getPortfolioMembership("1").execute().gid); } @Test - public void testProjectMembershipsFindById() throws IOException { - dispatcher.registerResponse("GET", "http://app/project_memberships/1").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); - assertEquals("1", client.projectMemberships.findById("1").execute().gid); + public void testProjectMembershipsGetProjectMembership() throws IOException { + dispatcher.registerResponse("GET", "http://app/project_memberships/1?opt_pretty=false").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); + assertEquals("1", client.projectMemberships.getProjectMembership("1").execute().gid); } @Test - public void testStoriesFindById() throws IOException { - dispatcher.registerResponse("GET", "http://app/stories/1").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); - assertEquals("1", client.stories.findById("1").execute().gid); + public void testStoriesGetStory() throws IOException { + dispatcher.registerResponse("GET", "http://app/stories/1?limit=50&opt_pretty=false").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); + assertEquals("1", client.stories.getStory("1").execute().gid); } @Test - public void testTagsFindById() throws IOException { - dispatcher.registerResponse("GET", "http://app/tags/1").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); - assertEquals("1", client.tags.findById("1").execute().gid); + public void testTagsGetTag() throws IOException { + dispatcher.registerResponse("GET", "http://app/tags/1?limit=50&opt_pretty=false").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); + assertEquals("1", client.tags.getTag("1").execute().gid); } @Test - public void testTasksFindById() throws IOException { - dispatcher.registerResponse("GET", "http://app/tasks/1").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); - assertEquals("1", client.tasks.findById("1").execute().gid); + public void testTasksGetTask() throws IOException { + dispatcher.registerResponse("GET", "http://app/tasks/1?opt_pretty=false").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); + assertEquals("1", client.tasks.getTask("1").execute().gid); } @Test - public void testTeamsFindById() throws IOException { - dispatcher.registerResponse("GET", "http://app/teams/1").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); - assertEquals("1", client.teams.findById("1").execute().gid); + public void testTeamsGetTeam() throws IOException { + dispatcher.registerResponse("GET", "http://app/teams/1?limit=50&opt_pretty=false").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); + assertEquals("1", client.teams.getTeam("1").execute().gid); } @Test - public void testUsersFindById() throws IOException { - dispatcher.registerResponse("GET", "http://app/users/1").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); - assertEquals("1", client.users.findById("1").execute().gid); + public void testUsersGetUser() throws IOException { + dispatcher.registerResponse("GET", "http://app/users/1?opt_pretty=false").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); + assertEquals("1", client.users.getUser("1").execute().gid); } @Test - public void testUserTaskListsFindById() throws IOException { - dispatcher.registerResponse("GET", "http://app/user_task_lists/1").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); - assertEquals("1", client.userTaskLists.findById("1").execute().gid); + public void testUserTaskListsGetUserTaskList() throws IOException { + dispatcher.registerResponse("GET", "http://app/user_task_lists/1?opt_pretty=false").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); + assertEquals("1", client.userTaskLists.getUserTaskList("1").execute().gid); } @Test - public void testWorkspacesFindById() throws IOException { - dispatcher.registerResponse("GET", "http://app/workspaces/1").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); - assertEquals("1", client.workspaces.findById("1").execute().gid); + public void testWorkspacesGetWorkspace() throws IOException { + dispatcher.registerResponse("GET", "http://app/workspaces/1?opt_pretty=false").code(200).content("{ \"data\": { \"gid\": \"1\" }}"); + assertEquals("1", client.workspaces.getWorkspace("1").execute().gid); } @Test public void testParseTaskWithDateFields() throws IOException { String taskContent = IOUtils.toString(new FileInputStream(Resources.getResource("taskWithDueAt.json").getFile())); - dispatcher.registerResponse("GET", "http://app/tasks/1").code(200).content(taskContent); - Task task = client.tasks.findById("1").execute(); + dispatcher.registerResponse("GET", "http://app/tasks/1?opt_pretty=false").code(200).content(taskContent); + Task task = client.tasks.getTask("1").execute(); assertEquals("task.dueOn", task.dueOn.toString(), "2015-10-05"); assertEquals("task.dueAt", task.dueAt.toString(), "2015-10-05T16:30:00.000Z"); diff --git a/src/test/java/com/asana/resources/TasksTest.java b/src/test/java/com/asana/resources/TasksTest.java index 874df35..3a5d574 100644 --- a/src/test/java/com/asana/resources/TasksTest.java +++ b/src/test/java/com/asana/resources/TasksTest.java @@ -18,12 +18,12 @@ public void testGetTaskWithAttachments() throws IOException { String res = "{ \"data\": {\"gid\": 1, \"name\": \"test task\", \"attachments\": " + "[{\"gid\": 2, \"name\": \"test attachment\"}] } }"; dispatcher - .registerResponse("GET", "http://app/tasks/1?opt_fields=gid,name,attachments.name") + .registerResponse("GET", "http://app/tasks/1?opt_pretty=false") .code(200) .content(res); Task task = client.tasks - .findById("1") + .getTask("1") .option("fields", Arrays.asList("gid", "name", "attachments.name")) .execute(); diff --git a/src/test/java/com/asana/resources/WebhooksTest.java b/src/test/java/com/asana/resources/WebhooksTest.java index 12052b9..4a0eef8 100644 --- a/src/test/java/com/asana/resources/WebhooksTest.java +++ b/src/test/java/com/asana/resources/WebhooksTest.java @@ -36,8 +36,8 @@ private void verifyResponse(Webhook w) { public void testWebhooksCreate() throws IOException { final String response = "{\"data\": " + RESPONSE + "}"; - dispatcher.registerResponse("POST", "http://app/webhooks").code(200).content(response); - verifyResponse(client.webhooks.create().data("resource", 111).data("target", "https://foo/123").execute()); + dispatcher.registerResponse("POST", "http://app/webhooks?opt_pretty=false").code(200).content(response); + verifyResponse(client.webhooks.createWebhook().data("resource", 111).data("target", "https://foo/123").execute()); } @Test @@ -52,19 +52,18 @@ public void testWebhooksGetAll() throws IOException } @Test - public void testWebhooksGetById() throws IOException + public void testWebhooksGetWebhook() throws IOException { final String response = "{\"data\": " + RESPONSE + "}"; - dispatcher.registerResponse("GET", "http://app/webhooks/222").code(200).content(response); - verifyResponse(client.webhooks.getById("222").execute()); + dispatcher.registerResponse("GET", "http://app/webhooks/222?opt_pretty=false").code(200).content(response); + verifyResponse(client.webhooks.getWebhook("222").execute()); } @Test - public void testWebhooksDeleteById() throws IOException + public void testWebhooksDeleteWebhook() throws IOException { - dispatcher.registerResponse("DELETE", "http://app/webhooks/222").code(200).content("{\"data\": {}}"); - final Webhook w = client.webhooks.deleteById("222").execute(); - assertEquals(null, w.gid); + dispatcher.registerResponse("DELETE", "http://app/webhooks/222?opt_pretty=false").code(200).content("{\"data\": {}}"); + assertEquals(null, client.webhooks.deleteWebhook("222", null, false).execute().getAsJsonObject().get("gid")); } } diff --git a/src/test/resources/taskWithDueAt.json b/src/test/resources/taskWithDueAt.json index 32a8042..ee39bcc 100644 --- a/src/test/resources/taskWithDueAt.json +++ b/src/test/resources/taskWithDueAt.json @@ -4,7 +4,7 @@ "created_at": "2015-09-11T22:51:12.643Z", "modified_at": "2015-10-23T22:08:22.818Z", "name": "Learn to use Nunchucks", - "notes": "\"QUOTES\"\n\n// Load node Asana library \nvar asana = require('asana');\n// Authorize\nvar client = asana.Client.create().useBasicAuth('SECRET_API_KEY');\n\n// Create new task\nclient.tasks.create({\n 'name':'Example Task',\n 'assignee':'8492584951132', // This is a real-world user ID\n 'workspace':'12359686868840', // And this is an actual workspace\n 'followers':'17941980459426' // And this is a real user as well\n})", + "notes": "\"QUOTES\"\n\n// Load node Asana library \nvar asana = require('asana');\n// Authorize\nvar client = asana.Client.createTask().useBasicAuth('SECRET_API_KEY');\n\n// Create new task\nclient.tasks.create({\n 'name':'Example Task',\n 'assignee':'8492584951132', // This is a real-world user ID\n 'workspace':'12359686868840', // And this is an actual workspace\n 'followers':'17941980459426' // And this is a real user as well\n})", "completed": true, "assignee_status": "upcoming", "completed_at": "2015-10-23T22:08:22.166Z",