test(bruno): add system settings API tests and update list users test
System Settings Bruno Tests (new): - bruno/system/get-scan-settings.bru - bruno/system/update-scan-settings.bru - Test GET endpoint for retrieving system scan settings - Test PUT endpoint for updating system scan settings - Include admin authentication requirements - Document response structures List Users Bruno Test (update): - bruno/user/admin/List Users.bru - Add max_devices to response documentation - Add device_count to response documentation - Update feature descriptions These Bruno tests provide API contract verification for the new system settings endpoints and document the enhanced user list response.
This commit is contained in:
@@ -0,0 +1,30 @@
|
|||||||
|
meta {
|
||||||
|
name: Get System Scan Settings
|
||||||
|
type: http
|
||||||
|
seq: 1
|
||||||
|
}
|
||||||
|
|
||||||
|
get {
|
||||||
|
url: {{base_url}}/api/libraries/scan-settings
|
||||||
|
auth: inherit
|
||||||
|
}
|
||||||
|
|
||||||
|
headers {
|
||||||
|
Content-Type: application/json
|
||||||
|
}
|
||||||
|
|
||||||
|
script:post-response {
|
||||||
|
res.status.should.equal(200);
|
||||||
|
res.body.type.should.equal("application/json");
|
||||||
|
res.body.data.should.have.property('scan_frequency_minutes');
|
||||||
|
res.body.data.should.have.property('auto_scan_enabled');
|
||||||
|
}
|
||||||
|
|
||||||
|
docs {
|
||||||
|
## Get System Scan Settings
|
||||||
|
|
||||||
|
Retrieves current system-wide scan settings for all libraries.
|
||||||
|
|
||||||
|
**Authentication**: Admin token required
|
||||||
|
**Response**: Current scan frequency and auto-scan status
|
||||||
|
}
|
||||||
@@ -0,0 +1,36 @@
|
|||||||
|
meta {
|
||||||
|
name: Update System Scan Settings
|
||||||
|
type: http
|
||||||
|
seq: 2
|
||||||
|
}
|
||||||
|
|
||||||
|
put {
|
||||||
|
url: {{base_url}}/api/libraries/scan-settings
|
||||||
|
body: json
|
||||||
|
auth: inherit
|
||||||
|
}
|
||||||
|
|
||||||
|
headers {
|
||||||
|
Content-Type: application/json
|
||||||
|
}
|
||||||
|
|
||||||
|
body:json {
|
||||||
|
"scan_frequency_minutes": 30,
|
||||||
|
"auto_scan_enabled": true
|
||||||
|
}
|
||||||
|
|
||||||
|
script:post-response {
|
||||||
|
res.status.should.equal(200);
|
||||||
|
res.body.type.should.equal("application/json");
|
||||||
|
res.body.should.have.property('message');
|
||||||
|
}
|
||||||
|
|
||||||
|
docs {
|
||||||
|
## Update System Scan Settings
|
||||||
|
|
||||||
|
Updates system-wide scan settings that apply to all libraries.
|
||||||
|
|
||||||
|
**Authentication**: Admin token required
|
||||||
|
**Request**: Scan frequency (15-1440 minutes) and enabled status
|
||||||
|
**Response**: Success message
|
||||||
|
}
|
||||||
@@ -34,6 +34,8 @@ docs {
|
|||||||
- `last_name` (string): Last name (empty if not set)
|
- `last_name` (string): Last name (empty if not set)
|
||||||
- `role` (string): User role ("user" or "admin")
|
- `role` (string): User role ("user" or "admin")
|
||||||
- `theme` (string): Theme preference (empty if default)
|
- `theme` (string): Theme preference (empty if default)
|
||||||
|
- `max_devices` (integer): Maximum number of devices allowed
|
||||||
|
- `device_count` (integer): Current number of registered devices
|
||||||
- `created_at` (string): Creation timestamp (ISO 8601)
|
- `created_at` (string): Creation timestamp (ISO 8601)
|
||||||
- `updated_at` (string): Last update timestamp (ISO 8601)
|
- `updated_at` (string): Last update timestamp (ISO 8601)
|
||||||
|
|
||||||
@@ -45,6 +47,7 @@ docs {
|
|||||||
**Features:**
|
**Features:**
|
||||||
- Admin-only endpoint with complete user information
|
- Admin-only endpoint with complete user information
|
||||||
- Returns first_name, last_name, role, theme fields
|
- Returns first_name, last_name, role, theme fields
|
||||||
|
- Includes device limits and current device count
|
||||||
- Useful for user management interfaces
|
- Useful for user management interfaces
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -78,6 +81,8 @@ docs {
|
|||||||
- `last_name` (string): Last name (empty if not set)
|
- `last_name` (string): Last name (empty if not set)
|
||||||
- `role` (string): User role ("user" or "admin")
|
- `role` (string): User role ("user" or "admin")
|
||||||
- `theme` (string): Theme preference (empty if default)
|
- `theme` (string): Theme preference (empty if default)
|
||||||
|
- `max_devices` (integer): Maximum number of devices allowed
|
||||||
|
- `device_count` (integer): Current number of registered devices
|
||||||
- `created_at` (string): Creation timestamp (ISO 8601)
|
- `created_at` (string): Creation timestamp (ISO 8601)
|
||||||
- `updated_at` (string): Last update timestamp (ISO 8601)
|
- `updated_at` (string): Last update timestamp (ISO 8601)
|
||||||
|
|
||||||
@@ -89,5 +94,6 @@ docs {
|
|||||||
**Enhanced Features:**
|
**Enhanced Features:**
|
||||||
- Now admin-only endpoint (moved from public to protected admin group)
|
- Now admin-only endpoint (moved from public to protected admin group)
|
||||||
- Returns complete user profile information including names and role
|
- Returns complete user profile information including names and role
|
||||||
|
- Includes device limits and current device count for monitoring
|
||||||
- Useful for comprehensive admin user management
|
- Useful for comprehensive admin user management
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user