22 return testRunner(
23 { val: ["karfau", "SignatureCheck"] },
24 async function should_pass_test_values_from_GitHub_docs() {
25 const { secret, signature, payload } = GitHubDocsValues;
26 const { verify } = SignatureCheck(throwOnInvalid);
27 assert(await verify({ payload, signature }, secret));
28 },
29 async function should_pass_test_values_from_GitHub_docs_with_irrelevant_secrets_in_fallback() {
30 const { secret, signature, payload } = GitHubDocsValues;
31 const { verify } = SignatureCheck(throwOnInvalid);
32 assert(await verify({ payload, signature }, secret, "not a secret"));
33 },
34 async function should_pass_test_values_from_GitHub_docs_with_correct_secret_in_last_fallback() {
35 const { secret, signature, payload } = GitHubDocsValues;
36 const { verify } = SignatureCheck(throwOnInvalid);
45 );
46 },
47 async function should_pass_test_values_from_GitHub_docs_uppercase_signature() {
48 const { secret, signature, payload } = GitHubDocsValues;
49 const { verify } = SignatureCheck(throwOnInvalid);
52 );
53 },
54 async function should_pass_test_values_from_GitHub_docs_with_correct_sha256_prefix() {
55 const { secret, signature, payload } = GitHubDocsValues;
56 const { verify } = SignatureCheck(throwOnInvalid);
59 );
60 },
61 async function should_pass_test_values_from_GitHub_docs_with_ignored_sha_prefix_and_correct_value() {
62 const { secret, signature, payload } = GitHubDocsValues;
63 const { verify } = SignatureCheck(throwOnInvalid);
69 );
70 },
71 async function should_report_invalid_reason_sha1_signature() {
72 const { secret, sha1Signature, payload } = GitHubDocsValues;
73 const onInvalidSpy = spy(() => {});
79 });
80 },
81 async function should_report_invalid_when_passing_no_parameters() {
82 const onInvalidSpy = spy(() => {});
83 const { verify } = SignatureCheck(onInvalidSpy);
88 });
89 },
90 async function should_report_invalid_reason_falsy_secret() {
91 const { secret, signature, payload } = GitHubDocsValues;
92 const onInvalidSpy = spy(() => {});
98 });
99 },
100 async function should_report_invalid_reason_falsy_fallback_secrets() {
101 const { secret, signature, payload } = GitHubDocsValues;
102 const onInvalidSpy = spy(() => {});
110 });
111 },
112 async function should_report_invalid_reason_falsy_signature() {
113 const { secret, signature, payload } = GitHubDocsValues;
114 const onInvalidSpy = spy(() => {});
120 });
121 },
122 async function should_report_invalid_reason_falsy_payload() {
123 const { secret, signature, payload } = GitHubDocsValues;
124 const onInvalidSpy = spy(() => {});
130 });
131 },
132 async function should_report_invalid_reason_signature_no_pairs() {
133 const { secret, signature, payload } = GitHubDocsValues;
134 const onInvalidSpy = spy(() => {});
144 });
145 },
146 async function should_report_invalid_reason_signature_invalid_chars() {
147 const { secret, signature, payload } = GitHubDocsValues;
148 const onInvalidSpy = spy(() => {});