Jordan Dominion
d36e2f59f8
Add broadcasting support
...
- Bump appropriate versions
- Add DreamDaemon request field and permission bit.
- Add generic failure error code.
- Remove `ErrorCode` comment since they are being using in #1666 .
- Fix bad interop return messages.
- Adjust DMAPI code to support broadcasts.
- Add tests.
Closes #138
2023-11-15 20:53:52 -05:00
tgstation-server
ac290fc6ff
Merge branch 'master' into dev
2023-11-14 07:56:23 +00:00
Jordan Dominion
1a0d76a730
Fix test race condition
2023-11-13 21:53:26 -05:00
Jordan Dominion
7ab9f35067
THAT'S NOT A FUCKING INSTANCE ID!!!
...
- Fix logic error in hub group mapping.
- Add regression unit test.
Fixes #1713
2023-11-13 18:16:41 -05:00
Jordan Dominion
9c769046bb
Added helpers for creating in-memory database contexts for testing
2023-11-13 18:14:44 -05:00
tgstation-server
52ffd3a3cb
Merge branch 'master' into dev
2023-11-12 22:25:00 +00:00
Jordan Dominion
581cbe4b18
Merge branch 'LessThreadPressure' into FixHubUserNames
2023-11-12 14:56:16 -05:00
Jordan Dominion
6b6d958536
Fix issue with StartedBy.Name not being set in jobs hub updates
2023-11-12 13:42:30 -05:00
Jordan Dominion
a585f9d2ab
Disable random disconnections before completing hub tests
2023-11-12 10:37:03 -05:00
Jordan Dominion
51d81aa067
Adjust JobsRequiredTest to use the hub
...
This greatly reduces thread pool pressure, very important for CI.
2023-11-12 10:33:48 -05:00
Jordan Dominion
de06107751
Fix signals test being a special snowflake
2023-11-12 08:58:13 -05:00
Jordan Dominion
30293c3e39
Fix repository fetching possibly not fetching all tags
2023-11-11 21:31:07 -05:00
Jordan Dominion
469b16d815
Fix test errors caused by DB truncation
2023-11-09 09:09:38 -05:00
Jordan Dominion
7c9a1a6a4f
Fix a cause of spurious CI failures
2023-11-06 21:48:23 -05:00
Jordan Dominion
ed8453f08e
Remove hub abort notifications
...
Because SignalR buffers messages, we can't guarantee these will be delivered before the connection is aborted.
We'll have to rely on the client not being pants-on-head.
2023-11-05 09:38:57 -05:00
Jordan Dominion
d3563394fb
OperationCanceledExceptions are not test errors
2023-11-05 09:01:20 -05:00
Jordan Dominion
2c82da46f6
Simplify logic flow in JobsHubTests
2023-11-05 09:00:44 -05:00
Jordan Dominion
cab8ce68f5
Simplify this job type check using new JobCodes
2023-11-05 08:40:18 -05:00
Jordan Dominion
ebd09d7e86
Add JobCodes to strongly type jobs
...
- Default `0` for legacy jobs.
- Standardize job creation prior to registration.
- Add `RightsHelper.TypeToRight()`.
2023-11-04 21:12:25 -04:00
Jordan Dominion
d85e2b8d36
Add SignalR
...
- Add one hub `/hubs/jobs`, strongly typed API included.
- Adjust request pipeline to support SignalR.
- Allow `Accept: text/event-stream` for SSE requests.
- Add client library support for hubs.
- Add integration tests.
- Add IPermissionSetNotifyee to support dynamic changes based on perms.
- Keep job state in `JobService` for pushing updates.
2023-11-04 19:22:48 -04:00
Jordan Dominion
d851df8276
GET / with an Authorization header should fail if it's not valid
2023-11-02 23:10:34 -04:00
Jordan Dominion
29579a351d
Fix JWT compliance issues.
...
- `nbf` and `exp` should be numbers, not strings.
- Parse JWT in `ApiHeaders` fully for errors.
- Use `iat` and increment `nbf` by one second if equal and may trigger the `LastPasswordUpdate` bug.
- Make client aware of this change and move the delay there.
- Deprecated `TokenResponse.ExpiresAt`.
2023-10-31 23:16:18 -04:00
Jordan Dominion
eaebe733bd
Improve HeadersException handling
...
Avoid recreating ApiHeaders in request pipeline where possible
2023-10-31 23:16:16 -04:00
Jordan Dominion
3901512693
The del world issue is caused by sleep_offline
...
Just do an infinite loop and ensure `sleep_offline` is off. It can't keep getting away with this.
Bump DMAPI version
2023-10-31 23:16:16 -04:00
Jordan Dominion
808f96b968
Clean up some using ordering
2023-10-31 23:16:15 -04:00
Jordan Dominion
1d0371f84a
Make TestServerService more analyzer friendly
2023-10-29 16:23:52 -04:00
Jordan Dominion
fd44b61a24
Authentication pipeline rewrite
...
If you're looking for the future CVE it probably came from here.
2023-10-29 16:23:01 -04:00
Jordan Dominion
4b39bde25d
Fix HardFailLogger/provider logging non-errors
2023-10-29 16:23:00 -04:00
Jordan Dominion
10728657df
Move custom controller results to new namespace
2023-10-29 16:22:59 -04:00
Jordan Dominion
9325e545fd
Simplify some Substring calls
2023-10-29 16:22:58 -04:00
Jordan Dominion
30f57d28da
Store TokenResponse in ApiHeaders
...
- Decode it from JWT if necessary.
2023-10-29 16:22:51 -04:00
Jordan Dominion
9e2bf3f161
Merge branch 'dev' into SignalR
2023-10-29 14:32:09 -04:00
tgstation-server
ddda3c8ca9
Merge branch 'master' into dev
2023-10-25 14:14:46 +00:00
Jordan Dominion
14ed93c12a
Make every LongRunning DMAPI test compile generate a unique .rsc
2023-10-25 08:40:56 -04:00
Jordan Dominion
13128abe73
Fix overeager required process killing
2023-10-25 02:54:50 -04:00
Jordan Dominion
b21f3a880f
Use a higher priority thread here to ensure the dump test runs successfully
2023-10-24 04:03:56 -04:00
Jordan Dominion
d2f6dfde8b
Patch DMAPI to work around del(world) behavior
...
It doesn't actually stop the world until the end of the tick.
2023-10-24 02:43:09 -04:00
Jordan Dominion
9b405784cc
Fix a race condition in compat tests
2023-10-23 02:03:36 -04:00
Jordan Dominion
20428736ec
Merge branch 'master' into dev
2023-10-22 19:59:03 -04:00
Jordan Dominion
720c42c522
Test that GameStaticFiles work in live tests
2023-10-22 13:59:54 -04:00
Jordan Dominion
812d6a619c
Remove the interactive test
...
It's annoying to monitor
2023-10-22 10:01:03 -04:00
Jordan Dominion
b22368086b
Additional test logging
2023-10-21 20:41:09 -04:00
Jordan Dominion
71f5c739d8
Fix tests using BasicWatchdog failing
2023-10-21 20:41:08 -04:00
Jordan Dominion
53eafffbd0
Add world.TgsVisibility() to DMAPI
2023-10-21 19:06:52 -04:00
Jordan Dominion
abdf8b6bfd
Fix build
2023-10-21 19:06:41 -04:00
Jordan Dominion
5bb655e3f6
Add test for hard links
2023-10-21 18:55:36 -04:00
Jordan Dominion
fd6de0fee2
Rename *SymlinkFactory to *FilesystemLinkFactory to better reflect new behavior
2023-10-21 18:42:19 -04:00
Jordan Dominion
afceee3a96
I was unsure about DefaultIOManager.DeleteDirectory, so here's another unit test.
2023-10-21 18:26:53 -04:00
Jordan Dominion
44729820ed
Remove unused variable and fix test buffer size
2023-10-21 16:20:40 -04:00
Jordan Dominion
571c555360
Finally find a way to test if Linux is being shitty to us about links
2023-10-21 12:32:35 -04:00