FediTest: Test Run Session 68/84

feditest-run-20241229-191246

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 Session Summary

Status Count
Passed
11 (61.1%)
Failed
Interoperability
Compromised Degraded Unaffected Unknown Total
Conformance Must
1
1
2
0
4 (22.2%)
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
1 (5.6%)
1 (5.6%)
2 (11.1%)
0 (0.0%)
4 (22.2%)
Skipped
0
Errors
3 (16.7%)
Total
18

Constellation

client

ImpInProcessNodeDriver
Imp
0.6.dev20241229191155

server

FediverseSaasNodeDriver
Pleroma
?

Test Results

Test: webfinger.server.4_1__2_parameter_ordering_not_significant::parameter_ordering

Parameter ordering is not significant.

Started 2024:12:29-19:26:37.957870Z, ended 2024:12:29-19:26:40.088564Z (duration: 0:00:02.130694)

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:12:29-19:26:40.088665Z, ended 2024:12:29-19:26:40.719301Z (duration: 0:00:00.630636)

Passed

Test: webfinger.server.4_2__2_perform_query::normal_query

Perform a normal, simple query on an existing account.

Started 2024:12:29-19:26:40.719397Z, ended 2024:12:29-19:26:41.344425Z (duration: 0:00:00.625028)

AssertionFailure: AssertionFailure (Must, Problem): Accessed URI: "https://stereophonic.space/.well-known/webfinger?resource=acct%3Akarolat%40stereophonic.space":
0: Wrong HTTP content type.
 -> "application/json; charset=utf-8"
Expected: No exception
     but: was <[WrongContentTypeError(HttpRequestResponsePair(request=HttpRequest(parsed_uri=ParsedNonAcctUri(https://stereophonic.space/.well-known/webfinger?resource=acct%3Akarolat%40stereophonic.space), method='GET', accept_header=None, payload=None, content_type=None, when_started=datetime.datetime(2024, 12, 29, 19, 12, 46, 457527, tzinfo=datetime.timezone.utc)), final_request=HttpRequest(parsed_uri=ParsedNonAcctUri(https://stereophonic.space/.well-known/webfinger?resource=acct%3Akarolat%40stereophonic.space), method='GET', accept_header=None, payload=None, content_type=None, when_started=datetime.datetime(2024, 12, 29, 19, 12, 46, 457527, tzinfo=datetime.timezone.utc)), response=HttpResponse(http_status=200, response_headers=<MultiDict('server': 'nginx', 'date': 'Sun, 29 Dec 2024 19:26:41 GMT', 'content-type': 'application/json; charset=utf-8', 'content-length': '591', 'connection': 'keep-alive', 'vary': 'Accept-Encoding', 'access-control-allow-credentials': 'true', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'Link,X-RateLimit-Reset,X-RateLimit-Limit,X-RateLimit-Remaining,X-Request-Id,Idempotency-Key', 'cache-control': 'max-age=0, private, must-revalidate', 'content-security-policy': "upgrade-insecure-requests;script-src 'self' 'wasm-unsafe-eval';connect-src 'self' blob: https://stereophonic.space wss://stereophonic.space https://stereophonic.space;media-src 'self' https://stereophonic.space;img-src 'self' data: blob: https://stereophonic.space;default-src 'none';base-uri 'self';frame-ancestors 'none';style-src 'self' 'unsafe-inline';font-src 'self';manifest-src 'self';", 'expect-ct': 'enforce, max-age=2592000', 'permissions-policy': 'interest-cohort=()', 'referrer-policy': 'same-origin', 'strict-transport-security': 'max-age=31536000; includeSubDomains', 'x-content-type-options': 'nosniff', 'x-download-options': 'noopen', 'x-frame-options': 'DENY', 'x-permitted-cross-domain-policies': 'none', 'x-request-id': 'GBW8a3sOKwKgh8oCceEB', 'x-xss-protection': '1; mode=block')>, payload=b'{"aliases":["https://stereophonic.space/users/karolat"],"links":[{"href":"https://stereophonic.space/users/karolat","rel":"http://webfinger.net/rel/profile-page","type":"text/html"},{"href":"https://stereophonic.space/users/karolat","rel":"self","type":"application/activity+json"},{"href":"https://stereophonic.space/users/karolat","rel":"self","type":"application/ld+json; profile=\\"https://www.w3.org/ns/activitystreams\\""},{"rel":"http://ostatus.org/schema/1.0/subscribe","template":"https://stereophonic.space/ostatus_subscribe?acct={uri}"}],"subject":"acct:karolat@stereophonic.space"}', when_completed=datetime.datetime(2024, 12, 29, 19, 12, 46, 457820, tzinfo=datetime.timezone.utc))))]>
./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:12:29-19:26:41.347129Z, ended 2024:12:29-19:26:42.041994Z (duration: 0:00:00.694865)

Passed

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:12:29-19:26:42.042045Z, ended 2024:12:29-19:26:42.666344Z (duration: 0:00:00.624299)

Passed

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:12:29-19:26:42.666548Z, ended 2024:12:29-19:26:47.860511Z (duration: 0:00:05.193963)

ConnectTimeout: _ssl.c:989: The handshake operation timed out
./tests/webfinger/server/4_2__4_do_not_accept_malformed_resource_parameters.py:101
/usr/lib/python3.11/contextlib.py:158

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:12:29-19:26:47.869849Z, ended 2024:12:29-19:26:52.880770Z (duration: 0:00:05.010921)

ConnectTimeout: timed out
./tests/webfinger/server/4_2__4_do_not_accept_malformed_resource_parameters.py:134
/usr/lib/python3.11/contextlib.py:158

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:12:29-19:26:52.896627Z, ended 2024:12:29-19:26:53.610100Z (duration: 0:00:00.713473)

AssertionFailure: AssertionFailure (Must, Unaffected): Not HTTP status 4xx.
Accessed URI: "https://stereophonic.space/.well-known/webfinger?resource=karolat@stereophonic.space".
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>
./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:12:29-19:26:53.615964Z, ended 2024:12:29-19:26:54.241376Z (duration: 0:00:00.625412)

AssertionFailure: AssertionFailure (Must, Unaffected): Returns JRD content.
Accessed URI: "https://stereophonic.space/.well-known/webfinger?resource=karolat@stereophonic.space".
./tests/webfinger/server/4_2__4_do_not_accept_malformed_resource_parameters.py:70

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:12:29-19:26:54.248987Z, ended 2024:12:29-19:26:54.881385Z (duration: 0:00:00.632398)

Passed

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:12:29-19:26:54.881505Z, ended 2024:12:29-19:26:55.576786Z (duration: 0:00:00.695281)

AssertionFailure: AssertionFailure (Must, Degraded): Wrong content type.
Accessed URI: "https://stereophonic.space/.well-known/webfinger?resource=acct%3Akarolat%40stereophonic.space".
Expected: ('application/jrd+json' or a string starting with 'application/jrd+json;')
     but: was 'application/json; charset=utf-8'
./tests/webfinger/server/4_2__9_content_type.py:43

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:12:29-19:26:55.583283Z, ended 2024:12:29-19:26:56.908458Z (duration: 0:00:01.325175)

Passed

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:12:29-19:26:56.908685Z, ended 2024:12:29-19:26:58.959082Z (duration: 0:00:02.050397)

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:12:29-19:26:58.959235Z, ended 2024:12:29-19:27:00.851073Z (duration: 0:00:01.891838)

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:12:29-19:27:00.851227Z, ended 2024:12:29-19:27:02.128287Z (duration: 0:00:01.277060)

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:12:29-19:27:02.128422Z, ended 2024:12:29-19:27:02.488227Z (duration: 0:00:00.359805)

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:12:29-19:27:02.488348Z, ended 2024:12:29-19:27:03.120985Z (duration: 0:00:00.632637)

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:12:29-19:27:03.121503Z, ended 2024:12:29-19:27:08.138623Z (duration: 0:00:05.017120)

ConnectTimeout: timed out
./tests/webfinger/server/5_1_cors_header_required.py:17
/usr/lib/python3.11/contextlib.py:158

Test Run Session Metadata

Started 2024:12:29-19:26:37.957721Z
Ended 2024:12:29-19:27:08.152563Z (total: 0:00:30.194842)
Platform Linux-6.8.0-1-aarch64-ARCH-aarch64-with-glibc2.35
FediTest version 0.6.dev20241229191155