From 5c7f2f17f9c471d306955df457c7cab4e5c6ed3b Mon Sep 17 00:00:00 2001 From: Snap Date: Thu, 16 Apr 2015 14:51:26 -0700 Subject: Google's OpenID Connect method $google_client_id & $google_client_secret must be added to db.inc.php! --- .../tests/general/URITemplateTest.php | 296 +++++++++++++++++++++ 1 file changed, 296 insertions(+) create mode 100644 includes/google-api-php-client-master/tests/general/URITemplateTest.php (limited to 'includes/google-api-php-client-master/tests/general/URITemplateTest.php') diff --git a/includes/google-api-php-client-master/tests/general/URITemplateTest.php b/includes/google-api-php-client-master/tests/general/URITemplateTest.php new file mode 100644 index 0000000..a525f12 --- /dev/null +++ b/includes/google-api-php-client-master/tests/general/URITemplateTest.php @@ -0,0 +1,296 @@ +assertEquals( + "value", + $urit->parse("{var}", array("var" => $var)) + ); + $this->assertEquals( + "Hello%20World%21", + $urit->parse("{hello}", array("hello" => $hello)) + ); + } + + public function testLevelTwo() + { + $var = "value"; + $hello = "Hello World!"; + $path = "/foo/bar"; + + $urit = new Google_Utils_URITemplate(); + $this->assertEquals( + "value", + $urit->parse("{+var}", array("var" => $var)) + ); + $this->assertEquals( + "Hello%20World!", + $urit->parse("{+hello}", array("hello" => $hello)) + ); + $this->assertEquals( + "/foo/bar/here", + $urit->parse("{+path}/here", array("path" => $path)) + ); + $this->assertEquals( + "here?ref=/foo/bar", + $urit->parse("here?ref={+path}", array("path" => $path)) + ); + $this->assertEquals( + "X#value", + $urit->parse("X{#var}", array("var" => $var)) + ); + $this->assertEquals( + "X#Hello%20World!", + $urit->parse("X{#hello}", array("hello" => $hello)) + ); + } + + public function testLevelThree() + { + $var = "value"; + $hello = "Hello World!"; + $empty = ''; + $path = "/foo/bar"; + $x = "1024"; + $y = "768"; + + $urit = new Google_Utils_URITemplate(); + $this->assertEquals( + "map?1024,768", + $urit->parse("map?{x,y}", array("x" => $x, "y" => $y)) + ); + $this->assertEquals( + "1024,Hello%20World%21,768", + $urit->parse("{x,hello,y}", array("x" => $x, "y" => $y, "hello" => $hello)) + ); + + $this->assertEquals( + "1024,Hello%20World!,768", + $urit->parse("{+x,hello,y}", array("x" => $x, "y" => $y, "hello" => $hello)) + ); + $this->assertEquals( + "/foo/bar,1024/here", + $urit->parse("{+path,x}/here", array("x" => $x, "path" => $path)) + ); + + $this->assertEquals( + "#1024,Hello%20World!,768", + $urit->parse("{#x,hello,y}", array("x" => $x, "y" => $y, "hello" => $hello)) + ); + $this->assertEquals( + "#/foo/bar,1024/here", + $urit->parse("{#path,x}/here", array("x" => $x, "path" => $path)) + ); + + $this->assertEquals( + "X.value", + $urit->parse("X{.var}", array("var" => $var)) + ); + $this->assertEquals( + "X.1024.768", + $urit->parse("X{.x,y}", array("x" => $x, "y" => $y)) + ); + + $this->assertEquals( + "X.value", + $urit->parse("X{.var}", array("var" => $var)) + ); + $this->assertEquals( + "X.1024.768", + $urit->parse("X{.x,y}", array("x" => $x, "y" => $y)) + ); + + $this->assertEquals( + "/value", + $urit->parse("{/var}", array("var" => $var)) + ); + $this->assertEquals( + "/value/1024/here", + $urit->parse("{/var,x}/here", array("x" => $x, "var" => $var)) + ); + + $this->assertEquals( + ";x=1024;y=768", + $urit->parse("{;x,y}", array("x" => $x, "y" => $y)) + ); + $this->assertEquals( + ";x=1024;y=768;empty", + $urit->parse("{;x,y,empty}", array("x" => $x, "y" => $y, "empty" => $empty)) + ); + + $this->assertEquals( + "?x=1024&y=768", + $urit->parse("{?x,y}", array("x" => $x, "y" => $y)) + ); + $this->assertEquals( + "?x=1024&y=768&empty=", + $urit->parse("{?x,y,empty}", array("x" => $x, "y" => $y, "empty" => $empty)) + ); + + $this->assertEquals( + "?fixed=yes&x=1024", + $urit->parse("?fixed=yes{&x}", array("x" => $x, "y" => $y)) + ); + $this->assertEquals( + "&x=1024&y=768&empty=", + $urit->parse("{&x,y,empty}", array("x" => $x, "y" => $y, "empty" => $empty)) + ); + } + + public function testLevelFour() + { + $values = array( + 'var' => "value", + 'hello' => "Hello World!", + 'path' => "/foo/bar", + 'list' => array("red", "green", "blue"), + 'keys' => array("semi" => ";", "dot" => ".", "comma" => ","), + ); + + $tests = array( + "{var:3}" => "val", + "{var:30}" => "value", + "{list}" => "red,green,blue", + "{list*}" => "red,green,blue", + "{keys}" => "semi,%3B,dot,.,comma,%2C", + "{keys*}" => "semi=%3B,dot=.,comma=%2C", + "{+path:6}/here" => "/foo/b/here", + "{+list}" => "red,green,blue", + "{+list*}" => "red,green,blue", + "{+keys}" => "semi,;,dot,.,comma,,", + "{+keys*}" => "semi=;,dot=.,comma=,", + "{#path:6}/here" => "#/foo/b/here", + "{#list}" => "#red,green,blue", + "{#list*}" => "#red,green,blue", + "{#keys}" => "#semi,;,dot,.,comma,,", + "{#keys*}" => "#semi=;,dot=.,comma=,", + "X{.var:3}" => "X.val", + "X{.list}" => "X.red,green,blue", + "X{.list*}" => "X.red.green.blue", + "X{.keys}" => "X.semi,%3B,dot,.,comma,%2C", + "X{.keys*}" => "X.semi=%3B.dot=..comma=%2C", + "{/var:1,var}" => "/v/value", + "{/list}" => "/red,green,blue", + "{/list*}" => "/red/green/blue", + "{/list*,path:4}" => "/red/green/blue/%2Ffoo", + "{/keys}" => "/semi,%3B,dot,.,comma,%2C", + "{/keys*}" => "/semi=%3B/dot=./comma=%2C", + "{;hello:5}" => ";hello=Hello", + "{;list}" => ";list=red,green,blue", + "{;list*}" => ";list=red;list=green;list=blue", + "{;keys}" => ";keys=semi,%3B,dot,.,comma,%2C", + "{;keys*}" => ";semi=%3B;dot=.;comma=%2C", + "{?var:3}" => "?var=val", + "{?list}" => "?list=red,green,blue", + "{?list*}" => "?list=red&list=green&list=blue", + "{?keys}" => "?keys=semi,%3B,dot,.,comma,%2C", + "{?keys*}" => "?semi=%3B&dot=.&comma=%2C", + "{&var:3}" => "&var=val", + "{&list}" => "&list=red,green,blue", + "{&list*}" => "&list=red&list=green&list=blue", + "{&keys}" => "&keys=semi,%3B,dot,.,comma,%2C", + "{&keys*}" => "&semi=%3B&dot=.&comma=%2C", + "find{?list*}" => "find?list=red&list=green&list=blue", + "www{.list*}" => "www.red.green.blue" + + ); + + $urit = new Google_Utils_URITemplate(); + + foreach ($tests as $input => $output) { + $this->assertEquals($output, $urit->parse($input, $values), $input . " failed"); + } + } + + public function testMultipleAnnotations() + { + $var = "value"; + $hello = "Hello World!"; + $urit = new Google_Utils_URITemplate(); + $this->assertEquals( + "http://www.google.com/Hello%20World!?var=value", + $urit->parse( + "http://www.google.com/{+hello}{?var}", + array("var" => $var, "hello" => $hello) + ) + ); + $params = array( + "playerId" => "me", + "leaderboardId" => "CgkIhcG1jYEbEAIQAw", + "timeSpan" => "ALL_TIME", + "other" => "irrelevant" + ); + $this->assertEquals( + "players/me/leaderboards/CgkIhcG1jYEbEAIQAw/scores/ALL_TIME", + $urit->parse( + "players/{playerId}/leaderboards/{leaderboardId}/scores/{timeSpan}", + $params + ) + ); + } + + /** + * This test test against the JSON files defined in + * https://github.com/uri-templates/uritemplate-test + * + * We don't ship these tests with it, so they'll just silently + * skip unless provided - this is mainly for use when + * making specific URI template changes and wanting + * to do a full regression check. + */ + public function testAgainstStandardTests() + { + $location = "../../uritemplate-test/*.json"; + + $urit = new Google_Utils_URITemplate(); + foreach (glob($location) as $file) { + $test = json_decode(file_get_contents($file), true); + foreach ($test as $title => $testsets) { + foreach ($testsets['testcases'] as $cases) { + $input = $cases[0]; + $output = $cases[1]; + if ($output == false) { + continue; // skipping negative tests for now + } else if (is_array($output)) { + $response = $urit->parse($input, $testsets['variables']); + $this->assertContains( + $response, + $output, + $input . " failed from " . $title + ); + } else { + $this->assertEquals( + $output, + $urit->parse($input, $testsets['variables']), + $input . " failed." + ); + } + } + } + } + } +} -- cgit v1.2.3