Commit Graph

49 Commits

Author SHA1 Message Date
9d07749959 Improve implementation of TestSpectatorClient
There was a lot of weirdness here, such as storing the playing users,
clearing the playing users from test scenes (!!), and storing the users
being wathed.
This was all a thing because the previous implementation overrode the
base method implementations, which is no longer a thing.
2021-05-20 17:41:46 +09:00
6beeb7f7c4 Rename SpectatorStreamingClient -> SpectatorClient 2021-05-20 15:55:07 +09:00
21fc0ba43b Combine test spectator streaming client implementations 2021-05-12 13:05:02 +09:00
120fb8974d Combine more instances of test player IDs 2021-04-26 17:22:16 +09:00
46d2181d42 Remove now unnecessary (duplicating) test 2021-04-16 18:21:56 +09:00
377e5ce6b3 Fix test incorrect sending state too often 2021-04-16 18:21:35 +09:00
ca74f413cd Change to explicit method instead 2021-04-16 17:31:02 +09:00
5652490d61 Fix OnUserBeganPlaying not being invoked if already watching 2021-04-16 14:11:55 +09:00
359fae895f Rename property 2021-04-12 18:50:25 +09:00
e19e8ff2a3 Rewrite FramedReplayInputHandler for robustness
This commit changes the semantics of `CurrentFrame` and `NextFrame` of the class.
The ordering of `NextFrame.Time` and `CurrentFrame.Time` was dependent on the current direction.
Now, it should always satisfy `CurrentFrame.Time <= CurrentTime <= NextFrame.Time` except at the start/end.
This change, however, doesn't break existing deriving classes if the template code pattern usage of interpolation is used.
The deriving class code can be simplified due to the elimination of nullable types. I didn't include those changes in this commit.

I removed `StreamingFramedReplayInputHandlerTest` for now, as it is almost-duplicate of `FramedReplayInputHandlerTest`. I'll include more tests in later commits.

This commit fixes #6150.
2021-04-12 16:18:11 +09:00
c3c7c18549 Fix tests 2021-04-01 23:48:26 +09:00
9e95441aa6 Rename Spectator -> SoloSpectator 2021-04-01 22:08:52 +09:00
9ad38ab20e Move HubClientConnector retrieval to IAPIProvider 2021-02-15 16:43:56 +09:00
d3c1b47592 Replace nullable API with null connector instead 2021-02-11 12:34:39 +03:00
a0ead38496 Prevent test spectator clients from attempting hub connections 2021-02-09 08:02:51 +03:00
f04d6d5e5e Update hub clients with changes to connecotr 2021-02-09 08:02:32 +03:00
f76f92515e Clean up spectator streaming client with new hub connector 2021-02-09 02:15:56 +03:00
eb795a2127 Move all endpoint information to a configuration class 2020-12-24 17:58:38 +09:00
fb795f6bfd Add initial hook-up to spectator backend 2020-12-16 16:20:29 +09:00
64a2526678 Add header class and basic flow for propagating data updates 2020-12-14 17:33:23 +09:00
1e1569eb53 Use int instead of long for user_id fields for now 2020-11-06 12:59:46 +09:00
c1d9a0c92c Move click action out of user panel 2020-11-02 21:09:47 +09:00
ed30756c19 Add test coverage for new display (and remove live version for now) 2020-11-02 20:41:14 +09:00
fa85751425 Move helper functions to bottom of class 2020-10-29 15:10:42 +09:00
fe409a55e6 Rename starvation test 2020-10-29 15:10:11 +09:00
ce58bfdc4e Add test covering host retry after returning to spectator screen 2020-10-29 15:09:12 +09:00
6a31a313b6 Fix stop watching test to check correct screen presence 2020-10-29 15:08:06 +09:00
7dd3a748be Add further test logic to ensure retry / restart flow is working correctly 2020-10-29 15:03:38 +09:00
a59ea987b7 Make tests more resilient under headless execution 2020-10-29 14:57:36 +09:00
6c2cee7b3f Avoid cross-pollution between tests of current playing state 2020-10-28 23:15:51 +09:00
7cc4a7cb5c Add more accurate fail scenario test logic 2020-10-28 22:59:54 +09:00
1d499ec15d Change beatmap not existing test to specify a beatmap ID that can't possibly exist 2020-10-28 22:51:35 +09:00
8bbcb9be8a Always use imported beatmap in tests 2020-10-28 22:50:57 +09:00
5fcd39a43d Ensure spectator screen is loaded before continuing 2020-10-28 16:29:06 +09:00
d5e0fa322b Fix a couple of inspections 2020-10-27 22:30:45 +09:00
2cacdaa11b Add basic beatmap download and play flow 2020-10-27 19:28:34 +09:00
42b3aa3359 Fix spectating when starting from a point that isn't at the beginning of the beatmap 2020-10-27 18:58:37 +09:00
a289b7034f Add test helper functions to promote code share 2020-10-27 18:58:37 +09:00
b3d793a505 Fix gameplay proceeding when no frames have been received yet 2020-10-27 18:58:37 +09:00
d4467d20a2 Allow tests to continue sending frames from point they left off 2020-10-27 18:58:37 +09:00
63131d46aa Send initial spectator state more correctly in test component 2020-10-27 18:58:37 +09:00
4dba96e189 Add more useful frame sending logic to tests 2020-10-27 18:58:37 +09:00
c1e7cd6e47 Stop replay playback when frames are starved 2020-10-27 18:58:37 +09:00
400542bc0b Ensure frames arrive 2020-10-27 18:58:37 +09:00
593b0a3ada Setup tests to run headless, add basic pass support 2020-10-27 18:58:37 +09:00
67f6d52e35 Setup tests 2020-10-27 18:58:37 +09:00
9bb2cff8a5 Convey actual beatmap and ruleset for full testing setup 2020-10-27 18:58:37 +09:00
82a27c73a0 Create basic testing setup 2020-10-27 18:58:37 +09:00
5fd97bd043 Add basic spectator screen 2020-10-27 18:58:37 +09:00