/** * Create arguments simulating authz=SIGNED. */ public OAuthArguments makeSignedFetchArguments() { OAuthArguments params = new OAuthArguments(); params.setUseToken(UseToken.NEVER); params.setSignOwner(true); params.setSignViewer(true); return params; }
/** * Create arguments simulating authz=SIGNED. */ public OAuthArguments makeSignedFetchArguments() { OAuthArguments params = new OAuthArguments(); params.setUseToken(UseToken.NEVER); params.setSignOwner(true); params.setSignViewer(true); return params; }
/** * Create arguments simulating authz=SIGNED. */ public OAuthArguments makeSignedFetchArguments() { OAuthArguments params = new OAuthArguments(); params.setUseToken(UseToken.NEVER); params.setSignOwner(true); params.setSignViewer(true); return params; }
/** * Create arguments simulating authz=OAUTH. */ public OAuthArguments makeNonSocialOAuthArguments() { OAuthArguments params = new OAuthArguments(); params.setUseToken(UseToken.ALWAYS); params.setServiceName(serviceName); params.setSignOwner(false); params.setSignViewer(false); return params; }
/** * Create arguments simulating authz=OAUTH. */ public OAuthArguments makeNonSocialOAuthArguments() { OAuthArguments params = new OAuthArguments(); params.setUseToken(UseToken.ALWAYS); params.setServiceName(serviceName); params.setSignOwner(false); params.setSignViewer(false); return params; }
/** * Create arguments simulating authz=OAUTH. */ public OAuthArguments makeNonSocialOAuthArguments() { OAuthArguments params = new OAuthArguments(); params.setUseToken(UseToken.ALWAYS); params.setServiceName(serviceName); params.setSignOwner(false); params.setSignViewer(false); return params; }
/** Client that does OAuth and sends opensocial_* params */ private MakeRequestClient makeNonSocialClient(String owner, String viewer, String gadget) throws Exception { SecurityToken securityToken = getSecurityToken(owner, viewer, gadget); MakeRequestClient client = new MakeRequestClient(securityToken, fetcherConfig, serviceProvider, FakeGadgetSpecFactory.SERVICE_NAME); client.getBaseArgs().setSignOwner(true); client.getBaseArgs().setSignViewer(true); return client; }
/** Client that does OAuth and sends opensocial_* params */ private MakeRequestClient makeNonSocialClient(String owner, String viewer, String gadget) throws Exception { SecurityToken securityToken = getSecurityToken(owner, viewer, gadget); serviceProvider.setExpectedRequestSecurityToken( securityToken ); MakeRequestClient client = new MakeRequestClient(securityToken, fetcherConfig, serviceProvider, FakeGadgetSpecFactory.SERVICE_NAME); client.getBaseArgs().setSignOwner(true); client.getBaseArgs().setSignViewer(true); return client; }
/** Client that does OAuth and sends opensocial_* params */ private MakeRequestClient makeNonSocialClient(String owner, String viewer, String gadget) throws Exception { SecurityToken securityToken = getSecurityToken(owner, viewer, gadget); serviceProvider.setExpectedRequestSecurityToken( securityToken ); MakeRequestClient client = new MakeRequestClient(securityToken, fetcherConfig, serviceProvider, FakeGadgetSpecFactory.SERVICE_NAME); client.getBaseArgs().setSignOwner(true); client.getBaseArgs().setSignViewer(true); return client; }
@Test public void testNoSignViewer() throws Exception { MakeRequestClient client = makeSignedFetchClient("o", "v", "http://www.example.com/app"); client.getBaseArgs().setSignViewer(false); HttpResponse resp = client.sendGet(FakeOAuthServiceProvider.RESOURCE_URL); List<Parameter> queryParams = OAuth.decodeForm(resp.getResponseAsString()); assertTrue(contains(queryParams, "opensocial_owner_id", "o")); assertFalse(contains(queryParams, "opensocial_viewer_id", "v")); }
@Test public void testNoSignViewer() throws Exception { MakeRequestClient client = makeSignedFetchClient("o", "v", "http://www.example.com/app"); client.getBaseArgs().setSignViewer(false); HttpResponse resp = client.sendGet(FakeOAuthServiceProvider.RESOURCE_URL); List<Parameter> queryParams = OAuth.decodeForm(resp.getResponseAsString()); assertTrue(contains(queryParams, "opensocial_owner_id", "o")); assertFalse(contains(queryParams, "opensocial_viewer_id", "v")); }
@Test public void testNoSignViewer() throws Exception { MakeRequestClient client = makeSignedFetchClient("o", "v", "http://www.example.com/app"); client.getBaseArgs().setSignViewer(false); HttpResponse resp = client.sendGet(FakeOAuthServiceProvider.RESOURCE_URL); List<Parameter> queryParams = OAuth.decodeForm(resp.getResponseAsString()); assertTrue(contains(queryParams, "opensocial_owner_id", "o")); assertFalse(contains(queryParams, "opensocial_viewer_id", "v")); }
@Before public void setUp() { cacheProvider = new LruCacheProvider(100); cache = new DefaultHttpCache(cacheProvider); service = new DefaultInvalidationService(cache, cacheProvider, new AtomicLong()); appxToken = new FakeGadgetToken(); appxToken.setAppId("AppX"); appxToken.setOwnerId("OwnerX"); appxToken.setViewerId("ViewerX"); appyToken = new FakeGadgetToken(); appyToken.setAppId("AppY"); appyToken.setOwnerId("OwnerY"); appyToken.setViewerId("ViewerY"); signedRequest = new HttpRequest(URI); signedRequest.setAuthType(AuthType.SIGNED); signedRequest.setSecurityToken(appxToken); signedRequest.setOAuthArguments(new OAuthArguments()); signedRequest.getOAuthArguments().setUseToken(OAuthArguments.UseToken.NEVER); signedRequest.getOAuthArguments().setSignOwner(true); signedRequest.getOAuthArguments().setSignViewer(true); fetcher = new DefaultRequestPipelineTest.FakeHttpFetcher(); oauth = new DefaultRequestPipelineTest.FakeOAuthRequestProvider(); requestPipeline = new DefaultRequestPipeline(fetcher, cache, oauth, oauth2, new DefaultResponseRewriterRegistry(null, null), service, new HttpResponseMetadataHelper()); }
@Before public void setUp() { cacheProvider = new LruCacheProvider(100); cache = new DefaultHttpCache(cacheProvider); service = new DefaultInvalidationService(cache, cacheProvider, new AtomicLong()); appxToken = new FakeGadgetToken(); appxToken.setAppId("AppX"); appxToken.setOwnerId("OwnerX"); appxToken.setViewerId("ViewerX"); appyToken = new FakeGadgetToken(); appyToken.setAppId("AppY"); appyToken.setOwnerId("OwnerY"); appyToken.setViewerId("ViewerY"); signedRequest = new HttpRequest(URI); signedRequest.setAuthType(AuthType.SIGNED); signedRequest.setSecurityToken(appxToken); signedRequest.setOAuthArguments(new OAuthArguments()); signedRequest.getOAuthArguments().setUseToken(OAuthArguments.UseToken.NEVER); signedRequest.getOAuthArguments().setSignOwner(true); signedRequest.getOAuthArguments().setSignViewer(true); fetcher = new DefaultRequestPipelineTest.FakeHttpFetcher(); oauth = new DefaultRequestPipelineTest.FakeOAuthRequestProvider(); requestPipeline = new DefaultRequestPipeline(fetcher, cache, oauth, new DefaultResponseRewriterRegistry(null, null), service, new HttpResponseMetadataHelper()); }
@Test public void testFetchContentSignedOwner() throws Exception { oauth.httpResponse = CACHEABLE; signedRequest.getOAuthArguments().setSignViewer(false); HttpResponse httpResponse = requestPipeline.execute(signedRequest); assertEquals(CACHEABLE, httpResponse); assertEquals(1, cacheProvider.createCache(DefaultHttpCache.CACHE_NAME).getSize()); // Invalidate by owner only service.invalidateUserResources(ImmutableSet.of("OwnerX"), appxToken); oauth.httpResponse = new HttpResponseBuilder(CACHEABLE).setResponseString("NEWCONTENT1"). create(); httpResponse = requestPipeline.execute(signedRequest); assertEquals("NEWCONTENT1", httpResponse.getResponseAsString()); assertEquals("o=1;", httpResponse.getHeader(DefaultInvalidationService.INVALIDATION_HEADER)); assertEquals(1, cacheProvider.createCache(DefaultHttpCache.CACHE_NAME).getSize()); // Invalidating viewer has no effect service.invalidateUserResources(ImmutableSet.of("ViewerX"), appxToken); oauth.httpResponse = new HttpResponseBuilder(CACHEABLE).setResponseString("NEWCONTENT2"). create(); httpResponse = requestPipeline.execute(signedRequest); assertEquals("NEWCONTENT1", httpResponse.getResponseAsString()); assertEquals("o=1;", httpResponse.getHeader(DefaultInvalidationService.INVALIDATION_HEADER)); assertEquals(1, cacheProvider.createCache(DefaultHttpCache.CACHE_NAME).getSize()); }
@Test public void testFetchContentSignedOwner() throws Exception { oauth.httpResponse = CACHEABLE; signedRequest.getOAuthArguments().setSignViewer(false); HttpResponse httpResponse = requestPipeline.execute(signedRequest); assertEquals(CACHEABLE, httpResponse); assertEquals(1, cacheProvider.createCache(DefaultHttpCache.CACHE_NAME).getSize()); // Invalidate by owner only service.invalidateUserResources(ImmutableSet.of("OwnerX"), appxToken); oauth.httpResponse = new HttpResponseBuilder(CACHEABLE).setResponseString("NEWCONTENT1"). create(); httpResponse = requestPipeline.execute(signedRequest); assertEquals("NEWCONTENT1", httpResponse.getResponseAsString()); assertEquals("o=1;", httpResponse.getHeader(DefaultInvalidationService.INVALIDATION_HEADER)); assertEquals(1, cacheProvider.createCache(DefaultHttpCache.CACHE_NAME).getSize()); // Invalidating viewer has no effect service.invalidateUserResources(ImmutableSet.of("ViewerX"), appxToken); oauth.httpResponse = new HttpResponseBuilder(CACHEABLE).setResponseString("NEWCONTENT2"). create(); httpResponse = requestPipeline.execute(signedRequest); assertEquals("NEWCONTENT1", httpResponse.getResponseAsString()); assertEquals("o=1;", httpResponse.getHeader(DefaultInvalidationService.INVALIDATION_HEADER)); assertEquals(1, cacheProvider.createCache(DefaultHttpCache.CACHE_NAME).getSize()); }
@Test public void testFetchContentSignedOwner() throws Exception { oauth.httpResponse = CACHEABLE; signedRequest.getOAuthArguments().setSignViewer(false); HttpResponse httpResponse = requestPipeline.execute(signedRequest); assertEquals(CACHEABLE, httpResponse); assertEquals(1, cacheProvider.createCache(DefaultHttpCache.CACHE_NAME).getSize()); // Invalidate by owner only service.invalidateUserResources(ImmutableSet.of("OwnerX"), appxToken); oauth.httpResponse = new HttpResponseBuilder(CACHEABLE).setResponseString("NEWCONTENT1"). create(); httpResponse = requestPipeline.execute(signedRequest); assertEquals("NEWCONTENT1", httpResponse.getResponseAsString()); assertEquals("o=1;", httpResponse.getHeader(DefaultInvalidationService.INVALIDATION_HEADER)); assertEquals(1, cacheProvider.createCache(DefaultHttpCache.CACHE_NAME).getSize()); // Invalidating viewer has no effect service.invalidateUserResources(ImmutableSet.of("ViewerX"), appxToken); oauth.httpResponse = new HttpResponseBuilder(CACHEABLE).setResponseString("NEWCONTENT2"). create(); httpResponse = requestPipeline.execute(signedRequest); assertEquals("NEWCONTENT1", httpResponse.getResponseAsString()); assertEquals("o=1;", httpResponse.getHeader(DefaultInvalidationService.INVALIDATION_HEADER)); assertEquals(1, cacheProvider.createCache(DefaultHttpCache.CACHE_NAME).getSize()); }
@Test public void testGetAndSet() throws Exception { OAuthArguments args = new OAuthArguments(); args.setBypassSpecCache(true); Assert.assertTrue(args.getBypassSpecCache()); args.setOrigClientState("thestate"); assertEquals("thestate", args.getOrigClientState()); args.setRequestToken("rt"); assertEquals("rt", args.getRequestToken()); args.setRequestTokenSecret("rts"); assertEquals("rts", args.getRequestTokenSecret()); args.setServiceName("s"); assertEquals("s", args.getServiceName()); args.setSignOwner(true); Assert.assertTrue(args.getSignOwner()); args.setSignViewer(true); Assert.assertTrue(args.getSignViewer()); args.setUseToken(UseToken.IF_AVAILABLE); assertEquals(UseToken.IF_AVAILABLE, args.getUseToken()); args.setRequestOption("foo", "bar"); assertEquals("bar", args.getRequestOption("foo")); args.removeRequestOption("foo"); assertNull(args.getRequestOption("foo")); }
@Test public void testGetAndSet() throws Exception { OAuthArguments args = new OAuthArguments(); args.setBypassSpecCache(true); Assert.assertTrue(args.getBypassSpecCache()); args.setOrigClientState("thestate"); assertEquals("thestate", args.getOrigClientState()); args.setRequestToken("rt"); assertEquals("rt", args.getRequestToken()); args.setRequestTokenSecret("rts"); assertEquals("rts", args.getRequestTokenSecret()); args.setServiceName("s"); assertEquals("s", args.getServiceName()); args.setSignOwner(true); Assert.assertTrue(args.getSignOwner()); args.setSignViewer(true); Assert.assertTrue(args.getSignViewer()); args.setUseToken(UseToken.IF_AVAILABLE); assertEquals(UseToken.IF_AVAILABLE, args.getUseToken()); args.setRequestOption("foo", "bar"); assertEquals("bar", args.getRequestOption("foo")); args.removeRequestOption("foo"); assertNull(args.getRequestOption("foo")); }
@Test public void testGetAndSet() throws Exception { OAuthArguments args = new OAuthArguments(); args.setBypassSpecCache(true); Assert.assertTrue(args.getBypassSpecCache()); args.setOrigClientState("thestate"); assertEquals("thestate", args.getOrigClientState()); args.setRequestToken("rt"); assertEquals("rt", args.getRequestToken()); args.setRequestTokenSecret("rts"); assertEquals("rts", args.getRequestTokenSecret()); args.setServiceName("s"); assertEquals("s", args.getServiceName()); args.setSignOwner(true); Assert.assertTrue(args.getSignOwner()); args.setSignViewer(true); Assert.assertTrue(args.getSignViewer()); args.setUseToken(UseToken.IF_AVAILABLE); assertEquals(UseToken.IF_AVAILABLE, args.getUseToken()); args.setRequestOption("foo", "bar"); assertEquals("bar", args.getRequestOption("foo")); args.removeRequestOption("foo"); assertNull(args.getRequestOption("foo")); }