1
0
mirror of https://github.com/ppy/osu.git synced 2024-09-23 14:07:24 +08:00
Commit Graph

860 Commits

Author SHA1 Message Date
Dean Herbert
246ab41cc6 Remove special casing for user exit during storyboard outro 2021-06-17 18:11:15 +09:00
smoogipoo
58d71e4aea Remove local "next frame" storage 2021-06-10 22:41:38 +09:00
Salman Ahmed
6538d44708 Make SkinProvidingContainer able to perform lookup on multiple skins
Currently `protected` functionality for use in custom `SkinProvidingContainer`s, can be exposed to public constructors if it need to later on, but I'm not sure about doing that opposed to just nesting multiple `SkinProvidingContainer`.
2021-06-09 22:49:31 +03:00
Salman Ahmed
cf40282f1f Convert LegacySkinTransformers to accept raw ISkins rather than a full ISkinSource 2021-06-09 22:49:31 +03:00
smoogipoo
c8e14d7710 Ignore non-scorable and bonus judgements 2021-06-08 23:09:23 +09:00
Dean Herbert
6017ef3825
Merge branch 'master' into fix-skin-sample-lookup 2021-06-08 17:37:36 +09:00
Dan Balasescu
791855dfa0
Merge branch 'master' into legacy-skin-default-fallback 2021-06-08 16:54:26 +09:00
Bartłomiej Dach
1b4771655a Adjust test scene to avoid cross-test interference
* Move steps from ctor to a separate basic test.
* Wait for barrage to complete in basic test, as not doing so polluted
  state of other tests.
* Reset score processor after every test.
2021-06-07 13:16:07 +02:00
Bartłomiej Dach
37d062c7cd Add failing assertions to hit error meter test 2021-06-07 13:16:07 +02:00
Bartłomiej Dach
122a624b7f Remove bogus CatchHitWindows
`CatchHitWindows` were a vestige from the past, and were not actually
used anywhere except for the hit error meter test, giving off an
appearance that the hit error meter was working properly.
`CatchHitObject` actually specifies empty hit windows.
2021-06-07 13:16:07 +02:00
Dean Herbert
d26c9a66c2 Merge branch 'legacy-skin-default-fallback' into fix-skin-sample-lookup 2021-06-07 12:01:19 +09:00
Dean Herbert
06275a6a7d Merge branch 'master' into legacy-skin-default-fallback 2021-06-04 16:00:30 +09:00
smoogipoo
c3280083a2 Merge branch 'master' into fix-spectator-frame-conversion 2021-06-03 17:42:01 +09:00
smoogipoo
3bc81fbb06 Fix spectator tests 2021-06-03 17:27:24 +09:00
smoogipoo
420df124b5 Add framestable-bypassing seek for spectator 2021-06-03 17:27:21 +09:00
Dan Balasescu
44b1102241
Merge branch 'master' into autoplay-pause-support 2021-06-03 13:26:00 +09:00
Dan Balasescu
c065f761c7
Merge branch 'master' into legacy-skin-default-fallback 2021-06-02 19:08:52 +09:00
Dean Herbert
5366e7f61e
Merge branch 'master' into remove-hud-component-lookup 2021-06-02 16:10:06 +09:00
Dean Herbert
f8ae70e562 Update existing function type rather than adding an override 2021-06-02 16:04:53 +09:00
Dean Herbert
45984f035b Make autoplay tests test via the ReplayPlayer code path 2021-06-02 11:49:06 +09:00
Salman Ahmed
cb38abab35 Add local logic for creating default/legacy implementation based on cell skin 2021-06-01 10:17:01 +03:00
Salman Ahmed
cd8e3f3a04 Revert "Group all skinnable test scenes to one TestSceneSkinnableHUDComponents"
This reverts commit d1272d5e13.
2021-06-01 09:57:43 +03:00
Dean Herbert
00b3eea840 Merge branch 'legacy-skin-default-fallback' into fix-skin-sample-lookup 2021-05-31 21:39:04 +09:00
Dean Herbert
3ff9f9c89d Make FindProvider non-default 2021-05-31 21:29:47 +09:00
smoogipoo
c787c008a5 Fix test potentially not waiting for player to load 2021-05-31 20:21:26 +09:00
Dean Herbert
de0e51a81d Merge branch 'master' into fix-skin-sample-lookup 2021-05-31 15:27:39 +09:00
Salman Ahmed
02d18c7a49 Merge branch 'master' into remove-hud-component-lookup 2021-05-31 09:23:04 +03:00
ekrctb
771f3c48c0 Add failing test showing lifetime not recomputed with pooled objects 2021-05-31 14:48:52 +09:00
Dean Herbert
dac1a98d8a Merge branch 'master' into fix-skin-sample-lookup 2021-05-30 15:19:47 +09:00
Salman Ahmed
200fecc774 Fix missing using directive 2021-05-29 21:22:39 +03:00
Salman Ahmed
42618c713f
Merge branch 'master' into legacy-beatmap-skin-hud-fallback 2021-05-29 20:56:05 +03:00
Dean Herbert
951fc5ef6e Remove misleading comment and misplaced bug fix
This shouldn't be fixed in a test scene; the underlying issue should be
fixed in actual game code.
2021-05-29 15:39:13 +09:00
Dean Herbert
9b239e308b Merge branch 'master' into beatmap-skin 2021-05-29 15:36:43 +09:00
Dean Herbert
6268bbea85 Merge branch 'master' into fix-skin-sample-lookup 2021-05-28 14:47:35 +09:00
Dan Balasescu
1a0ace8d58
Merge branch 'master' into fix-slow-load-test-failure 2021-05-27 23:15:42 +09:00
Dean Herbert
bcf1e3db1e Fix test failures in TestSceneStoryboardWithOutro
Test was not accounting for the fact that the results may not have
loaded in time.
2021-05-27 19:45:55 +09:00
Dean Herbert
c39ea85701 Fix TestSceneSkinnableSound not doing DI correctly 2021-05-27 15:42:25 +09:00
Dean Herbert
70a844ac10 Remove allowFallback parameters completely 2021-05-27 14:50:42 +09:00
Dean Herbert
8e923a5d8f Instantiate immediately, rather than waiting for instantiation 2021-05-26 22:24:51 +09:00
Dean Herbert
878079d3d7 Fix correct beatmap not being set if running test alone 2021-05-26 19:08:00 +09:00
Dean Herbert
a77de24746 Fix SlowLoadPlayer potentially not being instantiated in time for test 2021-05-26 18:58:18 +09:00
Dean Herbert
14a4095140 Merge branch 'master' into beatmap-skin 2021-05-26 18:39:47 +09:00
Salman Ahmed
afb33f1641 Remove no longer necessary test case 2021-05-21 20:21:50 +03:00
Salman Ahmed
c0dfe37965 Remove unused using directive 2021-05-20 21:08:36 +03:00
Salman Ahmed
eaae9a1b67 Remove unrequired null conditional 2021-05-20 21:08:31 +03:00
Salman Ahmed
262a27610c Improve components assertion logic 2021-05-20 20:47:40 +03:00
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
Salman Ahmed
1fd4cb8963
Merge branch 'master' into master 2021-04-11 10:19:16 +03:00
Christine Chen
08311abc5e Remove setters, cache CreatePowerStatus() and use a dummy LocalPowerStatus class in test scene 2021-04-10 00:00:21 -04:00
Christine Chen
59d13b0dd3 Fixed indentation
sorry about the style fixes... I'm using JetBrains Rider from now on.
2021-04-08 21:53:42 -04:00
Christine Chen
6b6a71d3c3 trim whitespace 2021-04-08 20:39:17 -04:00