aboutsummaryrefslogtreecommitdiff
path: root/src/guff/api
diff options
context:
space:
mode:
Diffstat (limited to 'src/guff/api')
-rw-r--r--src/guff/api/methods.cr8
-rw-r--r--src/guff/api/test.cr63
2 files changed, 47 insertions, 24 deletions
diff --git a/src/guff/api/methods.cr b/src/guff/api/methods.cr
index 0247460..8df48d5 100644
--- a/src/guff/api/methods.cr
+++ b/src/guff/api/methods.cr
@@ -357,6 +357,14 @@ module Guff
"set_user": {
text: "Set mock user",
+
+ args: {
+ "user_id": {
+ text: "ID of user",
+ type: :int,
+ required: true,
+ },
+ },
},
}
}
diff --git a/src/guff/api/test.cr b/src/guff/api/test.cr
index 44b5e10..79d2d2e 100644
--- a/src/guff/api/test.cr
+++ b/src/guff/api/test.cr
@@ -17,41 +17,56 @@ module Guff
[{foo: "bar"}, {foo: "asdf"}].to_json
end
- MOCK_USERS = {
- "users": [{
- "id": "0",
- "name": "Guest",
- "active": true,
- }, {
- "id": "1",
- "name": "Admin",
- "active": false,
- }, {
- "id": "2",
- "name": "Test User 1",
- "active": false,
- }, {
- "id": "2",
- "name": "Test User 2",
- "active": false,
- }, {
- "id": "3",
- "name": "Test User<<<<>>>>>&&&&&&2",
- "active": false,
- }]
- }
+ MOCK_USERS = [{
+ "id": "0",
+ "name": "Guest",
+ "active": true,
+ }, {
+ "id": "1",
+ "name": "Admin",
+ "active": false,
+ }, {
+ "id": "2",
+ "name": "Test User 1",
+ "active": false,
+ }, {
+ "id": "3",
+ "name": "Test User 2",
+ "active": false,
+ }, {
+ "id": "4",
+ "name": "Test User<<<<>>>>>&&&&&&2",
+ "active": false,
+ }]
private def do_test_get_users(
context : HTTP::Server::Context,
args : Hash(String, String)
)
- MOCK_USERS
+ user_id = "0"
+ with_session(context) do |session|
+ user_id = session["user_id"]? || "0"
+ false
+ end
+
+ # build result
+ users = MOCK_USERS.map { |row|
+ row.merge({ "active": (row["id"] == user_id) })
+ }
+
+ # return result
+ { "users": users }
end
private def do_test_set_user(
context : HTTP::Server::Context,
args : Hash(String, String)
)
+ with_session(context) do |session|
+ session["user_id"] = args["user_id"]
+ true
+ end
+
{ ok: true }
end