1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-18 06:32:55 +08:00
Commit Graph

1655 Commits

Author SHA1 Message Date
Dean Herbert
c9baadcf88 Merge branch 'master' into improve_retry_behaviour 2022-08-16 13:06:04 +09:00
Dean Herbert
704568ae3b Remove remaining usage of GameplayClock 2022-08-15 20:22:36 +09:00
Dean Herbert
87760bbc06 Fix IsCatchingUp not being in correct state 2022-08-15 20:17:48 +09:00
Dean Herbert
04d88b8216 Use constraint based assertions in TestSceneFrameStabilityContainer 2022-08-15 19:19:19 +09:00
Dean Herbert
27569e2ed5 Remove FrameStableClock (and redirect usages to FrameStabilityContainer) 2022-08-15 19:19:19 +09:00
Dean Herbert
f81c7644b4 Make GameplayClockContainer also an IGameplayClock and expose to remaining tests 2022-08-15 18:30:53 +09:00
Dean Herbert
c8764cb333 Move all usage of GameplayClock to IGameplayClock 2022-08-15 18:30:53 +09:00
Dean Herbert
6d78218142 Update usages of GameplayClockContainer.GameplayClock to access properties directly 2022-08-15 18:08:49 +09:00
Ryuki
2aa3a1b50d
Rename all "KeysPerSecond" usages to "ClicksPerSecond" 2022-08-14 20:12:11 +02:00
Ryuki
9dc806506e
Make ActionListener and KeysPerSecondCalculator not rely on events to add timestamps 2022-08-14 19:31:14 +02:00
Ryuki
3c6461b9e4
Remove KPS acronym usage 2022-08-11 10:01:39 +02:00
Ryuki
0e1efbd865
Rename DrawableCookieziRuleset to MockDrawableRuleset 2022-08-11 01:04:06 +02:00
Ryuki
d58d5eebe2
Add basic tests for KPS
Created private mock classes to use them in place of `GameplayClock` and
`DrawableRuleset`.
2022-08-11 00:51:13 +02:00
naoei
3e38baca3c Change ruleset mod description types 2022-08-10 16:09:11 -04:00
Ryuki
edb8e5e33e
Temporarily emptying TestSceneKeysPerSecondCounter until a good test can be found 2022-08-09 02:43:41 +02:00
BlauFx
e4879aa450
Add test 2022-08-08 21:12:38 +02:00
Ryuki
0c07df2c26
Remove DT from KPS test 2022-08-05 21:02:37 +02:00
Ryuki
b4e0fa7c53
Rewrite tests for KPS 2022-08-05 15:53:06 +02:00
Ryuki
42d1bdfc95
Move KPS calculation to a standalone class 2022-08-05 04:17:01 +02:00
Dan Balasescu
b4e55f7309 Apply IRenderer changes 2022-08-02 19:50:57 +09:00
Susko3
38a8b9cf0a Add battery info for desktop platforms 2022-07-30 14:26:19 +02:00
Salman Ahmed
ec1a7994cc Switch method to statement body for better readability
Almost thought the method was not wrapped in an `AddStep`.
2022-07-30 10:11:01 +03:00
Salman Ahmed
0c125db197 Fix potential nullref on TestSceneAutoplay check steps 2022-07-30 10:11:01 +03:00
Salman Ahmed
3bc1774c87
Merge branch 'master' into pie-chart-progress 2022-07-29 16:54:59 +03:00
Salman Ahmed
3b1a76b190 Remove redundant/overwritten specifications 2022-07-29 16:45:29 +03:00
Salman Ahmed
905bbdc8ee Remove caching of GameplayClockContainer in favour of GameplayClock
Also fixes `SongProgress` being displayed in skin editor on non-gameplay
screens, due to `GameplayClock` not marked as a required dependency.
2022-07-29 16:45:29 +03:00
Dean Herbert
eb92c35335
Merge pull request #19442 from smoogipoo/fix-beginplaying-misordering
Move spectator begin/end playing to SubmittingPlayer
2022-07-29 16:09:50 +09:00
Ryuki
2df24019fd
Merge branch 'master' into kps 2022-07-28 18:38:09 +02:00
Ryuki
079150849a
Add some tests 2022-07-28 18:37:50 +02:00
Ryuki
b2e7da5aa0
Add basic Queue based implementation of KPS 2022-07-28 18:37:12 +02:00
Dean Herbert
45879f7836
Merge pull request #19443 from smoogipoo/fix-intermittent-hud-tests
Fix intermittent HUD tests
2022-07-28 23:20:46 +09:00
Dean Herbert
e664690fe2 Remove unnecessary LoadTrack call 2022-07-28 22:19:46 +09:00
Dean Herbert
3005ff1b9f Merge branch 'master' into pie-chart-progress 2022-07-28 22:19:27 +09:00
Dan Balasescu
ce694123eb Move spectator begin/end playing to SubmittingPlayer 2022-07-28 20:44:04 +09:00
Dean Herbert
7108553883 Tidy up various things everywhere 2022-07-28 18:25:14 +09:00
Dean Herbert
a21aee4e9c Reduce calls to LoadTrack by implicitly running on test/dummy classes 2022-07-28 18:11:40 +09:00
Dan Balasescu
1039338d80 Fix intermittent HUD tests 2022-07-28 17:58:07 +09:00
Nitrous
0d36907cad
apply code quality fixes 2022-07-28 15:30:45 +08:00
Nitrous
70ed347b06
simplify helper methods 2022-07-28 15:19:35 +08:00
Dean Herbert
2b9d46d803 Remove unused RulesetStore from BeatmapManager constructor 2022-07-28 16:19:05 +09:00
Nitrous
db62d4be3a
apply suggestions
- refactor `SongProgress`
- make`UpdateProgress` more readable
- enable NRT on new classes
- refactor `TestSceneSongProgress` to use `GameplayClockContainer`
2022-07-28 15:15:41 +08:00
Dean Herbert
0913cf013c Split out tests and fix variable conflict 2022-07-28 13:24:14 +09:00
Nitrous
9088caa377
move LegacyComboCounter to osu.Game.Skinning 2022-07-28 08:36:26 +08:00
Nitrous
6af6f03e29
refactor song progress test scene 2022-07-27 15:57:47 +08:00
Nitrous
1e013bd4e9
move song progress graph to its own test scene 2022-07-27 15:57:23 +08:00
Nitrous
37e642b0bd
make SongProgress abstract
- move unrelated logic to `DefaultSongProgress`
- make `LegacySongProgress` inherit `SongProgress`
2022-07-27 15:19:21 +08:00
Dean Herbert
7f75184a01
Merge branch 'master' into beatmap-update-test 2022-07-26 17:27:36 +09:00
Dean Herbert
ef10145d6f Rename MenuCursorContainer and clean up code 2022-07-26 14:11:52 +09:00
Salman Ahmed
e5355f314d Use longer hash string 2022-07-25 15:19:32 +03:00
Dean Herbert
6a3e8e31de Centralise calls to reset online info of a BeatmapInfo 2022-07-25 19:51:19 +09:00
Salman Ahmed
d04df19c7e Remove APIScore and replace its final usage 2022-07-25 13:13:46 +03:00
Salman Ahmed
fa9daa6899 Fix TestSceneReplayRecorder not using score provided by gameplay state 2022-07-25 05:21:27 +03:00
Salman Ahmed
feef16b09b Add potentially failing test case 2022-07-25 04:18:30 +03:00
tsunyoku
d1c60b5741 correct assertion logic 2022-07-17 23:53:35 +01:00
tsunyoku
d17acd0f45 add message to Assert.That 2022-07-17 23:16:27 +01:00
tsunyoku
92513dc936 reverse IsInstanceOfType logic 2022-07-17 22:49:09 +01:00
tsunyoku
0c50931d2f change method of finding incompatibleMod 2022-07-17 22:10:35 +01:00
tsunyoku
dcce14ae8f rename NoConflictingModAcronyms to ModValidity, add test for two-way mod incompatibility 2022-07-17 21:15:29 +01:00
Dean Herbert
acd5254f51 Add test coverage ensuring unique acronyms 2022-07-16 17:19:55 +09:00
Salman Ahmed
68afb65aff Move default state steps to SetUp rather than duplicating per test case 2022-07-15 22:10:21 +03:00
Dean Herbert
21433d4ecb Add test coverage of saving a failed score 2022-07-15 20:14:58 +09:00
Dean Herbert
4b96d74b0c Add test coverage of LastPlayed updating 2022-07-13 16:43:43 +09:00
Salman Ahmed
09bfca4e4a Fix build failing on tests 2022-07-11 21:45:39 +03:00
Salman Ahmed
667b1d795d Ensure score has custom ruleset 2022-07-08 19:15:03 +03:00
Salman Ahmed
8c7aabccb0 Fix custom legacy ID in test scene not overriding base value 2022-07-08 19:01:21 +03:00
Dean Herbert
ac3cdf103a Fix test not failing against master 2022-07-08 19:17:51 +09:00
Dean Herbert
3c8f06403c Make test work properly 2022-07-08 19:03:26 +09:00
Dean Herbert
57b2f8189c Add back test workaround for TestScenePlayerScoreSubmission with updated explanation
This reverts commit f88e2aa025.
2022-07-07 17:42:03 +09:00
Dean Herbert
b663986b9f Add test coverage of locally available without replay button handling 2022-07-07 17:04:04 +09:00
Dean Herbert
461d133c1f Add test coverage of score importing 2022-07-07 16:43:31 +09:00
Dean Herbert
f88e2aa025 Remove EF test workaround 2022-07-07 15:02:03 +09:00
Dean Herbert
b597843579 Mark and document remaining flaky tests 2022-07-01 16:17:40 +09:00
Dan Balasescu
c5d31f50cd Attempt to fix flaky TestSceneAutoplay test 2022-06-30 11:38:51 +09:00
Dan Balasescu
d630b62cfc
Merge pull request #18915 from peppy/slider-snaking-test-refactoring
Apply various refactorings to `TestSceneSliderSnaking`
2022-06-28 16:16:35 +09:00
Dean Herbert
35745c83b7 Replace dodgy SetUpSteps overriding with usage of HasCustomSteps 2022-06-28 15:19:02 +09:00
Dean Herbert
a2701a3205 Increase leaniences on TestSceneSpectatorPlayback.TestWithSendFailure
Not really sure how to improve this further, but should help with cases
like this:

```csharp
[runtime] 2022-06-28 05:32:06 [verbose]: 💨 Class: TestSceneSpectatorPlayback
[runtime] 2022-06-28 05:32:06 [verbose]: 🔶 Test:  TestWithSendFailure
[runtime] 2022-06-28 05:32:06 [verbose]: 🔸 Step #1 Setup containers
[runtime] 2022-06-28 05:32:06 [verbose]: Received 1 new frames (total 1 of 2)
[runtime] 2022-06-28 05:32:06 [verbose]: 🔸 Step #2 received frames
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 7 of 8)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 13 of 19)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 19 of 29)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 25 of 44)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 31 of 45)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 37 of 59)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 43 of 67)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 49 of 125)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 55 of 126)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 61 of 127)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 67 of 128)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 73 of 129)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 79 of 130)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 85 of 131)
[runtime] 2022-06-28 05:32:06 [verbose]: ✔️ 22 repetitions
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 91 of 132)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 97 of 133)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 103 of 134)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 109 of 135)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 115 of 136)
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 121 of 137)
[runtime] 2022-06-28 05:32:06 [verbose]: 🔸 Step #3 start failing sends
[runtime] 2022-06-28 05:32:06 [verbose]: Received 6 new frames (total 127 of 138)
[runtime] 2022-06-28 05:32:06 [verbose]: 🔸 Step #4 wait for send attempts
[runtime] 2022-06-28 05:32:06 [verbose]: 🔸 Step #5 frames did not increase
[runtime] 2022-06-28 05:32:06 [verbose]: 💥 Failed
[runtime] 2022-06-28 05:32:06 [verbose]:  Currently loading components (0)
[runtime] 2022-06-28 05:32:06 [verbose]: 🧵 Task schedulers
[runtime] 2022-06-28 05:32:06 [verbose]: LoadComponentsAsync (standard) concurrency:4 running:0 pending:0
[runtime] 2022-06-28 05:32:06 [verbose]: LoadComponentsAsync (long load) concurrency:4 running:0 pending:0
[runtime] 2022-06-28 05:32:06 [verbose]: 🎱 Thread pool
[runtime] 2022-06-28 05:32:06 [verbose]: worker:          min 1      max 32,767 available 32,766
[runtime] 2022-06-28 05:32:06 [verbose]: completion:      min 1      max 1,000  available 1,000
[runtime] 2022-06-28 05:32:06 [verbose]: Host execution state changed to Stopping
```

https://teamcity.ppy.sh/buildConfiguration/Osu_Build/811?hideProblemsFromDependencies=false&hideTestsFromDependencies=false&expandBuildTestsSection=true
2022-06-28 14:58:34 +09:00
Dean Herbert
569fde4b47 Add messages to all InvalidOperationExceptions
Without this, they can be very non-descript and hard to track down
2022-06-28 01:34:25 +09:00
Dean Herbert
401d9c1bae Fix TestStoryboardSkipOutro occasionally failing due to strict timings 2022-06-27 17:13:46 +09:00
Dean Herbert
31a447fda0 Update parameter discards 2022-06-24 21:26:19 +09:00
Dan Balasescu
f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
Dean Herbert
0147a8ecee Add test coverage of HUD components still getting updated when hidden 2022-06-14 18:35:49 +09:00
Dean Herbert
17eaf7bb5c Add failing test coverage showing hit meters don't update when not visible 2022-06-13 16:36:22 +09:00
Bartłomiej Dach
a8e1c5ba87
Fix remaining cases of incorrect GameplayState construction in tests
Manual attempts to initialise replaced by a new `TestGameplayState`
helper for ease of use.
2022-05-28 15:23:29 +02:00
Bartłomiej Dach
dcf3d76954
Fix unobserved exceptions due to using unconverted beatmap
`TestSceneBeatmapSkinFallbacks` was locally caching a `GameplayState`
instance to fulfill dependencies of a
`SkinnableTargetComponentsContainer`. However, it was doing so using
`new TestBeatmap()`, which is a raw decoded beatmap that hasn't been
converted to any ruleset yet, which was causing failures in
`BeatmapDifficultyCache.GetTimedDifficultyAttributesAsync()` as that
method is expecting to receive a post-conversion, ready-for-gameplay
beatmap.

Resolve by proxying forward dependency instances from the
already-known-to-be-working `actualComponentsContainer`.
2022-05-28 15:23:29 +02:00
Bartłomiej Dach
9cfe2cc310
Move TestCustomisableModRuleset out of TestSceneModSettings 2022-05-10 21:43:57 +02:00
Salman Ahmed
0fe121f48a Move and rename settings toolbox group test scene 2022-05-09 13:25:33 +03:00
Bartłomiej Dach
cbd1169495
Move cache declarations of ISamplePlaybackDisabler to interface 2022-05-08 10:38:58 +02:00
Bartłomiej Dach
9ae019eb39
Move ISamplePlaybackDisabler to more general namespace 2022-05-08 10:38:58 +02:00
Dean Herbert
d310886c26 Add test coverage of IsPlaying state during fail and pause 2022-04-26 12:09:18 +09:00
Salman Ahmed
6ad10672ee
Merge branch 'master' into update-framework 2022-04-21 19:30:57 +03:00
Dean Herbert
832d37b2c2 Update screen transition events to use new event args 2022-04-22 00:52:44 +09:00
Dean Herbert
f5d24add58 Fix TestSceneSkinnableSound not working under visual tests
oops
2022-04-21 16:49:21 +09:00
Salman Ahmed
94335c2938 Update further usages to cache/resolve via interface 2022-04-19 00:18:10 +03:00
Dan Balasescu
9de4d416e2 Merge branch 'master' into fix-spectator-seeks 2022-04-14 18:54:52 +09:00
Dan Balasescu
494955aff1 Resolve inspection issues 2022-04-14 13:11:11 +09:00
Dean Herbert
9c68b3edc5 Merge branch 'master' into fix-spectator-seeks 2022-04-13 12:33:41 +09:00
Dean Herbert
45d79c1a73 Ensure previous test score is cleaned up to allow visual test runs to work better 2022-04-12 18:21:40 +09:00
Dean Herbert
01cec7d3fb Remove unnecessary string literals 2022-04-11 19:37:01 +09:00
Bartłomiej Dach
04db80848b
Remove unused using directives 2022-04-07 21:24:50 +02:00
Dean Herbert
0674862b6c Fix failing tests 2022-04-07 17:52:08 +09:00
Joseph Madamba
edb556643e Add failing replay button enabled test asserts 2022-04-06 20:43:56 -07:00
Dean Herbert
065bb60324 Remove unused using statements 2022-04-06 16:05:11 +09:00
Dean Herbert
c2b2d443ed Add more comprehensive assert output to try and discern CI issues 2022-04-06 15:31:12 +09:00
Dean Herbert
a3695c7e97
Merge branch 'master' into fix-spectator-seeks 2022-04-06 12:58:43 +09:00
Bartłomiej Dach
f4184cb6fe
Fix typo in step name 2022-03-30 22:04:55 +02:00
Dean Herbert
ea9495eb74 Update all existing calls to extension method with correct fallback handling 2022-03-29 16:51:30 +09:00
Dean Herbert
7059e4bf94 Add test coverage for autoplay avatar not being clickable 2022-03-28 23:37:39 +09:00
Bartłomiej Dach
69cc863611
Fix test failures in skin editor test scene 2022-03-26 19:28:07 +01:00
Dean Herbert
16dc2f6ef5 Adjust TestSceneFailAnimation to account for initial frequency change 2022-03-24 14:51:21 +09:00
Dean Herbert
6542f974f2
Merge branch 'master' into skin-fuck 2022-03-23 15:30:22 +09:00
Dean Herbert
a7f63fb034 Make providing a custom ResourceStore to LegacyBeatmapSkin optional (for tests only) 2022-03-23 14:57:42 +09:00
Dean Herbert
3643f879e4 Add test coverage of skin editor settings slider not working via keyboard adjustments 2022-03-21 17:33:56 +09:00
Dean Herbert
63998ad9f1 Add test coverage of SpectatorPlayer failing to seek on inopportune frame arrival time 2022-03-19 15:06:22 +09:00
Dan Balasescu
af6d53ad64
Merge pull request #17279 from peppy/skin-editor-borrowed-dependencies
Only show components in skin editor which are usable on the current screen
2022-03-18 11:29:12 +09:00
Dean Herbert
6ec024c84d
Merge pull request #17307 from frenzibyte/lead-in-test-scene-manual 2022-03-18 10:53:16 +09:00
Bartłomiej Dach
a8bb696e5b
Cache gameplay clock in more places to fix song progress related tests 2022-03-17 21:22:07 +01:00
Dean Herbert
ef29de9971 Add one more missing dependency required by SongProgress 2022-03-17 19:50:43 +09:00
Dean Herbert
ac739c9dae Change PerformancePointsCounter resolution requirements to be required
All other similar UI components have required dependencies, so this is
mainly to bring things in line with expectations. I am using this fact
in the skin editor to only show components which can be used in the
current editor context (by `try-catch`ing their
`Activator.CreateInstance`).
2022-03-17 14:56:35 +09:00
Dean Herbert
3f61b0d968 Add missing OverlayColourProvider to SkinEditor test 2022-03-16 22:23:19 +09:00
Dean Herbert
4525ed645c Update skin editor to use EditorSidebar 2022-03-16 19:30:51 +09:00
Dean Herbert
d062810ff2 Add basic scene selector 2022-03-16 19:12:06 +09:00
Dean Herbert
6fb06d69cc
Merge branch 'master' into pp-counter-alloc-reduction 2022-03-15 13:31:57 +09:00
Dean Herbert
b31ff679fb Provide correct HitResult type for random judgements in TestSceneHitErrorMeter 2022-03-14 19:16:19 +09:00
Dan Balasescu
3fff7f4b7e Require ScoreProcessor to receive ruleset 2022-03-14 15:51:10 +09:00
Salman Ahmed
720e1cd206 Add failing test cases 2022-03-14 03:47:18 +03:00
Salman Ahmed
dbc26c3534 Add failing test assertion 2022-03-14 03:46:11 +03:00
Dean Herbert
db5c2c15dc
Merge pull request #17164 from smoogipoo/scoreprocessor-rework
Rework ScoreProcessor score calculation methods to fix various issues
2022-03-10 16:48:58 +09:00
Dean Herbert
2e350a91cc Fix non-matching filename 2022-03-09 18:07:43 +09:00
Dean Herbert
2eb3365f46 Fix regressing issues when attempting to exit Player after an unsuccessful beatmap load 2022-03-09 17:57:58 +09:00
Dean Herbert
1ee0be5e39 Ensure gameplay can't start when an UnknownMod is present 2022-03-09 17:57:58 +09:00
Dan Balasescu
f1c40bd9ed Rework GetScore() method signatures + implementations
Rename legacy-facing overload to mention as much
2022-03-08 22:30:44 +09:00
Salman Ahmed
e5a6564034
Merge branch 'master' into fix-storyboard-sample-rate 2022-03-07 03:12:40 +03:00
Dean Herbert
0e8ad4b143 Switch step to Until steps due to AddOnce firing logic 2022-03-06 01:50:25 +09:00
Salman Ahmed
76e64f5013 Use manual framed clock for lead-in player test scene 2022-03-04 14:22:39 +03:00
Dean Herbert
e9e92b991e Fix calibrating offset from previous non-zero offset not applying adjustment correctly 2022-03-04 15:09:44 +09:00
Dean Herbert
e09dd7d8fe Fix calibrating offset from previous non-zero offset not applying adjustment correctly 2022-03-04 13:25:14 +09:00
Dean Herbert
b0688cc6dd Merge branch 'master' into fix-storyboard-sample-rate 2022-03-04 12:04:49 +09:00
Salman Ahmed
2ce4faa356 Fix typo in method name 2022-03-03 00:02:36 +03:00
Salman Ahmed
bb94d68139 Separate storyboard samples and skip intro steps to own methods 2022-03-02 23:55:42 +03:00
Salman Ahmed
82bbc32d74 Remove unnecessary Schedule during setup 2022-03-02 23:44:58 +03:00
Salman Ahmed
a812ed4462 Ensure there is at least one sample during rate assertion 2022-03-02 23:40:14 +03:00
Salman Ahmed
cbb8dc2891 Fix storyboard samples rate not adjusted from actual gameplay mods 2022-03-02 20:56:18 +03:00
Salman Ahmed
e14a35b469 Add failing test case 2022-03-02 20:32:41 +03:00
Dean Herbert
ed9ecd6951 Fix test scene failures by ensuring that first GameplayClock frame has processed first 2022-03-02 14:45:39 +09:00
Dean Herbert
3cbcb702f6 Fix calibration button disabled state not checking in corrrect direction 2022-03-02 14:36:15 +09:00
Dean Herbert
222f50d211 Fix calibration being back-to-front 2022-03-01 20:41:54 +09:00
Dean Herbert
4d9efe771b Don't display calibration options when the previous play was too short to be useful 2022-03-01 20:12:59 +09:00
Dean Herbert
fab09575ec Add full testing flow for BeatmapOffsetControl 2022-03-01 18:44:15 +09:00
Dean Herbert
1847f69bf9 Add basic beatmap offset adjustment control 2022-03-01 18:44:15 +09:00
Dean Herbert
260cf793fe Add test coverage of more advanced frame delivery scenarios to TestSceneSpectatorPlayback 2022-02-24 02:28:13 +09:00
Dean Herbert
c94e7e2abe Add ability to simulate network failures to TestSpectatorClient 2022-02-24 02:23:48 +09:00
Dean Herbert
14c8ce50a0 Prefix all test send methods in TestSpectatorClient with Send 2022-02-24 02:23:48 +09:00
Dean Herbert
6a08fd57ef Rename "client" fields in tests to specify whether spectator or multiplayer 2022-02-16 09:52:18 +09:00
Dan Balasescu
539cbe62c6 Fix incorrect usages of user lookup cache in tests 2022-02-15 21:23:24 +09:00
Dan Balasescu
ffc4c64f7e Unify namings across the board 2022-02-09 12:10:07 +09:00
Dan Balasescu
4966c4e974 Remove redundant parameter 2022-02-09 11:51:47 +09:00
Dan Balasescu
886d1d2df6 Refactorings 2022-02-08 21:29:43 +09:00
Dan Balasescu
4c76027178 Rename completed state to passed 2022-02-08 20:29:49 +09:00
Dan Balasescu
0d99017178 Add state tests 2022-02-08 20:27:08 +09:00
Dan Balasescu
09728a29ed Merge branch 'fix-broken-test-scene' into spectator-state-rework 2022-02-04 22:42:10 +09:00
Dan Balasescu
fa3d1115fa Remove online api requirement 2022-02-04 19:17:50 +09:00
Dan Balasescu
dd63b1a350 Fix broken spectator playback test scene 2022-02-04 19:12:02 +09:00
Dan Balasescu
fcbba3d948 Rename PlayingUserStates -> WatchingUserStates 2022-02-02 23:11:29 +09:00
Dan Balasescu
589f5e7a31 Update test which has now been resolved 2022-02-02 23:09:38 +09:00
Dan Balasescu
6d3bc005ea Merge branch 'master' into spectator-state-rework 2022-02-02 18:57:04 +09:00
Bartłomiej Dach
7cdf63c654
Remove unused FindProvider() methods
No longer needed since 39f99bf785.
2022-02-01 21:53:21 +01:00
Dan Balasescu
41007169f7 Give SpectatorState a user state 2022-02-01 21:51:05 +09:00
Dan Balasescu
781cb9f18d Move HasPassed/HasFailed into GameplayState 2022-02-01 14:46:24 +09:00
Dan Balasescu
502e6af008 Remove PlayingUsers list from SpectatorClient 2022-02-01 14:42:30 +09:00
Dan Balasescu
0458d408bb Add replay statistics frames to FramedReplayInputHandler 2022-01-31 18:53:47 +09:00
Dan Balasescu
4727aeda01 Give last bundled replay frame the frame header 2022-01-31 18:53:47 +09:00
Dean Herbert
57f793aff0 Rename dictionary and make private for added safety 2022-01-31 15:12:08 +09:00
Bartłomiej Dach
1253e1ecc1
Replace LINQ Count() invocation with count property access 2022-01-28 20:25:12 +01:00
Dan Balasescu
3037a3a769 Purge final spectator frames before ending play 2022-01-28 22:26:05 +09:00
Dan Balasescu
32f9299fe0
Remove unused using 2022-01-28 15:26:29 +09:00
Dean Herbert
28c8e07e3f Ensure hold for menu button fades out if the cursor is never moved
Closes https://github.com/ppy/osu/discussions/16669.
2022-01-28 14:48:35 +09:00
Dean Herbert
f32d56e213 Bring HoldForMenuButton tests up-to-date in code quality 2022-01-28 14:48:17 +09:00
Dean Herbert
5288eedd31 Update all usages of RulesetID and Ruleset.ID to use Ruleset.OnlineID 2022-01-27 15:38:03 +09:00
Dean Herbert
cd71ec0edd Remove ILive<> interface (and use abstract Live<> instead) 2022-01-26 13:38:56 +09:00
Dean Herbert
778d2a71b4 Remove Task from the inner-most Import method in RealmArchiveModelImporter
One of my pending work items for post-realm merge.

The lowest-level import task is no longer asynchronous, as we don't want
it to span multiple threads to allow easier interaction with realm.
Removing the `Task` spec simplifies a heap of usages.

Individual usages should decide whether they want to run the import
asynchronously, by either using an alternative override or spooling up a
thread themselves.
2022-01-25 15:30:29 +09:00
Bartłomiej Dach
735414bc49
Replace TimeSignatures enum with struct for storage of arbitrary meter 2022-01-22 20:50:31 +01:00
Dean Herbert
7f65f3a47f Remove all usage of BaseDifficulty (and access Difficulty instead) 2022-01-18 22:57:39 +09:00
Dean Herbert
90166829c3 Update tests which were importing scores without a valid beatmap 2022-01-17 14:47:19 +09:00
Bartłomiej Dach
03e4ec4214
Merge branch 'master' into realm-integration/score-and-beatmaps 2022-01-15 14:45:42 +01:00
Susko3
19467e58c1 Remove unused params from BDL methods 2022-01-15 01:06:39 +01:00
Dean Herbert
8d4a3cc569 Remove pointless Metadata set 2022-01-14 23:27:33 +09:00
Dean Herbert
5cbd731864 Add RulesetInfo hashcode implementation and tidy up equality 2022-01-12 17:49:10 +09:00
Dean Herbert
605898ec53 Add missing "non-null" elements missing from some tests 2022-01-12 17:49:10 +09:00
Dean Herbert
6251713796 Add missing Ruleset in ReplayRecorder tests 2022-01-12 17:00:17 +09:00
Dean Herbert
31a3161189 Make tests compile again 2022-01-12 17:00:16 +09:00
Dean Herbert
213d89b479 Update null fallback cases involving OnlineID 2022-01-12 16:39:36 +09:00
Dan Balasescu
af9fad00c3 Merge branch 'master' into async-deadlock-safety 2022-01-10 16:11:09 +09:00
Dean Herbert
3cd996eb4a Merge branch 'master' into async-deadlock-safety 2022-01-07 17:28:59 +09:00
Dean Herbert
00177a3ae1 Update usages to new naming 2022-01-06 22:54:43 +09:00
Bartłomiej Dach
66613cbaa4
Wait for async continuation in score submission test
The previous assert step was optimistically assuming that the async
continuation that writes the value of
`FakeImportingPlayer.ImportedScore` always completes before it, but
that's not necessarily true even if the continuation is instant (it is
still subject to things like task scheduling and TPL thread pool
limits).

To ensure no spurious failures, swap out the assert step for an until
step instead.
2022-01-06 13:09:25 +01:00
Bartłomiej Dach
84765b99b3
Handle score submission request in submission test scene
Was previously not handled at all, therefore displaying request failures
in the test log output. While that was mostly a red herring and
shouldn't have caused any actual *test* failures, it is still better to
handle this explicitly in a realistic manner.
2022-01-06 12:57:26 +01:00
Dean Herbert
73b40e6833 Replace usage of .Result with .WaitSafelyForResult 2022-01-04 11:51:41 +09:00
Bartłomiej Dach
7cdba2f7c3
Add test coverage of score submission if player is exited during import 2022-01-03 22:00:47 +01:00
Dean Herbert
04d8fd3a58 Improve reliability of TestStoryboardSkipOutro
Aims to resolve failures as seen at
https://github.com/peppy/osu/runs/4677353822?check_suite_focus=true.

Have run quite a lot locally with no failures (while removing the skip step 100% fails).
2022-01-01 15:32:39 +09:00
Bartłomiej Dach
34b0101ff4
Add visual test coverage of "hidden by ruleset" combo option 2021-12-26 16:49:18 +01:00
Dean Herbert
f3f491374b Remove unused load checks 2021-12-22 18:17:00 +09:00
Bartłomiej Dach
54790bb758
Merge branch 'master' into fix-realm-post-storage-migration-failure 2021-12-17 00:19:46 +01:00
Dan Balasescu
eb3050b2ac Fix incorrect test 2021-12-14 15:08:00 +09:00
Dean Herbert
441b7baa93 Provide a realm factory to usages of ToLive/RealmLive 2021-12-14 14:26:34 +09:00
Dean Herbert
309290a3c9 Use new method in more places that can benefit from it 2021-12-13 16:56:43 +09:00
Dean Herbert
bff02bedbf Rename APIScoreInfo to APIScore 2021-12-10 16:11:49 +09:00
Dean Herbert
a969fe3ef8 Add test coverage showing intended UX of user's volume levels being retained when unmuting 2021-12-08 13:37:47 +09:00
Dean Herbert
9033169177
Merge pull request #15951 from peppy/fix-failing-recorder-tests-w
Fix intermittent test failures in scenes using `SpectatorClient`
2021-12-06 18:40:27 +09:00
Dan Balasescu
568364b604 Fix indentation 2021-12-06 17:38:57 +09:00
Dean Herbert
0d3d22d3e1 Update TestSceneReplayReocorder to be safer about disposal 2021-12-06 17:09:12 +09:00
Dean Herbert
50a5f52f92 Remove duplicated test scene (see TestSceeneReplayRecorder) 2021-12-06 17:09:11 +09:00
Dean Herbert
d58b85b381 Refactor TestScenSpectatorPlayback to properly clean up without async disposal 2021-12-06 17:09:11 +09:00
Dean Herbert
452fa93444 Merge branch 'master' into realm-integration/skins-rebase 2021-12-06 15:21:02 +09:00
Dean Herbert
1eed2436e6 Clean up unused resolved properties 2021-12-03 18:49:49 +09:00
Dean Herbert
f6a3709060 Store default skins to database 2021-11-29 18:28:25 +09:00
Dean Herbert
23146d59d1 Use ILive for current skin 2021-11-29 18:28:25 +09:00
Dean Herbert
f283770f34 Update mock RulesetInfo usage to set OnlineID instead of ID 2021-11-24 15:50:26 +09:00
Dean Herbert
b9923e5396 Remove subclassing of RulesetInfo 2021-11-22 16:39:17 +09:00
Dean Herbert
d7b178ea37 Update test scenes which should not handle key repeat 2021-11-18 13:13:36 +09:00
Dean Herbert
7c2e79f911 Update all simple cases of switching to IWorkingBeatmap 2021-11-17 20:56:57 +09:00
Dean Herbert
62d670a3ca Update DifficultyCalculator to take an IWorkingBeatmap 2021-11-15 19:16:48 +09:00
Dean Herbert
5be22916bb Add test coverage against frequency ramp increasing between fail animation and fail screen 2021-11-14 14:41:17 +09:00
Dean Herbert
6a098a8634 Rename BeatmapInfo.OnlineBeatmapID to OnlineID to match interface 2021-11-12 17:46:24 +09:00
Bartłomiej Dach
dbdbfc4723
Add failing test case for PP counter not initially updating 2021-11-11 16:33:31 +01:00
Bartłomiej Dach
9bad912dd0
Add failing test case 2021-11-11 13:22:06 +01:00
Bartłomiej Dach
03a315b9f5
Fix missing beatmap in replay download test scene
Was causing nullrefs in `GetDisplayTitle()`.
2021-11-09 14:33:06 +01:00
Bartłomiej Dach
74c37e248d
Merge branch 'master' into master 2021-11-09 08:40:52 +01:00
Dean Herbert
78aef9ce86
Merge branch 'master' into remove-stupid-weak-reference-bindable-events 2021-11-08 13:35:49 +09:00
Bartłomiej Dach
6d30248cef
Merge branch 'master' into use-class-rename 2021-11-07 15:41:00 +01:00
Dean Herbert
0ecf5f201c Rename User to APIUser and move to correct namespace 2021-11-07 11:26:01 +09:00
Dean Herbert
b8fb22b769 Add missing test coverage of score import process being tracked correctly 2021-11-06 16:45:55 +09:00
Chinmay Patil
77e853ce25 Optimized UR Counter and removed redundant code 2021-11-05 12:16:58 -06:00
Salman Ahmed
b723975767 Replace pragma with add/remove => throw 2021-11-05 09:10:38 +03:00
Salman Ahmed
af6ae1cce5 Remove hacky code with explicit pragma disable 2021-11-05 03:49:35 +03:00
Chinmay Patil
8923561b05 Removed Unnessicary class in the Test file, and optimized UR counter 2021-11-04 14:27:48 -06:00
Chinmay Patil
a76878e053 A bit more formatting 2021-11-04 09:52:16 -06:00
Chinmay Patil
c568888500 Edited to remove unessicary blank lines 2021-11-04 09:47:52 -06:00
Chinmay Patil
223efe55d5 Added Tests for UR counter 2021-11-04 09:23:29 -06:00
Dean Herbert
d1e6d1cb98 Update some other missed incorrect null/empty usages 2021-11-04 14:50:43 +09:00
Bartłomiej Dach
5dcff7d8b7
Merge branch 'master' into score-refactor/less-create-score-info 2021-11-01 11:41:20 +01:00
Bartłomiej Dach
6a44cf3ff1
Add missing beatmap spec in test scene 2021-11-01 09:44:08 +01:00
Dean Herbert
269a8df0ec Fix HasReplay not being corrrectly implemented by APIScoreInfo 2021-11-01 13:20:37 +09:00
Dean Herbert
17a83f701a Store mods as APIMods for the time being 2021-10-29 15:13:49 +09:00
Dean Herbert
1944c255a7 Implement score interfaces 2021-10-29 13:49:30 +09:00
Dean Herbert
817369903a Rename API score classes 2021-10-29 13:40:56 +09:00
Dean Herbert
6944151486 Apply batch fixing of built-in types using var 2021-10-27 13:04:41 +09:00
Bartłomiej Dach
95ed9a431c
Add test coverage for no submission for ruleset with null ID 2021-10-19 00:06:07 +02:00
Dan Balasescu
8643c725cc
Merge pull request #15175 from peppy/fail-animation-flash-controlled-by-setting
Don't flash screen red on fail if the user has disabled red tinting
2021-10-18 15:27:10 +09:00
Dean Herbert
762949f49f Don't flash screen red on fail if the user has disabled red tinting 2021-10-18 14:20:38 +09:00
Dean Herbert
0d992a0493 Add failing test showing epilepsy warning is not fading on early exit 2021-10-18 13:30:24 +09:00
Bartłomiej Dach
b34086a792
Add failing test case for incorrect RulesetID population in submission flow 2021-10-16 16:10:42 +02:00
Bartłomiej Dach
29ec498f6c
Add failing test case for player sending wrong ruleset ID to spectator server 2021-10-16 13:34:24 +02:00
Dan Balasescu
e49f1f6e6b
Merge branch 'master' into no-more-difficulty-control-points-info 2021-10-13 20:17:57 +09:00
Dean Herbert
26a1e40d24 Fix storyboard outro during fail test not being lenient enough 2021-10-13 13:48:57 +09:00
Bartłomiej Dach
8dcfc3dd7e
Replace no-op seeks with wait steps 2021-10-12 18:31:20 +02:00
Bartłomiej Dach
b1ad3161dd
Add failing test case for frame stable clock direction flip scenario 2021-10-11 21:25:02 +02:00
smoogipoo
bc37cb6f43 Merge branch 'master' into no-more-difficulty-control-points-info 2021-10-08 18:41:17 +09:00
Dan Balasescu
bece807857
Merge pull request #14980 from peppy/difficulty-move-to-beatmap
Copy `BaseDifficulty` to `Beatmap<T>` and move the majority of write operations across
2021-10-07 18:43:44 +09:00
Dean Herbert
697f53c445 Fix test failure due to reference of Player.Mods 2021-10-07 15:00:47 +09:00
Dean Herbert
b339c149d8 Copy BaseDifficulty to Beatmap<T> and move all write operations across 2021-10-06 15:10:45 +09:00
Dean Herbert
d6f25e07cc Add assert coverage of non-downloadable states 2021-10-06 05:49:18 +09:00
Dean Herbert
31c0c7a888 Remove pointless (and incorrect) click step 2021-10-06 05:49:04 +09:00
Dean Herbert
777763a550 Add more comprehensive (and failing) test coverage of replay download button 2021-10-06 05:29:00 +09:00
Dean Herbert
98fef6ece2 Handle judgement reverts with actual display updates 2021-10-05 19:08:30 +09:00
Dean Herbert
0859c336de Also dim counter during initial calculation phase 2021-10-05 17:24:36 +09:00
Dean Herbert
04538a69e4 Add assert tests 2021-10-05 17:10:24 +09:00
Dean Herbert
eeb5f3d519 Add basic test scene 2021-10-05 16:51:43 +09:00
smoogipoo
86df4919f7 Fix skin fallbacks test 2021-10-05 11:06:26 +09:00
smoogipoo
031c5a441e Merge branch 'master' into realtime-pp-display 2021-10-04 20:19:37 +09:00
Dean Herbert
853cf6feaa Rename last remaining BeatmapInfo Beatmap usage 2021-10-04 17:35:53 +09:00
Dean Herbert
32afd3f426 Replace all basic usages 2021-10-02 02:22:23 +09:00
smoogipoo
4e3d9da22d Increase test lenience 2021-10-01 22:58:40 +09:00
Dan Balasescu
625711e6d2
Merge pull request #14776 from peppy/fix-pause-with-audio-offset
Avoid accounting for the pause pitch adjust effect when "fixing" hardware offset adjustments
2021-09-28 18:44:22 +09:00
Dean Herbert
46bafb6252 Merge branch 'master' into no-more-difficulty-control-points-info 2021-09-28 13:53:56 +09:00
Bartłomiej Dach
761548e533
Merge branch 'master' into 14470-ur-not-updating 2021-09-20 22:07:33 +02:00
sh0ckR6
93ca615c02
Add tests for clearing HitErrorMeter
Works with both `BarHitErrorMeter` and `ColourHitErrorMeter`
2021-09-19 14:15:22 -04:00
Opelkuh
366dbf5c3d Add test for time jumps 2021-09-19 15:35:03 +02:00
Opelkuh
761da45f6a Revert af4c3727d77a16e2534df9bbf452336b5c544342 2021-09-19 14:00:56 +02:00
Opelkuh
1d7d779f66 Merge branch 'master' into add-legacy-star-particles 2021-09-19 04:34:35 +02:00
Opelkuh
3f8454cb76 Remove abstract from ParticleSpewer 2021-09-19 03:19:16 +02:00
Opelkuh
ef530ed87c Normalize particle velocity based on max duration 2021-09-18 23:45:58 +02:00
Opelkuh
846cde53b3 Add RelativePositionAxes support 2021-09-18 22:54:12 +02:00
Dean Herbert
45caeb84d3 Fix incorrect type specification when restoring bindable value 2021-09-17 16:28:47 +09:00
Dean Herbert
2c071a4d22 Add test coverage of pausing with a large audio offset 2021-09-17 15:43:38 +09:00
smoogipoo
f9d5abff8a Update with keybinding changes 2021-09-16 18:26:12 +09:00
Dean Herbert
2df4073946 SpawnParticle -> CreateParticle (and set time outside of virtual call)
Allows easier overriding (no need to call the `base.CreateParticle` call
and worry about overwriting the time value.
2021-09-16 16:52:46 +09:00
Dean Herbert
a2dcef7c0a Use local (or barebones BeatmapInfo) where feasible 2021-09-15 13:40:05 +09:00
smoogipoo
4b3ab42ffd Ensure beatmap is populated 2021-09-15 13:18:46 +09:00
Opelkuh
b009772206 Fix code inspect failure 2021-09-13 21:44:28 +02:00
Opelkuh
224244801f Remove Particles namespace 2021-09-13 21:44:27 +02:00
Opelkuh
7327603fc8 Fix outdated test step description 2021-09-13 21:44:26 +02:00
Opelkuh
cfcb46034c Remove ParticleJet 2021-09-13 21:44:23 +02:00
Opelkuh
328c9a5dd0 Change ParticleSpewer.Active to a Bindable 2021-09-13 21:44:18 +02:00
Opelkuh
1a60ce164e Add ParticleJet 2021-09-13 21:44:16 +02:00
Dean Herbert
9cf79a80c2 Replace many more calls to CreateAllMods with more specific calls 2021-09-10 12:04:55 +09:00
Dean Herbert
cf633973a9 Refactor exposed mod retrieval methods for better safety 2021-09-10 11:09:13 +09:00
Dean Herbert
766d789845 Rename ApproachRate to ScrollSpeed for now (to reduce complexity/confusion) 2021-09-06 21:06:13 +09:00
Dean Herbert
d587dc6203 Populate new approach rate where required 2021-09-03 17:11:12 +09:00
Dean Herbert
a3d9ab1e2e Move approach rate to EffectControlPoint 2021-09-03 16:58:16 +09:00
Dean Herbert
4dd60e3299 Merge branch 'master' into taiko-drum-refacor 2021-08-30 14:12:52 +09:00
Dean Herbert
f078a9d2bf Fix incorrect step type 2021-08-26 17:17:39 +09:00
Dean Herbert
6dcd9427ac Remove bindable usage in PathControlPoint
This is quite a breaking change, but I think it is beneficial due to the large amount of usage of this class.

I originally intended just to remove the allocations of the two delegates handling the `Changed` flow internally, but as nothing was really using the bindables for anything more than a general "point has changed" case, this felt like a better direction.
2021-08-26 12:33:53 +09:00
Dean Herbert
7e6e2a7e29 Remove unused assignment 2021-08-25 17:39:06 +09:00
Dean Herbert
fc85ae0e34 Add test coverage 2021-08-25 16:56:44 +09:00
smoogipoo
342f2d756d Fix test not working intermittently 2021-08-24 15:18:05 +09:00
Dan Balasescu
c95bf735fe
Merge branch 'master' into multiplayer-chat 2021-08-20 11:54:42 +09:00
Salman Ahmed
6ed3e469f7 Fix wrong attribute used for setup method 2021-08-18 06:50:01 +03:00
Salman Ahmed
f592350856 Fix config pollution in HUD overlay test scene 2021-08-18 04:59:08 +03:00
Dean Herbert
0d283aa6a3 Expose LocalUserPlaying from Player 2021-08-17 16:16:49 +09:00
Dean Herbert
8555a465ac
Merge pull request #14318 from bdach/editor-colours-save
Add support for saving edited combo colours and displaying them in composer
2021-08-16 17:07:53 +09:00
Salman Ahmed
9d99741663 Add failing test case 2021-08-16 06:56:59 +03:00
Bartłomiej Dach
6108451449
Retrieve separated skin instance from working beatmap for editing 2021-08-15 21:18:09 +02:00
Dean Herbert
e84224f64c Rename AddPlayer method now that there's no conflict 2021-08-12 16:20:37 +09:00
Dean Herbert
68dbbc17e8 Add support for automatic scrolling in gameplay leaderboard 2021-08-12 16:20:37 +09:00
Dean Herbert
f4591b01d7 Add test step to show leaderboard in expanded state by default 2021-08-12 15:21:00 +09:00
Dean Herbert
9b9dacf3fe Update usages of Drawable.Click() 2021-08-04 17:30:33 +09:00
smoogipoo
11b9ba86cb Fix TestSceneSpectator reusing cached spectator client 2021-08-03 18:28:08 +09:00
Salman Ahmed
6b8de2a10b Add test coverage for excluded cases in score submission 2021-07-11 03:35:35 +03:00
Dean Herbert
6ae631b03a Remove previous seek testing logic from common test scene 2021-07-09 16:52:03 +09:00
Dean Herbert
9083b28114 Add test coverage of seeking and pausing 2021-07-09 14:47:11 +09:00
Dean Herbert
e612d7568c
Merge pull request #13771 from LumpBloom7/volume-meter-switch
Add ability to navigate between volume meters via Alt+Left/Right arrows
2021-07-07 21:50:44 +09:00
Dan Balasescu
09a5516cc6
Merge pull request #13811 from smoogipoo/remove-unused-using
Remove unused usings
2021-07-07 16:30:07 +09:00
Dan Balasescu
05c4e0254b
Merge pull request #13796 from peppy/fix-skin-providing-container
Rewrite `SkinProvidingContainer`
2021-07-07 15:43:24 +09:00
smoogipoo
faf95c7161 Remove unused usings 2021-07-07 15:35:14 +09:00
Dean Herbert
35672f372a Shorten test beatmap to avoid timeouts in score submission test 2021-07-07 14:58:01 +09:00
Derrick Timmermans
4451598bcf
Fix remaining quality complaints 2021-07-06 15:17:19 +02:00
Derrick Timmermans
ffe18ebe51
Resolve build errors 2021-07-06 14:11:46 +02:00
Dean Herbert
d75d67577a Fix regressed tests 2021-07-06 17:37:34 +09:00
Derrick Timmermans
d495196b66
Share item cycling logic with GameplayMenuOverlay 2021-07-05 19:22:55 +02:00
PercyDan54
e1c646b9b2
Remove redundant arguments 2021-07-05 23:52:39 +08:00
Bartłomiej Dach
19f02dc3d9 Ensure tests with no token have at least one hit
Because submission can be prevented by both not having been issued a
correct submission token, and by not actually registering any hits in
gameplay, ensure that tests that don't receive a token register at least
one hit, to avoid potentially having test cases that test the "no token"
flow pass erroneously because they never had any hits in the first
place.
2021-07-04 14:34:52 +02:00
Dean Herbert
2a74b1c539 Add test coverage of new scenarios 2021-07-04 17:27:02 +09:00
Dean Herbert
30467191b2 Remove local handling of NoFail addition 2021-07-02 14:21:48 +09:00
Dean Herbert
a6323b7d87 Use APIException 2021-07-01 17:54:59 +09:00
Dean Herbert
74c63e15be Mark score failed on fail and exit 2021-07-01 17:48:09 +09:00
Dean Herbert
6e8d4e382e Add test coverage of token failure scenarios 2021-07-01 17:20:40 +09:00
Dean Herbert
397d2491b3 Update test scenes to actually cover submission logic 2021-07-01 16:55:44 +09:00
Dean Herbert
4a54e7cdb8 Add tests covering score preparation flow 2021-06-30 20:23:24 +09:00
smoogipoo
8e04d73b67 Merge branch 'rework-multiplayer-test-scenes' into spectator-start-at-end-2 2021-06-29 17:06:57 +09:00
smoogipoo
bcdf36e77b Merge branch 'master' into spectator-start-at-end-2 2021-06-29 15:53:58 +09:00
smoogipoo
7aefbe3da1 Move UserLookupCache inside dependencies 2021-06-25 17:37:02 +09:00
Salman Ahmed
37f7486fb1 Fix potential null reference in LINQ method 2021-06-22 12:25:29 +03:00
Salman Ahmed
31cbb36a64 Implement FindProvider and AllSources properly on all test ISkinSources 2021-06-22 12:03:14 +03:00
Dean Herbert
0ad189e357 Expose skin sources via ISkinSource and revert to consuming based on hierarchy 2021-06-22 16:19:55 +09:00
Dean Herbert
1b0aadcc6f Merge branch 'master' into transformers-per-skin 2021-06-22 16:03:15 +09:00
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
Christine Chen
493c095535 Fixed code style 2021-04-08 20:28:23 -04:00
Christine Chen
6bccb3aab6 Use DI to implement battery detection, add BatteryCutoff property
- Removed the Xamarin.Essentials package from osu.Game and added it to osu.iOS and osu.Android only.
- iOS and Android implementations use Xamarin.Essentials.Battery, while the Desktop implementation
only returns 100% battery for now.
- Added a BatteryCutoff property to PowerStatus so it can be different for each platform (default 20%, 25% on iOS)
2021-04-08 19:55:11 -04:00
Dean Herbert
8aff53172d Remove necessity for nested PassThroughInputManger 2021-04-08 15:18:31 +09:00
Christine Chen
0a6baf670e Send a warning notification if device is unplugged and low battery
- Uses Xamarin.Essentials in osu.Game.PlayerLoader to check battery level
- Encapsulated battery checking in the public BatteryManager class so battery level and plugged in status can be accessed and edited in TestPlayerLoader
- When checking battery level, catch NotImplementedException thrown by Xamarin.Essentials.Battery on non-mobile platforms
- Added visual unit tests for battery notification
  To mock battery status and level, we had to define a batteryManager object in TestPlayerLoader and add a new function ResetPlayerWithBattery()

Co-Authored-By: Marlina José <marlina@umich.edu>
2021-04-07 15:56:50 -04:00
Dean Herbert
beebdb0734 Clean up implementation 2021-04-05 22:30:51 +09:00
smoogipoo
c3c7c18549 Fix tests 2021-04-01 23:48:26 +09:00
smoogipoo
9e95441aa6 Rename Spectator -> SoloSpectator 2021-04-01 22:08:52 +09:00
Bartłomiej Dach
aec859b4d1 Merge branch 'master' into fix-unsafe-skinnable-sample-play 2021-03-18 19:51:46 +01:00
smoogipoo
7fa5fd5647 Update usages of config with framework changes 2021-03-17 16:10:16 +09:00
Dean Herbert
a5b3ac7ef8 Add failing test covering alpha commands proceeding non-alpha (but ignored) commands 2021-03-09 15:54:11 +09:00
smoogipoo
ee6a94273d Merge branch 'master' into fix-unsafe-skinnable-sample-play 2021-02-22 18:31:27 +09:00
Salman Ahmed
6bac83964a Merge branch 'master' into fix-pofl-on-cooldown 2021-02-22 10:03:27 +03:00
Dean Herbert
d2ec151c67 Add failing test for pausing when pause support is disabled 2021-02-20 14:20:13 +09:00
Salman Ahmed
f6c279ab00 Add assert ensuring player resumed properly 2021-02-19 11:45:45 +03:00
Salman Ahmed
fe5e45ea81 Move gameplay cursor outside instead and fix potential failure 2021-02-19 11:43:33 +03:00
Dean Herbert
52ebe34347 Update TestScenePause exit from fail test to actually fail 2021-02-19 17:26:26 +09:00
Dean Herbert
4c214b74ce Merge branch 'master' into fix-error-exit-during-results-transition 2021-02-19 17:13:55 +09:00
Salman Ahmed
772471a6d8 Add failing test case 2021-02-19 10:46:31 +03:00
Dean Herbert
00574a5288 Use ISample everywhere in Skin GetSample lookup path 2021-02-18 18:32:28 +09:00
Dean Herbert
2e646882fa Merge branch 'master' into non-concurrent-sample-playback 2021-02-15 21:22:21 +09:00
Dean Herbert
9ad38ab20e Move HubClientConnector retrieval to IAPIProvider 2021-02-15 16:43:56 +09:00
Dean Herbert
f664fca0dd Tidy up tests (and remove duplicate with new call logic) 2021-02-15 16:11:17 +09:00
Dean Herbert
4f264758a4 Add test coverage of pause from resume overlay 2021-02-15 15:57:36 +09:00
smoogipoo
c6ed3efa4a Merge branch 'master' into non-concurrent-sample-playback 2021-02-15 14:47:32 +09:00
Dean Herbert
25f5120fdf Add failing test coverage of user pausing or quick exiting during cooldown 2021-02-15 14:36:17 +09:00
Dean Herbert
a4dc544235 Refactor some shared code in TestScenePause 2021-02-15 14:24:08 +09:00
Dan Balasescu
34e600464b
Merge branch 'master' into abstract-hub-connection 2021-02-15 13:53:54 +09:00
smoogipoo
d3f0c0730d Merge branch 'master' into non-concurrent-sample-playback 2021-02-12 17:22:15 +09:00
Salman Ahmed
d3c1b47592 Replace nullable API with null connector instead 2021-02-11 12:34:39 +03:00
Dean Herbert
94f35825dd Update test to cover changed exit/pause logic
I think this makes more sense?
2021-02-09 17:29:30 +09:00
Salman Ahmed
a0ead38496 Prevent test spectator clients from attempting hub connections 2021-02-09 08:02:51 +03:00
Salman Ahmed
f04d6d5e5e Update hub clients with changes to connecotr 2021-02-09 08:02:32 +03:00
Salman Ahmed
f76f92515e Clean up spectator streaming client with new hub connector 2021-02-09 02:15:56 +03:00
Bartłomiej Dach
68c20a2a37 Allow autoplay score generation to access mod list 2021-02-07 18:35:34 +01:00
Mysfit
304264046b Added tests. 2021-01-24 17:46:54 -05:00
Bartłomiej Dach
7abe33ad0e Add failing test case 2021-01-21 00:04:15 +01:00
smoogipoo
8ffbcc9860 Fix test failures and general discrepancies 2021-01-20 14:05:35 +09:00
smoogipoo
de9d075f94 Initial sample + samplechannel rework 2021-01-19 17:11:40 +09:00
Dean Herbert
d023ad8ad1 Remove assert messages 2021-01-15 15:18:29 +09:00
Dean Herbert
51255033e2 Update some missed usages of KeyBindingContainer in tests 2021-01-15 14:57:01 +09:00
Roman Kapustin
0ea4e221b2 Merge branch 'master' into net5.0 2021-01-14 14:02:51 +03:00
mcendu
17abe90c27 move SkinnableHealthDisplay
Similar components are in osu.Game.Screens.Play.HUD while this is not
2020-12-31 20:23:13 +08:00
Dean Herbert
92d74a9343 Fix potential nullref in test scene 2020-12-28 20:48:14 +09:00
Dean Herbert
6254907ef9 Move multiplayer leaderboard test to correct namespace 2020-12-28 20:31:08 +09:00
Dean Herbert
966a2151e3 Ensure the previous leaderboard is removed 2020-12-26 17:55:24 +09:00
Dean Herbert
2599e95335 Add test coverage 2020-12-26 12:11:19 +09:00
Dean Herbert
ff57562956 Fix multiplayer leaderboard not unsubscribing from quit users 2020-12-26 11:35:31 +09:00
Dean Herbert
fa14438671
Merge pull request #11285 from peppy/resort-leaderboard-less
Re-sort the leaderboard order a maximum of once a second
2020-12-25 00:05:13 +09:00
Dean Herbert
d0e8347968 Change asserts into until steps 2020-12-24 22:28:25 +09:00
Dean Herbert
eb795a2127 Move all endpoint information to a configuration class 2020-12-24 17:58:38 +09:00
Dean Herbert
8ac76bd524
Merge pull request #11199 from smoogipoo/refactor-player-score-creation
Asyncify player score creation and submission
2020-12-20 17:30:11 +09:00
Bartłomiej Dach
f827b6c030 Use terser dictionary initialiser syntax 2020-12-19 21:26:40 +01:00
Bartłomiej Dach
631a0cea41 Fix intended random factor not being random in test 2020-12-19 21:25:04 +01:00
Dean Herbert
b3bff281ce
Merge branch 'master' into spectator-driven-leaderboard 2020-12-20 01:13:59 +09:00
Salman Ahmed
228acf25a7 Add test case creating leaderboard scores with existing users 2020-12-18 13:13:31 +03:00
smoogipoo
2958cab239 Remove GotoRanking 2020-12-18 17:47:33 +09:00
Dean Herbert
470c68d6a5 Merge branch 'gameplay-leaderboard-update' into spectator-driven-leaderboard 2020-12-18 17:30:21 +09:00
Dean Herbert
668536ce56 Fix vertical size potentially changing during relayout 2020-12-18 17:25:48 +09:00
Dean Herbert
bca4d83af7 Revert previous player add flow via interface 2020-12-18 17:19:55 +09:00
Dean Herbert
5e83605026 Merge branch 'gameplay-leaderboard-update' into spectator-driven-leaderboard 2020-12-18 17:07:43 +09:00
Dean Herbert
157a72ec5d Revert previous player add flow via interface 2020-12-18 17:07:38 +09:00
Dean Herbert
96f23a1135 Merge branch 'master' into gameplay-leaderboard-update 2020-12-18 16:56:21 +09:00
Dean Herbert
869cac819d Merge branch 'gameplay-leaderboard-update' into spectator-driven-leaderboard 2020-12-18 16:55:44 +09:00
smoogipoo
2db7433c0b Refactor player score creation and submission process 2020-12-18 16:51:59 +09:00
Dean Herbert
99f2032fdf
Merge branch 'master' into gameplay-leaderboard-update 2020-12-18 16:44:52 +09:00
Dean Herbert
ceb2e4762d Add test covering a more consistent spread of player scores 2020-12-18 16:20:42 +09:00
Salman Ahmed
a8abefcd66 Make GameplayLeaderboardScore a model class 2020-12-18 03:34:33 +03:00
Salman Ahmed
0faf3fdfd3 Update gameplay leaderboard scores with the new design 2020-12-17 15:19:10 +03:00
Dean Herbert
cc3dddf59f Fix test scene crashing on second run of SetUp
Also correctly support LongRunningLoad
2020-12-17 16:02:07 +09:00
Dean Herbert
cda3bd2017 Rename test scene to match tested class name 2020-12-16 16:22:47 +09:00
Dean Herbert
6bce587b59 Pass users in via constructor and correctly unbind on disposal 2020-12-16 16:20:29 +09:00
Dean Herbert
c1ba0f4642 Use a local lookup cache for better usernames 2020-12-16 16:20:29 +09:00
Dean Herbert
09d0ceb766 Add testing setup to get a better visual idea of how scoreboard will work
fixup! Add method to ScoreProcessor to calculate score and accuracy from statistics
2020-12-16 16:20:29 +09:00
Dean Herbert
fb795f6bfd Add initial hook-up to spectator backend 2020-12-16 16:20:29 +09:00
Dean Herbert
88b3bf06e8 Merge branch 'master' into add-bundle-header 2020-12-16 13:40:15 +09:00
Dean Herbert
b5ab400ad7 Fix test filename not matching updated class name 2020-12-15 15:44:43 +09:00
Dean Herbert
8b68ccc0ff Rename class and move inside HUD namespace 2020-12-15 15:34:11 +09:00
Dean Herbert
8362ad37e3 Bring up-to-date with code changes 2020-12-15 15:22:14 +09:00
Dean Herbert
70e5d4495a
Merge branch 'master' into ingame-leaderboard-general-implementation 2020-12-15 15:14:56 +09:00
Dean Herbert
64a2526678 Add header class and basic flow for propagating data updates 2020-12-14 17:33:23 +09:00
Dean Herbert
1793385e96 Pass a score to the replay recorder to allow reading more general scoring data 2020-12-14 16:52:14 +09:00
Dean Herbert
53da137425
Merge branch 'master' into net5.0 2020-12-10 17:14:21 +09:00
Dean Herbert
31cfaefdeb Move private functions in line with others 2020-11-30 15:39:43 +09:00
Dean Herbert
809caaa44c Use standard switch syntax (preferred for now) 2020-11-30 15:39:08 +09:00
Dan Balasescu
0c36a3c263
Merge branch 'master' into pool-scrolling 2020-11-30 14:04:54 +09:00
Bartłomiej Dach
9bf70e4e97 Add slider test step for visual inspection purposes 2020-11-28 20:32:08 +01:00
Bartłomiej Dach
8e0f525588 Rewrite existing test scene somewhat 2020-11-28 20:29:35 +01:00
ekrctb
8f5129323d Merge branch 'master' into pool-scrolling 2020-11-27 13:12:05 +09:00
ekrctb
57454bbb1c Remove hitObject argument from OnApply and OnFree 2020-11-27 10:13:05 +09:00
ekrctb
eae33fe74a Fix format 2020-11-26 14:16:33 +09:00
ekrctb
0817dae86c Add failing test to check non-pooled lifetime 2020-11-26 12:35:49 +09:00
ekrctb
ec92545d7a fix indent 2020-11-24 18:56:05 +09:00
ekrctb
cabc8aa63b Revert "Simplify ScrollingHitObjectContainer logic"
This reverts commit b4cc39149c117e6a0e95ee917a67cec8ba723d06.
2020-11-24 18:56:05 +09:00
ekrctb
8f39b54e58 Simplify ScrollingHitObjectContainer logic 2020-11-24 18:56:05 +09:00
ekrctb
df3844cdbb Add failing tests for pooling scrolling playfield 2020-11-24 18:56:05 +09:00
Roman Kapustin
1feda1152d Fix InspectCode warnings 2020-11-21 02:06:20 +03:00
Dean Herbert
dd5b90cf6c Add test coverage of animation restarting 2020-11-19 18:08:54 +09:00
Dean Herbert
fe025043bd Make test run multiple times 2020-11-19 17:16:29 +09:00
Dean Herbert
9df93e1f18 Add basic implementation of particle explosion
Using drawables still, just to get things in place and setup the
structure
2020-11-19 14:54:33 +09:00
smoogipoo
f5e12b9d7c Adjust TestScenePlayerLoader for safety 2020-11-16 23:53:54 +09:00
Bartłomiej Dach
42de4437cc Add failing test case 2020-11-15 19:43:42 +01:00
smoogipoo
b4470b0152 Merge branch 'fix-broken-test' into osu-hitobject-pooling-playfield 2020-11-14 01:50:13 +09:00
smoogipoo
b4d4f5456c Fix broken fail judgement test 2020-11-14 01:49:48 +09:00
smoogipoo
5cbf6252b7 Merge branch 'hitobject-pooling-in-playfield' into osu-hitobject-pooling-playfield 2020-11-14 01:03:11 +09:00
smoogipoo
c71b237c4f Merge all pooling support into Playfield 2020-11-14 00:59:08 +09:00