1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-12 04:49:40 +08:00
Commit Graph

764 Commits

Author SHA1 Message Date
smoogipoo
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
smoogipoo
6beeb7f7c4 Rename SpectatorStreamingClient -> SpectatorClient 2021-05-20 15:55:07 +09:00
Salman Ahmed
97c8499884 Add test coverage 2021-05-19 23:01:41 +03:00
Salman Ahmed
71da960000 Extract assert step addition out of assertion method 2021-05-19 22:53:22 +03:00
Salman Ahmed
21ca9c8431 Merge branch 'master' into beatmap-skin 2021-05-19 22:39:32 +03:00
Salman Ahmed
6fc06a10a1 Add extensible test scene for beatmap skins fallback instead 2021-05-19 21:52:29 +03:00
Salman Ahmed
d1272d5e13 Group all skinnable test scenes to one TestSceneSkinnableHUDComponents 2021-05-18 12:38:06 +03:00
Dean Herbert
c885ad87d5 Update HitErrorDisplay tests 2021-05-18 15:12:29 +09:00
Dean Herbert
da0913ca2d Make SongProgress a skinnable component 2021-05-17 18:52:56 +09:00
Dean Herbert
c8b7cfc753 Merge branch 'skin-serialisation' into remove-skinnable-hud-classes 2021-05-13 19:05:08 +09:00
Dean Herbert
e0e9106921 Enable autoplay in skin editor tests 2021-05-13 14:55:11 +09:00
Dean Herbert
8b9ac86d4b Merge branch 'master' into skin-serialisation 2021-05-13 12:35:06 +09:00
Dean Herbert
55e1f97f59 Remove unused using statement 2021-05-12 19:06:40 +09:00
Dean Herbert
0a895fff15 Remove remaining test usage of SkinnableXXX HUD components 2021-05-12 18:53:25 +09:00
Dean Herbert
c6f0a6aed3
Merge pull request #12538 from smoogipoo/multiplayer-spectator-screen
Implement the multiplayer spectator screen
2021-05-12 17:24:35 +09:00
smoogipoo
21fc0ba43b Combine test spectator streaming client implementations 2021-05-12 13:05:02 +09:00
Dean Herbert
048677846b Change HealthDisplay to be a CompositeDrawable 2021-05-11 23:10:30 +09:00
Dean Herbert
61ea3f2e64 Remove unnecessary test step creating needless skins 2021-05-11 18:39:15 +09:00
Dean Herbert
2396ba42a6 Change HealthDisplay to be a CompositeDrawable 2021-05-11 18:39:14 +09:00
Dean Herbert
004798d61d Update Legacy components to not require skin in ctor 2021-05-11 18:39:14 +09:00
smoogipoo
10a4a5decb Merge branch 'master' into multiplayer-spectator-screen 2021-05-11 17:33:09 +09:00
Dean Herbert
2ecd638f7f Merge branch 'master' into skin-components-list 2021-05-10 18:13:10 +09:00
Dean Herbert
97e72849af Fix regressed HitErrorDisplay behaviour (and localise binding to meter implementations) 2021-05-10 15:24:13 +09:00
Dean Herbert
3c3500d070 Merge branch 'skin-components-bind-outwards-health' into remove-hud-overlay-unused-pieces 2021-05-10 12:23:18 +09:00
Dean Herbert
1d38fa29b5 Remove unused using statement 2021-05-10 12:23:04 +09:00
Dean Herbert
1bbbe80420 Fix missing instances of HealthProcessor caching 2021-05-10 12:22:24 +09:00
Dean Herbert
132bb7832d Fix some regressions when updating test scenes 2021-05-10 12:06:33 +09:00
Dean Herbert
b274fdf20d Merge branch 'master' into skin-components-bind-outwards-health 2021-05-10 11:13:44 +09:00
Dean Herbert
2bcf1ed306
Merge pull request #12715 from Cublibre/fix-early-exit-crash
Fix InvalidOperationException when exiting a map at the end
2021-05-09 23:21:19 +09:00
Christine Chen
ae2b5a0806 Actually test that player was exited 2021-05-08 22:42:14 -04:00
Bartłomiej Dach
efb9164658 Restore previous test scene logic 2021-05-08 21:35:12 +02:00
Bartłomiej Dach
0bc6a026eb
Merge branch 'master' into skin-components-bind-outwards-accuracy 2021-05-08 21:08:53 +02:00
Christine Chen
25312b3e88 Don't restart completion delegate on exit, revert exit behavior to lazer 2021-05-08 11:47:44 -04:00
Christine Chen
8c564a69ed Fix InvalidOperationException when exiting a map at the end 2021-05-07 21:11:03 -04:00
Dean Herbert
1cb10c2a22 Remove unnecessary binding logic from HUDOverlay 2021-05-07 17:51:46 +09:00
Dean Herbert
a7acecc52b Merge branch 'skin-components-bind-outwards-health' into remove-hud-overlay-unused-pieces 2021-05-07 17:51:41 +09:00
Dean Herbert
3044b1c432 Add missing cache rules 2021-05-07 17:50:44 +09:00
Dean Herbert
6c255a0572 Fix drain start time being weirdly incorrect 2021-05-07 17:47:33 +09:00
Dean Herbert
8e78cac058 Fix HealthProcessor cached as derived type in test 2021-05-07 17:31:29 +09:00
Dean Herbert
04d35826a3 Merge branch 'skin-components-bind-outwards-accuracy' into remove-hud-overlay-unused-pieces 2021-05-07 17:25:39 +09:00
Dean Herbert
84a4ff333e Update skin editor test scene to cache a ScoreProcessor 2021-05-07 17:22:56 +09:00
Dean Herbert
755588258e Update HealthDisplay components to use DI to attach data source 2021-05-07 17:22:45 +09:00
Dean Herbert
4ac234bf7f Merge branch 'skin-components-bind-outwards' into skin-components-bind-outwards-accuracy 2021-05-07 17:15:57 +09:00
Dean Herbert
6dc591fc44 Merge branch 'skin-components-bind-outwards' into skin-components-bind-outwards-score-display 2021-05-07 17:15:37 +09:00
Dean Herbert
9d27b11e49 Update skin editor test scene to cache a ScoreProcessor 2021-05-07 17:10:31 +09:00
Dean Herbert
01eff7f316 Merge branch 'skin-components-bind-outwards' into skin-components-bind-outwards-score-display 2021-05-07 16:30:08 +09:00
Dean Herbert
93f10330e3 Merge branch 'skin-components-bind-outwards' into skin-components-bind-outwards-accuracy 2021-05-07 16:29:10 +09:00
Dean Herbert
ad398165a2 Update AccuracyCounter components to use DI to attach data source 2021-05-07 16:27:25 +09:00
Dean Herbert
17b93361d5
Merge branch 'master' into skin-components-bind-outwards 2021-05-07 16:20:24 +09:00
Dean Herbert
a2e4fb5b6b Update ScoreCounter components to bind outwards 2021-05-07 16:16:48 +09:00
Dean Herbert
aff32b0d19 Merge branch 'master' into skin-components-list 2021-05-06 14:17:33 +09:00
Bartłomiej Dach
3cac837acf
Merge branch 'master' into skin-bindables 2021-05-05 20:16:27 +02:00
Dean Herbert
3cc9bad979 Actually check for correct state of fade content in rewind test 2021-05-05 17:49:33 +09:00
Christine Chen
1d4a8bc0ae Add visual test for rewinding 2021-05-04 22:23:36 -04:00
Dean Herbert
bb9fa1a25e
Merge branch 'master' into play-storyboard-outro 2021-05-04 14:01:34 +09:00
Dean Herbert
625890381f Update ComboCounter components to use DI to attach data source 2021-05-03 17:43:00 +09:00
Dean Herbert
a1e64f4e3c Use the existing toolbox design 2021-04-30 14:41:06 +09:00
Dean Herbert
ae9d1dc40b Add component list to main editor interface and enable basic placement 2021-04-30 13:10:42 +09:00
Dean Herbert
6442fb819f Split out component from test scene and fix SongProgress 2021-04-30 13:10:42 +09:00
Dean Herbert
4770a64709 Add proof of concept components list 2021-04-30 13:10:42 +09:00
Dean Herbert
de73ac7cec Allow skin editor to be invoked from any context
This is kind of how I see things working going forward, where the editor
can be applied to anything in the game which supports it (ie. a results
screen, gameplay screen, etc.) and it will immediately allow changing
the interface.

This adds a test scene which shows this working with gameplay.
2021-04-29 16:12:15 +09:00
Dean Herbert
74c6fdc4b8 Add DrawableRuleset to the skin editor test to get a hit error meter to display 2021-04-29 16:12:15 +09:00
Dean Herbert
fd587a82ff Replace abstract class with interface, attached to the actual components (not skinnable wrapper) 2021-04-29 16:12:15 +09:00
Dean Herbert
defa350aa7 Set defaults on SkinnableHUDComponent to cancel out relative size default
Specifying locally on each HUD component looks to make more sense.
2021-04-29 16:12:15 +09:00
Dean Herbert
1cb8fc9a24 Extract editor classes out of test namespace and add anchor support 2021-04-29 16:12:15 +09:00
Dean Herbert
74fb7cd180 Extract storable attributes to bindables 2021-04-29 16:12:15 +09:00
Dean Herbert
99b428ee4b Add very basic skin editor test 2021-04-29 16:12:14 +09:00
Dean Herbert
fca173225a Refactor editor selection/blueprint components to be generic 2021-04-29 16:12:14 +09:00
Dean Herbert
2d17219c8f Setup basic test and classes for scale adjustment 2021-04-29 16:12:14 +09:00
Dean Herbert
120fb8974d Combine more instances of test player IDs 2021-04-26 17:22:16 +09:00
Dean Herbert
daafa41dc1
Merge branch 'master' into fix-initial-spectator-state-callback 2021-04-22 16:22:04 +09:00
smoogipoo
e78ef05fcf Merge branch 'gcc-abstraction' into multiplayer-spectator-screen 2021-04-21 17:11:14 +09:00
smoogipoo
156a518068 Merge branch 'master' into fix-initial-spectator-state-callback 2021-04-20 21:16:05 +09:00
smoogipoo
c5d6b6ea8d Fix tests failing intermittently
This was due to this code happening in UpdateAfterChildren(), after the
GCC has processed one frame. During this time, the clock could have
advanced an arbitrary amount.

The cause of this is the removal of the Task.Run() to set the clock in
Restart() (now called Reset()) which changed the timing, so it only worked before due to pure
luck.
2021-04-20 18:41:09 +09:00
smoogipoo
80473a356e Merge branch 'fix-pre-seek-sample-lifetime' into gcc-abstraction 2021-04-20 17:27:01 +09:00
smoogipoo
c12848ce4d Apply fixes to tests 2021-04-19 17:02:59 +09:00
Christine Chen
fd1241cc85 Added tests
New tests:
- storyboard ending during the failing animation
- showResults = false
- storyboard ending before score processor completion

Co-Authored-By: Marlina José <marlina@umich.edu>
2021-04-18 23:26:50 -04:00
Christine Chen
98460c8feb Rename IStoryboardElementHasDuration, remove unnecessary step in tests, add Duration field 2021-04-18 20:20:14 -04:00
Christine Chen
7b1d40db7d Remove redundant string interpolation 2021-04-17 22:13:28 -04:00
Christine Chen
e9f8fa64b8 Added a test for toggling the storyboard after the map is loaded 2021-04-17 21:49:29 -04:00
Christine Chen
7f5b1e84a1 Update TestSceneStoryboardWithOutro.cs
- Construct storyboard in CreateWorkingBeatmap()
- Use GameplayClockContainer.GameplayClock.CurrentTime
- Remove unnecessary lines
2021-04-17 13:57:32 -04:00
smoogipoo
5e82f40d67 Merge branch 'master' into gcc-abstraction 2021-04-16 20:14:53 +09:00
smoogipoo
65a6f9f8a4 Merge branch 'fix-initial-spectator-state-callback' into multiplayer-spectator-screen 2021-04-16 18:26:46 +09:00
smoogipoo
46d2181d42 Remove now unnecessary (duplicating) test 2021-04-16 18:21:56 +09:00
smoogipoo
377e5ce6b3 Fix test incorrect sending state too often 2021-04-16 18:21:35 +09:00
smoogipoo
ca74f413cd Change to explicit method instead 2021-04-16 17:31:02 +09:00
smoogipoo
5652490d61 Fix OnUserBeganPlaying not being invoked if already watching 2021-04-16 14:11:55 +09:00
Christine Chen
b15838b220 Move storyboard outro logic to DrawableStoryboard 2021-04-16 00:59:10 -04:00
Christine Chen
45c2b72a25
Merge branch 'master' into play-storyboard-outro 2021-04-15 15:11:35 -04:00
Christine Chen
25b8c2f257 Allow skipping storyboard outro
Reuses SkipOverlay by calculating the endtime of the storyboard and using that as a "start point". Upon skipping the outro the score is instantly shown.
When the end of the storyboard is reached the score screen automatically shows up. If the player holds ESC (pause) during the outro, the score is displayed

The storyboard endtime is calculated by getting the latest endtime of the storyboard's elements, or simply returning 0 if there is no storyboard.

Co-Authored-By: Marlina José <marlina@umich.edu>
2021-04-15 13:20:40 -04:00
Dan Balasescu
ac8e462d32
Merge branch 'master' into refactor-framed-replay-input-hander 2021-04-15 21:48:58 +09:00
Dean Herbert
5b06a68b93
Merge pull request #12330 from Cublibre/master
Send a warning notification if device is unplugged and at low battery
2021-04-15 19:21:04 +09:00
Dean Herbert
346e36d32a Make Mod.Description abstract and add missing descriptions 2021-04-15 14:36:26 +09:00
smoogipoo
1aa36818df Abstractify GameplayClockContainer 2021-04-14 17:47:11 +09:00
Christine Chen
f66306a81a Remove IsLowBattery 2021-04-12 11:15:24 -04:00
Christine Chen
43b97fe0ad Refactor PowerStatus (now called BatteryInfo) 2021-04-12 10:52:52 -04:00
ekrctb
359fae895f Rename property 2021-04-12 18:50:25 +09:00
ekrctb
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
ekrctb
d6d8ea5b6b Throw when getting a frame of an empty replay 2021-04-12 11:17:56 +09:00
Salman Ahmed
cb947a3b27 Add expected output in test case rather than determining internally 2021-04-11 13:18:25 -04:00