Feditest Session Report: Session 70

feditest-run-20241024-220237 [Summary]

This FediTest report requires a desktop or laptop-class monitor.

It cannot be viewed on a mobile device with a small screen.

Sorry about that. But then, you weren't going to use a phone to fix reported bugs, either, right?

Test Run Summary

Status Count
Passed
7 (38.9%)
Failed
Interoperability
Compromised Degraded Unaffected Unknown Total
Conformance Must
4
1
5
1
11 (61.1%)
Should
0
0
0
0
0 (0.0%)
Implied
0
0
0
0
0 (0.0%)
Unspecified
0
0
0
0
0 (0.0%)
Total
4 (22.2%)
1 (5.6%)
5 (27.8%)
1 (5.6%)
11 (61.1%)
Skipped
0
Errors
0
Total
18

Constellation

client

ImpInProcessNodeDriver
Imp
0.4

server

FediverseSaasNodeDriver
p3k
?

Test Results

Test: webfinger.server.4_1__2_parameter_ordering_not_significant::parameter_ordering

Parameter ordering is not significant.

Started 2024:10:24-22:17:27.695133Z, ended 2024:10:24-22:17:28.271858Z (duration: 0:00:00.576725)

Passed

Test: webfinger.server.4_2__14_must_only_redirect_to_https::must_only_redirect_to_https

Test that if the server redirected, the final URL is an HTTPS URL.

Started 2024:10:24-22:17:28.271998Z, ended 2024:10:24-22:17:28.418250Z (duration: 0:00:00.146252)

Passed

Test: webfinger.server.4_2__2_perform_query::normal_query

Perform a normal, simple query on an existing account.

Started 2024:10:24-22:17:28.418331Z, ended 2024:10:24-22:17:28.562524Z (duration: 0:00:00.144193)

AssertionFailure: AssertionFailure (Must, Problem): Accessed URI: "https://aaronparecki.com/.well-known/webfinger?resource=acct%3Aaaronpk%40aaronparecki.com":
0: Wrong HTTP content type.
 -> "application/json"
Expected: an empty collection
     but: was <[WrongContentTypeError(HttpRequestResponsePair(request=HttpRequest(parsed_uri=ParsedNonAcctUri(https://aaronparecki.com/.well-known/webfinger?resource=acct%3Aaaronpk%40aaronparecki.com), method='GET', accept_header=None, payload=None, content_type=None, when_started=datetime.datetime(2024, 10, 24, 22, 2, 37, 617816, tzinfo=datetime.timezone.utc)), final_request=HttpRequest(parsed_uri=ParsedNonAcctUri(https://aaronparecki.com/.well-known/webfinger?resource=acct%3Aaaronpk%40aaronparecki.com), method='GET', accept_header=None, payload=None, content_type=None, when_started=datetime.datetime(2024, 10, 24, 22, 2, 37, 617816, tzinfo=datetime.timezone.utc)), response=HttpResponse(http_status=200, response_headers=<MultiDict('server': 'nginx/1.14.0', 'content-type': 'application/json', 'transfer-encoding': 'chunked', 'connection': 'keep-alive', 'cache-control': 'no-cache', 'link': '<https://switchboard.p3k.io/>; rel="hub", <https://aaronparecki.com/auth/token>; rel="token_endpoint", <https://aaronparecki.com/.well-known/webfinger>; rel="self"', 'access-control-allow-headers': 'Authorization,Content-Type,Accept,Referer,Origin,User-Agent,Cache-Control,Pragma', 'date': 'Thu, 24 Oct 2024 22:17:28 GMT', 'strict-transport-security': 'max-age=2592000', 'x-no-cache': '0', 'x-cache': 'HIT')>, payload=b'{"subject":"acct:aaronpk@aaronparecki.com","aliases":["https:\\/\\/aaronparecki.com\\/","https:\\/\\/aaronparecki.com\\/aaronpk"],"links":[{"rel":"self","type":"application\\/activity+json","href":"https:\\/\\/aaronparecki.com\\/aaronpk"},{"rel":"http:\\/\\/ostatus.org\\/schema\\/1.0\\/subscribe","template":"https:\\/\\/aaronparecki.com\\/settings\\/follow?acct={uri}"},{"rel":"http:\\/\\/openid.net\\/specs\\/connect\\/1.0\\/issuer","href":"https:\\/\\/aaronparecki.com\\/"}]}', when_completed=datetime.datetime(2024, 10, 24, 22, 2, 37, 618161, tzinfo=datetime.timezone.utc))))]>
../feditest-tests-fediverse/tests/webfinger/server/4_2__2_perform_query.py:20

Test: webfinger.server.4_2__3_requires_resource_uri::requires_resource_uri_http_status

Do not accept requests with missing resource parameter: HTTP status.

Started 2024:10:24-22:17:28.566458Z, ended 2024:10:24-22:17:28.710161Z (duration: 0:00:00.143703)

AssertionFailure: AssertionFailure (Must, Unaffected): Not HTTP status 400.
Accessed URI: "https://aaronparecki.com/.well-known/webfinger".
Expected: <400>
     but: was <200>
../feditest-tests-fediverse/tests/webfinger/server/4_2__3_requires_resource_uri.py:37

Test: webfinger.server.4_2__3_requires_resource_uri::requires_resource_uri_jrd

Do not accept requests with missing resource parameter: JRD content.

Started 2024:10:24-22:17:28.716658Z, ended 2024:10:24-22:17:28.854922Z (duration: 0:00:00.138264)

AssertionFailure: AssertionFailure (Must, Unknown): Returns JRD content.
Accessed URI: "https://aaronparecki.com/.well-known/webfinger".
../feditest-tests-fediverse/tests/webfinger/server/4_2__3_requires_resource_uri.py:79

Test: webfinger.server.4_2__4_do_not_accept_malformed_resource_parameters::double_equals_http_status

Do not accept malformed resource parameters. Test HTTP status for inserting an extra = character.

Started 2024:10:24-22:17:28.856277Z, ended 2024:10:24-22:17:29.000067Z (duration: 0:00:00.143790)

AssertionFailure: AssertionFailure (Must, Unaffected): Not HTTP status 4xx.
Accessed URI: "https://aaronparecki.com/.well-known/webfinger?resource==acct%3Aaaronpk%40aaronparecki.com".
Expected: (a value greater than or equal to <400> and a value less than <500>)
     but: a value greater than or equal to <400> was <200>
../feditest-tests-fediverse/tests/webfinger/server/4_2__4_do_not_accept_malformed_resource_parameters.py:106

Test: webfinger.server.4_2__4_do_not_accept_malformed_resource_parameters::double_equals_jrd

Do not accept malformed resource parameters. Test JRD content for inserting an extra = character.

Started 2024:10:24-22:17:29.001701Z, ended 2024:10:24-22:17:30.005606Z (duration: 0:00:01.003905)

AssertionFailure: AssertionFailure (Must, Unaffected): Returns JRD content.
Accessed URI: "https://aaronparecki.com/.well-known/webfinger?resource==acct%3Aaaronpk%40aaronparecki.com".
../feditest-tests-fediverse/tests/webfinger/server/4_2__4_do_not_accept_malformed_resource_parameters.py:144

Test: webfinger.server.4_2__4_do_not_accept_malformed_resource_parameters::requires_valid_resource_uri_http_status

Do not accept malformed resource parameters. Test HTTP status for missing acct: scheme.

Started 2024:10:24-22:17:30.009789Z, ended 2024:10:24-22:17:32.855388Z (duration: 0:00:02.845599)

AssertionFailure: AssertionFailure (Must, Unaffected): Not HTTP status 4xx.
Accessed URI: "https://aaronparecki.com/.well-known/webfinger?resource=aaronpk@aaronparecki.com".
Expected: (a value greater than or equal to <400> and a value less than <500>)
     but: a value greater than or equal to <400> was <200>
../feditest-tests-fediverse/tests/webfinger/server/4_2__4_do_not_accept_malformed_resource_parameters.py:32

Test: webfinger.server.4_2__4_do_not_accept_malformed_resource_parameters::requires_valid_resource_uri_jrd

Do not accept malformed resource parameters. Test JRD content for missing acct: scheme.

Started 2024:10:24-22:17:32.858523Z, ended 2024:10:24-22:17:34.186282Z (duration: 0:00:01.327759)

AssertionFailure: AssertionFailure (Must, Unaffected): Returns JRD content.
Accessed URI: "https://aaronparecki.com/.well-known/webfinger?resource=aaronpk@aaronparecki.com".
../feditest-tests-fediverse/tests/webfinger/server/4_2__4_do_not_accept_malformed_resource_parameters.py:71

Test: webfinger.server.4_2__5_status_404_for_nonexisting_resources::status_404_for_nonexisting_resources

The server responds with 404 when the resource parameter identifies a non-existent resource.

Started 2024:10:24-22:17:34.191247Z, ended 2024:10:24-22:17:35.689733Z (duration: 0:00:01.498486)

AssertionFailure: AssertionFailure (Must, Problem): HTTP status 200.
Accessed URI: "https://aaronparecki.com/.well-known/webfinger?resource=acct%3Adoes-not-exist%40aaronparecki.com".
Expected: (a value greater than or equal to <300> or a value less than <200>)
     but: was <200>
../feditest-tests-fediverse/tests/webfinger/server/4_2__5_status_404_for_nonexisting_resources.py:26

Test: webfinger.server.4_2__9_content_type::returns_jrd_in_response_to_https

Test that a query over HTTPS produces a JRD.

Started 2024:10:24-22:17:35.697375Z, ended 2024:10:24-22:17:37.163112Z (duration: 0:00:01.465737)

AssertionFailure: AssertionFailure (Must, Degraded): Wrong content type.
Accessed URI: "https://aaronparecki.com/.well-known/webfinger?resource=acct%3Aaaronpk%40aaronparecki.com".
Expected: ('application/jrd+json' or a string starting with 'application/jrd+json;')
     but: was 'application/json'
../feditest-tests-fediverse/tests/webfinger/server/4_2__9_content_type.py:44

Test: webfinger.server.4_5__1_any_uri_scheme_for_resource_identifiers::any_uri_scheme_for_resource_identifiers

The server must accept resource identifiers provided in the query that use any scheme.

Started 2024:10:24-22:17:37.169096Z, ended 2024:10:24-22:17:38.667967Z (duration: 0:00:01.498871)

AssertionFailure: AssertionFailure (Must, Problem): HTTP status 200.
Accessed URI: "https://aaronparecki.com/.well-known/webfinger?resource=mailto%3Aabc%40def.com".
Expected: (a value greater than or equal to <300> or a value less than <200>)
     but: was <200>
../feditest-tests-fediverse/tests/webfinger/server/4_5__1_any_uri_scheme_for_resource_identifiers.py:29

Test: webfinger.server.4__1_accepts_all_link_rels_in_query::accepts_combined_link_rels_in_query

A server must accept all link rels in the query, even if it does not understand them. Tests several known an unknown link rels at a time.

Started 2024:10:24-22:17:38.674250Z, ended 2024:10:24-22:17:41.502549Z (duration: 0:00:02.828299)

Passed

Test: webfinger.server.4__1_accepts_all_link_rels_in_query::accepts_known_link_rels_in_query

A server must accept all link rels in the query, even if it does not understand them. Tests one known link rel at a time.

Started 2024:10:24-22:17:41.502640Z, ended 2024:10:24-22:17:41.904302Z (duration: 0:00:00.401662)

Passed

Test: webfinger.server.4__1_accepts_all_link_rels_in_query::accepts_unknown_link_rels_in_query

A server must accept all link rels in the query, even if it does not understand them. Tests one unknown link rels at a time.

Started 2024:10:24-22:17:41.904400Z, ended 2024:10:24-22:17:42.146236Z (duration: 0:00:00.241836)

Passed

Test: webfinger.server.4__3_only_returns_jrd_in_response_to_https_requests::does_not_return_jrd_in_response_to_http

Test that a query over HTTP does not produce a JRD.

Started 2024:10:24-22:17:42.146252Z, ended 2024:10:24-22:17:42.205557Z (duration: 0:00:00.059305)

Passed

Test: webfinger.server.4__3_only_returns_jrd_in_response_to_https_requests::uses_valid_https_certificate

Test that the server uses a valid HTTPS certificate.

Started 2024:10:24-22:17:42.205580Z, ended 2024:10:24-22:17:42.329531Z (duration: 0:00:00.123951)

Passed

Test: webfinger.server.5_1_cors_header_required::cors_header_required

The server must provide a valid value for HTTP Header "Access-Control-Allow-Origin".

Started 2024:10:24-22:17:42.329554Z, ended 2024:10:24-22:17:42.444034Z (duration: 0:00:00.114480)

AssertionFailure: AssertionFailure (Must, Problem): Missing CORS header.
Accessed URI: "https://aaronparecki.com/.well-known/webfinger?resource=acct%3Aaaronpk%40aaronparecki.com".
Not present: "access-control-allow-origin".
../feditest-tests-fediverse/tests/webfinger/server/5_1_cors_header_required.py:21

Test Run Metadata

Started 2024:10:24-22:17:27.694816Z
Ended 2024:10:24-22:17:42.448579Z (total: 0:00:14.753763)
Platform Linux-6.11.3-1-aarch64-ARCH-aarch64-with-glibc2.35
Feditest version 0.4