12a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved. 22a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 32a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// found in the LICENSE file. 42a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 5a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#include "google_apis/drive/gdata_wapi_url_generator.h" 62a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 72a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "testing/gtest/include/gtest/gtest.h" 8eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch#include "url/gurl.h" 95d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#include "url/url_util.h" 102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 112a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)namespace google_apis { 122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)class GDataWapiUrlGeneratorTest : public testing::Test { 142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) public: 152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) GDataWapiUrlGeneratorTest() 16eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch : url_generator_( 170529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch GURL(GDataWapiUrlGenerator::kBaseUrlForProduction)) { 182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) } 192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) protected: 212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) GDataWapiUrlGenerator url_generator_; 222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}; 232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_F(GDataWapiUrlGeneratorTest, AddStandardUrlParams) { 252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) EXPECT_EQ("http://www.example.com/?v=3&alt=json&showroot=true", 262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) GDataWapiUrlGenerator::AddStandardUrlParams( 272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) GURL("http://www.example.com")).spec()); 282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_F(GDataWapiUrlGeneratorTest, GenerateEditUrl) { 312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) EXPECT_EQ( 322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) "https://docs.google.com/feeds/default/private/full/XXX?v=3&alt=json" 332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) "&showroot=true", 342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) url_generator_.GenerateEditUrl("XXX").spec()); 352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 372a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TEST_F(GDataWapiUrlGeneratorTest, GenerateEditUrlWithoutParams) { 382a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) EXPECT_EQ( 392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) "https://docs.google.com/feeds/default/private/full/XXX", 402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) url_generator_.GenerateEditUrlWithoutParams("XXX").spec()); 412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 43bbcdd45c55eb7c4641ab97aef9889b0fc828e7d3Ben MurdochTEST_F(GDataWapiUrlGeneratorTest, GenerateEditUrlWithEmbedOrigin) { 44010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles) url::AddStandardScheme("chrome-extension"); 455d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 46bbcdd45c55eb7c4641ab97aef9889b0fc828e7d3Ben Murdoch EXPECT_EQ( 47bbcdd45c55eb7c4641ab97aef9889b0fc828e7d3Ben Murdoch "https://docs.google.com/feeds/default/private/full/XXX?v=3&alt=json" 48bbcdd45c55eb7c4641ab97aef9889b0fc828e7d3Ben Murdoch "&showroot=true&embedOrigin=chrome-extension%3A%2F%2Ftest", 49bbcdd45c55eb7c4641ab97aef9889b0fc828e7d3Ben Murdoch url_generator_.GenerateEditUrlWithEmbedOrigin( 50bbcdd45c55eb7c4641ab97aef9889b0fc828e7d3Ben Murdoch "XXX", 51bbcdd45c55eb7c4641ab97aef9889b0fc828e7d3Ben Murdoch GURL("chrome-extension://test")).spec()); 52bbcdd45c55eb7c4641ab97aef9889b0fc828e7d3Ben Murdoch EXPECT_EQ( 53bbcdd45c55eb7c4641ab97aef9889b0fc828e7d3Ben Murdoch "https://docs.google.com/feeds/default/private/full/XXX?v=3&alt=json" 54bbcdd45c55eb7c4641ab97aef9889b0fc828e7d3Ben Murdoch "&showroot=true", 55bbcdd45c55eb7c4641ab97aef9889b0fc828e7d3Ben Murdoch url_generator_.GenerateEditUrlWithEmbedOrigin( 56bbcdd45c55eb7c4641ab97aef9889b0fc828e7d3Ben Murdoch "XXX", 57bbcdd45c55eb7c4641ab97aef9889b0fc828e7d3Ben Murdoch GURL()).spec()); 58bbcdd45c55eb7c4641ab97aef9889b0fc828e7d3Ben Murdoch} 59bbcdd45c55eb7c4641ab97aef9889b0fc828e7d3Ben Murdoch 602a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} // namespace google_apis 61