Test returning multiple yammer users
Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/8aca60a1 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/8aca60a1 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/8aca60a1 Branch: refs/heads/master Commit: 8aca60a1ad2c249064d3f7c1984c522aaec05981 Parents: 86ea35e Author: Jonathan Anstey <jans...@gmail.com> Authored: Thu Sep 5 10:25:04 2013 -0230 Committer: Jonathan Anstey <jans...@gmail.com> Committed: Thu Sep 5 11:30:12 2013 -0230 ---------------------------------------------------------------------- .../yammer/YammerMultipleUsersRouteTest.java | 63 ++++++++++++++++++ .../YammerRelationshipInJsonRouteTest.java | 2 +- .../yammer/YammerUserPollEnrichRouteTest.java | 2 +- .../component/yammer/YammerUserRouteTest.java | 2 +- .../camel-yammer/src/test/resources/user.json | 70 ++++++++++++++++++++ .../camel-yammer/src/test/resources/users.json | 70 +++++++++++++++++++- 6 files changed, 205 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/8aca60a1/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerMultipleUsersRouteTest.java ---------------------------------------------------------------------- diff --git a/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerMultipleUsersRouteTest.java b/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerMultipleUsersRouteTest.java new file mode 100644 index 0000000..ca45d22 --- /dev/null +++ b/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerMultipleUsersRouteTest.java @@ -0,0 +1,63 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.camel.component.yammer; + + +import java.util.List; + +import org.apache.camel.Exchange; +import org.apache.camel.builder.RouteBuilder; +import org.apache.camel.component.mock.MockEndpoint; +import org.apache.camel.component.yammer.model.User; +import org.junit.Test; + +public class YammerMultipleUsersRouteTest extends YammerComponentTestSupport { + + @SuppressWarnings("unchecked") + @Test + public void testConsumeAllUsers() throws Exception { + MockEndpoint mock = getMockEndpoint("mock:result"); + mock.expectedMinimumMessageCount(1); + + template.sendBody("direct:start", "overwrite me"); + + assertMockEndpointsSatisfied(); + + Exchange exchange = mock.getExchanges().get(0); + List<User> users = exchange.getIn().getBody(List.class); + + assertEquals(2, users.size()); + assertEquals("Joe Camel", users.get(0).getFullName()); + assertEquals("jca...@redhat.com", users.get(0).getContact().getEmailAddresses().get(0).getAddress()); + assertEquals("Joe Camel Jr", users.get(1).getFullName()); + assertEquals("jcame...@redhat.com", users.get(1).getContact().getEmailAddresses().get(0).getAddress()); + } + + @Override + protected String jsonFile() { + return "/users.json"; + } + + @Override + protected RouteBuilder createRouteBuilder() throws Exception { + return new RouteBuilder() { + public void configure() { + from("direct:start").pollEnrich("yammer:users?consumerKey=aConsumerKey&consumerSecret=aConsumerSecretKey&accessToken=aAccessToken").to("mock:result"); + } + }; + } +} http://git-wip-us.apache.org/repos/asf/camel/blob/8aca60a1/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerRelationshipInJsonRouteTest.java ---------------------------------------------------------------------- diff --git a/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerRelationshipInJsonRouteTest.java b/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerRelationshipInJsonRouteTest.java index c486239..ca89ff8 100644 --- a/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerRelationshipInJsonRouteTest.java +++ b/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerRelationshipInJsonRouteTest.java @@ -50,7 +50,7 @@ public class YammerRelationshipInJsonRouteTest extends YammerComponentTestSuppor return new RouteBuilder() { public void configure() { // using dummy keys here since we are mocking out calls to yammer.com with static json; in a real app, please use your own keys! - from("yammer:relationships?consumerKey=aConsumerKey&consumerSecret=aConsumerSecretKey&accessToken=aAccessToken&useJson=true").to("log:foo").to("mock:result"); + from("yammer:relationships?consumerKey=aConsumerKey&consumerSecret=aConsumerSecretKey&accessToken=aAccessToken&useJson=true").to("mock:result"); } }; } http://git-wip-us.apache.org/repos/asf/camel/blob/8aca60a1/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerUserPollEnrichRouteTest.java ---------------------------------------------------------------------- diff --git a/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerUserPollEnrichRouteTest.java b/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerUserPollEnrichRouteTest.java index 9a54104..fe8c73e 100644 --- a/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerUserPollEnrichRouteTest.java +++ b/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerUserPollEnrichRouteTest.java @@ -47,7 +47,7 @@ public class YammerUserPollEnrichRouteTest extends YammerComponentTestSupport { @Override protected String jsonFile() { - return "/users.json"; + return "/user.json"; } @Override http://git-wip-us.apache.org/repos/asf/camel/blob/8aca60a1/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerUserRouteTest.java ---------------------------------------------------------------------- diff --git a/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerUserRouteTest.java b/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerUserRouteTest.java index c8ccc58..bed0410 100644 --- a/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerUserRouteTest.java +++ b/components/camel-yammer/src/test/java/org/apache/camel/component/yammer/YammerUserRouteTest.java @@ -44,7 +44,7 @@ public class YammerUserRouteTest extends YammerComponentTestSupport { @Override protected String jsonFile() { - return "/users.json"; + return "/user.json"; } @Override http://git-wip-us.apache.org/repos/asf/camel/blob/8aca60a1/components/camel-yammer/src/test/resources/user.json ---------------------------------------------------------------------- diff --git a/components/camel-yammer/src/test/resources/user.json b/components/camel-yammer/src/test/resources/user.json new file mode 100644 index 0000000..e1c79d3 --- /dev/null +++ b/components/camel-yammer/src/test/resources/user.json @@ -0,0 +1,70 @@ +[ + { + "previous_companies":[ + + ], + "kids_names":null, + "activated_at":"2009/06/04 19:56:21 +0000", + "interests":null, + "admin":"false", + "full_name":"Joe Camel", + "name":"jcamel", + "last_name":"Camel", + "mugshot_url_template":"", + "type":"user", + "mugshot_url":"", + "birth_date":"", + "timezone":"Pacific Time (US \u0026 Canada)", + "location":"", + "state":"active", + "web_url":"https://www.yammer.com/redhat.com/users/jcamel", + "stats":{ + "followers":13, + "following":74, + "updates":2 + }, + "show_ask_for_photo":false, + "external_urls":[ + + ], + "schools":[ + + ], + "summary":null, + "job_title":"", + "id":123456, + "expertise":null, + "network_domains":[ + "redhat.com" + ], + "network_name":"redhat.com", + "hire_date":null, + "url":"https://www.yammer.com/api/v1/users/123456", + "guid":null, + "significant_other":null, + "verified_admin":"false", + "settings":{ + "xdr_proxy":"https://xdrproxy.yammer.com" + }, + "can_broadcast":"false", + "first_name":"Joe", + "department":null, + "network_id":7654, + "contact":{ + "email_addresses":[ + { + "address":"jca...@redhat.com", + "type":"primary" + } + ], + "has_fake_email":false, + "im":{ + "username":"", + "provider":"aim" + }, + "phone_numbers":[ + + ] + } + } + ] \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/8aca60a1/components/camel-yammer/src/test/resources/users.json ---------------------------------------------------------------------- diff --git a/components/camel-yammer/src/test/resources/users.json b/components/camel-yammer/src/test/resources/users.json index e1c79d3..1e8ae80 100644 --- a/components/camel-yammer/src/test/resources/users.json +++ b/components/camel-yammer/src/test/resources/users.json @@ -66,5 +66,73 @@ ] } - } + }, + { + "previous_companies":[ + + ], + "kids_names":null, + "activated_at":"2009/06/04 19:56:21 +0000", + "interests":null, + "admin":"false", + "full_name":"Joe Camel Jr", + "name":"jcameljr", + "last_name":"Camel", + "mugshot_url_template":"", + "type":"user", + "mugshot_url":"", + "birth_date":"", + "timezone":"Pacific Time (US \u0026 Canada)", + "location":"", + "state":"active", + "web_url":"https://www.yammer.com/redhat.com/users/jcameljr", + "stats":{ + "followers":13, + "following":74, + "updates":2 + }, + "show_ask_for_photo":false, + "external_urls":[ + + ], + "schools":[ + + ], + "summary":null, + "job_title":"", + "id":123456, + "expertise":null, + "network_domains":[ + "redhat.com" + ], + "network_name":"redhat.com", + "hire_date":null, + "url":"https://www.yammer.com/api/v1/users/123457", + "guid":null, + "significant_other":null, + "verified_admin":"false", + "settings":{ + "xdr_proxy":"https://xdrproxy.yammer.com" + }, + "can_broadcast":"false", + "first_name":"Joe", + "department":null, + "network_id":7654, + "contact":{ + "email_addresses":[ + { + "address":"jcame...@redhat.com", + "type":"primary" + } + ], + "has_fake_email":false, + "im":{ + "username":"", + "provider":"aim" + }, + "phone_numbers":[ + + ] + } + } ] \ No newline at end of file