Skip to content

Commit

Permalink
Expect all URL escapes to use uppercase hex
Browse files Browse the repository at this point in the history
  • Loading branch information
gammazero committed Jan 3, 2025
1 parent 7b383e6 commit e73cc20
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 3 deletions.
4 changes: 2 additions & 2 deletions docs/test-dsl-syntax.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ for non-GO developers that want to read or contribute tests.

golang's default string formating package is similar to C. Format strings might look like `"this is a %s"` where `%s` is a verb that will be replaced at runtime.

These verbs collides with URL-escaping a lot, strings like `/ipfs/Qm.../%c4%85/%c4%99` might trigger weird errors. We implemented a minimal templating library that is used almost everywhere in the test.
These verbs collides with URL-escaping a lot, strings like `/ipfs/Qm.../%C4%85/%C4%99` might trigger weird errors. We implemented a minimal templating library that is used almost everywhere in the test.

It uses `{{name}}` as a replacement for `%s`. Other verbs are not supported.

Expand All @@ -28,7 +28,7 @@ Fmt(`Etag: W/"{{etag-value}}"`, "weak-key") // => "ETag: W/\"weak-key\""
It is required to always provide a meaningful `{{name}}`:

```golang
Fmt(`/ipfs/{{cid}}/%c4%85/%c4%99`, fixture.myCID) // => "/ipfs/Qm..../%c4%85/%c4%99"
Fmt(`/ipfs/{{cid}}/%C4%85/%C4%99`, fixture.myCID) // => "/ipfs/Qm..../%C4%85/%C4%99"
```

Values are replaced in the order they are defined, and you may reuse named values
Expand Down
2 changes: 1 addition & 1 deletion tests/dnslink_gateway_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ func TestDNSLinkGatewayUnixFSDirectoryListing(t *testing.T) {
Response: Expect().
Status(301).
Headers(
Header("Location").Equals(`/%c4%85/%c4%99/`),
Header("Location").Equals(`/%C4%85/%C4%99/`),
),
},
{
Expand Down

0 comments on commit e73cc20

Please sign in to comment.