Skip to content

Commit

Permalink
[FedCM] Add test for auto reauthentication approved client failure
Browse files Browse the repository at this point in the history
Adds a test where there is a returning user, but auto reauthentication
fails because approved_clients is present but does not contain the
client ID.

Bug: 1510583
Change-Id: I9801424ee343cc55ad22b96815478fdc90ffe01f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5110442
Commit-Queue: Nicolás Peña <[email protected]>
Commit-Queue: Yi Gu <[email protected]>
Auto-Submit: Nicolás Peña <[email protected]>
Reviewed-by: Yi Gu <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1236003}
  • Loading branch information
npm1 authored and chromium-wpt-export-bot committed Dec 11, 2023
1 parent 80ec89e commit da76d40
Showing 1 changed file with 32 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
<!DOCTYPE html>
<title>Federated Credential Management API auto reauthentication without approved client.</title>
<link rel="help" href="https://fedidcg.github.io/FedCM">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-vendor.js"></script>

<script type="module">
import {request_options_with_mediation_optional,
fedcm_test,
mark_signed_in,
select_manifest,
fedcm_get_and_select_first_account} from './support/fedcm-helper.sub.js';

fedcm_test(async t => {
await mark_signed_in();
let test_options = request_options_with_mediation_optional(
"manifest_with_single_account.json");
test_options.identity.providers[0].clientId = 'nomatch';
await select_manifest(t, test_options);

// Signs in john_doe so that they will be a returning user
let cred = await fedcm_get_and_select_first_account(t, test_options);
assert_equals(cred.token, "account_id=john_doe");

test_options.mediation = 'silent';
cred = navigator.credentials.get(test_options);
return promise_rejects_dom(t, 'NetworkError', cred);
}, "Test that if the clientId is missing from approved_clients then auto\
reauthentication cannot occur.");
</script>

0 comments on commit da76d40

Please sign in to comment.