Skip to content

Commit 565074d

Browse files
committed
fix(tests): Fix and enable JWTRolesClaimTest
Jessica discovered [1] that the “JWTRolesClaimTest” test suite was not activated during testing and was therefore not called. In addition, the tests failed because the used JWT test tokens had an expiration date (Sat Aug 16 2025 01:10:10 GMT+0200). 1. For all used JWT test tokens, the expiration date was increased to Thu Dec 31 2099 22:59:59 GMT+0000. 2. The JWT token signatures were adjusted. 3. Tests were activated in the Elixir suite. [1] #5822 (comment)
1 parent 21c111b commit 565074d

2 files changed

Lines changed: 24 additions & 12 deletions

File tree

test/elixir/test/config/suite.elixir

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -836,5 +836,12 @@
836836
"no index without fallback",
837837
"uses all docs when fields do not match selector",
838838
"uses all docs when selector doesnt require fields to exist"
839-
]
839+
],
840+
"JwtRolesClaimTest": [
841+
"case: roles_claim_name (defined) / roles_claim_path (defined)",
842+
"case: roles_claim_name (defined) / roles_claim_path (undefined)",
843+
"case: roles_claim_name (undefined) / roles_claim_path (defined)",
844+
"case: roles_claim_name (undefined) / roles_claim_path (undefined)",
845+
"case: roles_claim_path with bad input"
846+
]
840847
}

test/elixir/test/jwt_roles_claim_test.exs

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,15 @@ defmodule JwtRolesClaimTest do
1414
%{
1515
:section => "jwt_keys",
1616
:key => "hmac:myjwttestkey",
17+
# "a-string-secret-at-least-256-bits-long"
1718
:value => ~w(
18-
NTNv7j0TuYARvmNMmWXo6fKvM4o6nv/aUi9ryX38ZH+L1bkrnD1ObOQ8JAUmHCBq7
19-
Iy7otZcyAagBLHVKvvYaIpmMuxmARQ97jUVG16Jkpkp1wXOPsrF9zwew6TpczyH
20-
kHgX5EuLg2MeBuiT/qJACs1J0apruOOJCg/gOtkjB4c=
19+
YS1zdHJpbmctc2VjcmV0LWF0LWxlYXN0LTI1Ni1iaXRzLWxvbmc=
2120
) |> Enum.join()
2221
},
2322
%{
2423
:section => "jwt_keys",
2524
:key => "hmac:myjwttestkey2",
25+
# "Undoubtedly-Engaging-Roadway-029"
2626
:value => ~w(
2727
VW5kb3VidGVkbHktRW5nYWdpbmctUm9hZHdheS0wMjk=
2828
) |> Enum.join()
@@ -133,17 +133,19 @@ defmodule JwtRolesClaimTest do
133133
end
134134

135135
def test_roles(roles) do
136+
# myjwttestkey
137+
# Token expires after Thu Dec 31 2099 22:59:59 GMT+0000
136138
token = ~w(
137139
eyJ0eXAiOiJKV1QiLCJraWQiOiJteWp3dHRlc3RrZXkiLCJhbGciOiJIUzI1NiJ9.
138140
eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRyd
139-
WUsImlhdCI6MTY1NTI5NTgxMCwiZXhwIjoxNzU1Mjk5NDEwLCJteSI6eyJuZXN0ZW
141+
WUsImlhdCI6MTY1NTI5NTgxMCwiZXhwIjoxOTI0OTg4Mzk5LCJteSI6eyJuZXN0ZW
140142
QiOnsiX2NvdWNoZGIucm9sZXMiOlsibXlfbmVzdGVkX2NvdWNoZGIucm9sZXNfMSI
141143
sIm15X25lc3RlZF9jb3VjaGRiLnJvbGVzXzEiXX19LCJfY291Y2hkYi5yb2xlcyI6
142144
WyJfY291Y2hkYi5yb2xlc18xIiwiX2NvdWNoZGIucm9sZXNfMiJdLCJteS5fY291Y
143145
2hkYi5yb2xlcyI6WyJteS5fY291Y2hkYi5yb2xlc18xIiwibXkuX2NvdWNoZGIucm
144146
9sZXNfMiJdLCJmb28iOnsiYmFyLnpvbmsiOnsiYmF6LmJ1dSI6eyJiYWEiOnsiYmF
145147
hLmJlZSI6eyJyb2xlcyI6WyJteV9uZXN0ZWRfcm9sZV8xIiwibXlfbmVzdGVkX3Jv
146-
bGVfMiJdfX19fX19.F6kQK-FK0z1kP01bTyw-moXfy2klWfubgF7x7Xitd-0) |> Enum.join()
148+
bGVfMiJdfX19fX19._3BgqHB8ETk4QPOn_LMgUkjgsjgqDCf7AUlV3XRmP6A) |> Enum.join()
147149

148150
resp =
149151
Couch.get("/_session",
@@ -156,19 +158,20 @@ defmodule JwtRolesClaimTest do
156158
end
157159

158160
def test_roles_as_string(roles) do
159-
# Different token
161+
# myjwttestkey2
162+
# Token expires after Thu Dec 31 2099 22:59:59 GMT+0000
160163
token = ~w(
161164
eyJ0eXAiOiJKV1QiLCJraWQiOiJteWp3dHRlc3RrZXkyIiwiYWxnIjoiSFMyNTYifQ.
162165
eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWU
163-
sImlhdCI6MTY1NTI5NTgxMCwiZXhwIjoxNzU1Mjk5NDEwLCJteSI6eyJuZXN0ZWQiOn
166+
sImlhdCI6MTY1NTI5NTgxMCwiZXhwIjo0MTAyNDQxMTk5LCJteSI6eyJuZXN0ZWQiOn
164167
siX2NvdWNoZGIucm9sZXMiOiJteV9uZXN0ZWRfY291Y2hkYl9zdHJpbmcucm9sZXNfM
165168
SwgbXlfbmVzdGVkX2NvdWNoZGJfc3RyaW5nLnJvbGVzXzEifX0sIl9jb3VjaGRiLnJv
166169
bGVzIjoiX2NvdWNoZGJfc3RyaW5nLnJvbGVzXzEsX2NvdWNoZGJfc3RyaW5nLnJvbGV
167170
zXzIiLCJteS5fY291Y2hkYi5yb2xlcyI6Im15Ll9jb3VjaGRiX3N0cmluZy5yb2xlc1
168171
8xLCBteS5fY291Y2hkYl9zdHJpbmcucm9sZXNfMiIsImZvbyI6eyJiYXIuem9uayI6e
169172
yJiYXouYnV1Ijp7ImJhYSI6eyJiYWEuYmVlIjp7InJvbGVzIjoibXlfbmVzdGVkX3N0
170-
cmluZ19yb2xlXzEsIG15X25lc3RlZF9zdHJpbmdfcm9sZV8yIn19fX19fQ.rzaLmcA2
171-
0R291XuGYNNTM9ypGL3UD_GlVp3DmBtWrZI
173+
cmluZ19yb2xlXzEsIG15X25lc3RlZF9zdHJpbmdfcm9sZV8yIn19fX19fQ.nUQYe_Fy
174+
1LBY0F4jbfLwj47p2468v0lrCzHXMWpkfA4
172175
) |> Enum.join()
173176

174177
resp =
@@ -182,17 +185,19 @@ defmodule JwtRolesClaimTest do
182185
end
183186

184187
def test_roles_with_bad_input() do
188+
# myjwttestkey
189+
# Token expires after Thu Dec 31 2099 22:59:59 GMT+0000
185190
token = ~w(
186191
eyJ0eXAiOiJKV1QiLCJraWQiOiJteWp3dHRlc3RrZXkiLCJhbGciOiJIUzI1NiJ9.
187192
eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRyd
188-
WUsImlhdCI6MTY1NTI5NTgxMCwiZXhwIjoxNzU1Mjk5NDEwLCJteSI6eyJuZXN0ZW
193+
WUsImlhdCI6MTY1NTI5NTgxMCwiZXhwIjoxOTI0OTg4Mzk5LCJteSI6eyJuZXN0ZW
189194
QiOnsiX2NvdWNoZGIucm9sZXMiOlsibXlfbmVzdGVkX2NvdWNoZGIucm9sZXNfMSI
190195
sIm15X25lc3RlZF9jb3VjaGRiLnJvbGVzXzEiXX19LCJfY291Y2hkYi5yb2xlcyI6
191196
WyJfY291Y2hkYi5yb2xlc18xIiwiX2NvdWNoZGIucm9sZXNfMiJdLCJteS5fY291Y
192197
2hkYi5yb2xlcyI6WyJteS5fY291Y2hkYi5yb2xlc18xIiwibXkuX2NvdWNoZGIucm
193198
9sZXNfMiJdLCJmb28iOnsiYmFyLnpvbmsiOnsiYmF6LmJ1dSI6eyJiYWEiOnsiYmF
194199
hLmJlZSI6eyJyb2xlcyI6WyJteV9uZXN0ZWRfcm9sZV8xIiwibXlfbmVzdGVkX3Jv
195-
bGVfMiJdfX19fX19.F6kQK-FK0z1kP01bTyw-moXfy2klWfubgF7x7Xitd-0) |> Enum.join()
200+
bGVfMiJdfX19fX19._3BgqHB8ETk4QPOn_LMgUkjgsjgqDCf7AUlV3XRmP6A) |> Enum.join()
196201

197202
resp =
198203
Couch.get("/_session",

0 commit comments

Comments
 (0)