X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=scpubgit%2Fstemmaweb.git;a=blobdiff_plain;f=t%2F07google.t;h=46e6a20c6c7ad4ab6a939c17b0936e25659771ba;hp=76ee9ed53267dd9d0ae623d8172a61f151eb65ce;hb=6ab7cb54cfeaa6c0ca5c02730f6de7fad4b384d3;hpb=315022bd417c1b6ae20b516957dfdeeed9c898ff diff --git a/t/07google.t b/t/07google.t index 76ee9ed..46e6a20 100644 --- a/t/07google.t +++ b/t/07google.t @@ -173,4 +173,50 @@ my $ua = Test::WWW::Mechanize->new; $ua->content_contains('Hello! 2!', 'We are logged in.'); } +# Decoding token + +{ + my $scope = $dir->new_scope; + + ok !$dir->find_user({ sub => 4242, openid_id => 'https://www.google.com/accounts/o8/id3' }), 'The G+ user is not yet there.'; + + $ua->get('/logout'); + + $ua->get_ok('http://localhost/login'); + + $ua->submit_form( + form_number => 1, + fields => { + id_token => 'eyJraWQiOiJhIiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiI0MjQyIiwib3BlbmlkX2lkIjoiaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9hY2NvdW50cy9vOC9pZDMifQ.moNERe3UHCY4xGMPxdCqmbg2JKW5feVnYlA8jeB4CdE4c_KL3YHvICQeql-S486HT-AlWBeDJWMr6wWH1kkwz11a2D1oyJ8qCWBssHIkhfv8dm3dphmRbtzYssAOFdGsmnPH1oXolCnl-Qu9WgHkhYYnRJWHr3CkeNA6Yh1xOV3nkaa8REtJckuzh3jyKQgx_rjIFsWBPDmT1rqa_Q0XOGVK34N5tADwpcWmkb3fFnbddzd9L6MnybbFzF_S238Bpr5vNa9doXRBwvJ85AdSn1AWX8R6qVpDbbaiGL2RCahuZYF9XECYm6anee-KTKvxh02KXkG2zniKVvweaMlcbQ', + email => 'email@example.org', + }, + ); + + $ua->content_contains('You have logged in.', 'We can now log in to our created user - the token was decoded'); + + $ua->get('/'); + + $ua->content_contains('Hello! 4242!', 'We are logged in.'); + + ok $dir->find_user({ sub => 4242, openid_id => 'https://www.google.com/accounts/o8/id3' }), 'The G+ user is there.'; + + $ua->get('/logout'); + + $ua->get_ok('http://localhost/login'); + + $ua->submit_form( + form_number => 1, + fields => { + id_token => 'eyJraWQiOiJhIiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiI0MjQyIiwib3BlbmlkX2lkIjoiaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9hY2NvdW50cy9vOC9pZDMifQ.moNERe3UHCY4xGMPxdCqmbg2JKW5feVnYlA8jeB4CdE4c_KL3YHvICQeql-S486HT-AlWBeDJWMr6wWH1kkwz11a2D1oyJ8qCWBssHIkhfv8dm3dphmRbtzYssAOFdGsmnPH1oXolCnl-Qu9WgHkhYYnRJWHr3CkeNA6Yh1xOV3nkaa8REtJckuzh3jyKQgx_rjIFsWBPDmT1rqa_Q0XOGVK34N5tADwpcWmkb3fFnbddzd9L6MnybbFzF_S238Bpr5vNa9doXRBwvJ85AdSn1AWX8R6qVpDbbaiGL2RCahuZYF9XECYm6anee-KTKvxh02KXkG2zniKVvweaMlcbQ', + email => 'email@example.org', + }, + ); + + $ua->content_contains('You have logged in.', 'We can login again'); + + $ua->get('/'); + + $ua->content_contains('Hello! 4242!', 'We are logged in.'); +} + done_testing;