1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-16 13:17:26 +08:00
Commit Graph

306 Commits

Author SHA1 Message Date
Dean Herbert
51a353e12d Rename BeatmapInfo.Version to DifficultyName to match underlying interface 2021-11-11 17:20:53 +09:00
Dean Herbert
ed07ee8c61 Update all existing usages of AuthorString/AuthorId
Unfortunately the getters need to be left in place else EF breaks.
2021-11-04 18:59:37 +09:00
Dean Herbert
09f9731d74 Add temporary disable of failing r# inspection 2021-11-04 15:09:04 +09:00
Dean Herbert
6944151486 Apply batch fixing of built-in types using var 2021-10-27 13:04:41 +09:00
Dean Herbert
aa0762ebe2 Add test coverage for failing slider case 2021-10-26 17:35:03 +09:00
smoogipoo
bc37cb6f43 Merge branch 'master' into no-more-difficulty-control-points-info 2021-10-08 18:41:17 +09:00
Dean Herbert
b339c149d8 Copy BaseDifficulty to Beatmap<T> and move all write operations across 2021-10-06 15:10:45 +09:00
Bartłomiej Dach
281a3a0cea
Add test case for legacy loop count behaviour 2021-10-02 18:40:41 +02: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
cd181452be
Add decoding support for SamplesMatchPlaybackRate 2021-09-12 16:45:27 +02:00
Dean Herbert
5f61936700 Update legacy encoder tests to only compare pieces we care about 2021-09-10 17:29:09 +09:00
Dean Herbert
1952ebece9 Update tests to use more correct control point definitions 2021-09-06 22:04:51 +09:00
Dean Herbert
8ffcea2e51 Remove unnecessary null checks 2021-09-06 21:32:43 +09:00
Dean Herbert
3c7a34bdbd Move mania-specific conversion to converter 2021-09-06 21:06:13 +09:00
Dean Herbert
b2a14b13dc Update outdated tests 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
071c56e90b Update usages of DifficultyPointAt 2021-09-03 16:58:16 +09:00
Dean Herbert
eb21ed08f8 Update test to only compare HitObjects 2021-08-31 14:51:14 +09:00
Dean Herbert
ce0d7cce2d Merge branch 'remove-ijsonserializable' into no-more-sample-control-points-info 2021-08-31 14:40:54 +09:00
Dean Herbert
a2cff75fc0 Fix editor not cloning control points as expected 2021-08-30 21:55:08 +09:00
Dean Herbert
2115d6f93e Add test coverage of legacy sample point recreation 2021-08-30 17:14:53 +09:00
Dean Herbert
ccacf56dd8 Move to legacy namespace 2021-08-30 17:14:53 +09:00
Dean Herbert
7257aae7f2 Move samples to LegacyControlPointInfo 2021-08-30 17:14:53 +09:00
Dean Herbert
4adfe9a6dc Add test coverage of double-convert stability 2021-08-30 15:30:04 +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
Bartłomiej Dach
a6c2cbd2e5
Add countdown settings to beatmap info model 2021-08-24 21:55:10 +02:00
Bartłomiej Dach
6108451449
Retrieve separated skin instance from working beatmap for editing 2021-08-15 21:18:09 +02:00
Dean Herbert
399c3b0be8 Rename property, reword xmldoc and improve readability of update code 2021-07-21 17:32:56 +09:00
Salman Ahmed
9d92b795fa Revert making ComboOffsets legacy and define BeatmapSkinComboIndex instead 2021-07-20 14:15:43 +03:00
Salman Ahmed
554652b033 Merge branch 'refactor-combo-colour-retrieval' into legacy-beatmap-combo-offset 2021-07-20 10:11:52 +03:00
Salman Ahmed
4f6de6fdc6 Implement GetSkin() for other working beatmaps 2021-05-21 20:21:29 +03:00
Salman Ahmed
bf6e98345c Remove and update pre-existing test cases 2021-05-05 14:23:18 +03:00
Naxess
400f8b3938 Add GetStream to IWorkingBeatmap
This is necessary to obtain the filesize of the audio and background files.
2021-04-17 17:47:13 +02:00
Leon Gebler
dd902441b0 Add tests for consecutive perfect-curve segments 2021-04-06 13:32:17 +02:00
smoogipoo
9c1320e18b Add test 2021-04-06 14:34:26 +09:00
smoogipoo
42e816fcae Add failing tests 2021-04-05 17:48:29 +09:00
Bartłomiej Dach
d7e5a21213 Add failing test case 2021-01-31 15:43:58 +01:00
Dean Herbert
20d04d6933 Fix Storyboard's FirstEventTime not finding the true earliest event 2021-01-04 15:16:01 +09:00
Dean Herbert
cb7df0fe11 Add failing test for storyboard start time ordering 2021-01-04 15:15:23 +09:00
Dean Herbert
fed4accfea Update tests to refect new mappings 2020-10-30 12:12:30 +09:00
Dean Herbert
88ffcb9234 Update EndsWith usages 2020-10-16 12:58:34 +09:00
smoogipoo
58194b4a31 Fix incorrect blank lines 2020-10-12 19:36:35 +09:00
smoogipoo
36a8f61d26 Add failing test for implicit segments 2020-10-12 18:58:07 +09:00
smoogipoo
e70d261474 Add failing test 2020-10-12 18:03:41 +09:00
Dean Herbert
3e7f70e225 Add failing test covering post-converted json serializing 2020-09-14 17:32:32 +09:00
Dan Balasescu
e17ccdfe9f
Merge branch 'master' into combo-colors 2020-09-07 13:55:41 +09:00
Bartłomiej Dach
2b16e25353 Revert unnecessary passing down of tuple in test 2020-09-06 18:44:41 +02:00
Craftplacer
2a7259f7aa Update LegacyBeatmapEncoderTest.cs 2020-09-01 18:15:46 +02:00
Craftplacer
c2ade44656 Change types back 2020-09-01 17:58:06 +02:00
Dan Balasescu
f08e7828da
Merge branch 'master' into beatmap-track-rework 2020-09-01 16:06:38 +09:00
Craftplacer
a893aa8af8 Cut down changes done to LegacyBeatmapEncoderTest 2020-08-31 17:24:24 +02:00
Craftplacer
07f6a68179 Update LegacyBeatmapEncoderTest.cs 2020-08-30 21:13:06 +02:00
Craftplacer
43d144b7c0 Remove empty argument list 2020-08-30 16:23:00 +02:00
Craftplacer
337037ab3b Make test load actual beatmap's skin configuration 2020-08-30 16:08:52 +02:00
Craftplacer
919d7b7785 Remove redundant call to TestResources 2020-08-30 16:08:13 +02:00
Craftplacer
e428144f73 Use IBeatmapSkin 2020-08-30 11:34:50 +02:00
Craftplacer
00b68b050c Merge remote-tracking branch 'upstream/master' into combo-colors 2020-08-30 10:16:38 +02:00
Craftplacer
da5853e7eb Create a new BeatmapSetInfo when setting files 2020-08-29 10:25:43 +02:00
Bartłomiej Dach
37387d7741 Add assertions to existing test to cover bug 2020-08-27 18:18:30 +02:00
Bartłomiej Dach
9d70b4af09 Add failing test case 2020-08-27 18:06:59 +02:00
Craftplacer
492be0e016 Fix formatting 2020-08-23 15:23:10 +02:00
Craftplacer
e6646b9877 Resolve review comments 2020-08-23 15:08:02 +02:00
Craftplacer
cfd82104db Minor changes and improvements 2020-08-16 01:00:28 +02:00
Craftplacer
434354c44c Properly implement SkinConfiguration equality 2020-08-16 00:21:26 +02:00
Craftplacer
3a6e378a08 Change skin testing 2020-08-15 23:41:53 +02:00
Craftplacer
0e8411f76c Rename fields and make readonly 2020-08-15 22:06:26 +02:00
Craftplacer
c4a7fac760 Add required parameters and other various changes 2020-08-15 22:03:24 +02:00
Craftplacer
69590113d6 Temporary changes 2020-08-12 06:40:21 +02:00
smoogipoo
e87f50f74f Rename method 2020-08-07 22:31:41 +09:00
Dean Herbert
6b5b215299 Split out IHasPath from IHasCurve to better define hitobjects 2020-05-26 17:44:47 +09:00
Bartłomiej Dach
6e27247cdf Adjust storyboard decoder test in line with changes 2020-05-19 19:47:50 +02:00
smoogipoo
ca6e6f7496 Add required parameter for android build 2020-05-11 17:26:11 +09:00
Dean Herbert
7f7d5e6617 Fix apparently required argument 2020-05-11 16:37:08 +09:00
Dean Herbert
93440874db Refactor beatmap encoder test to be a bit easier to understand 2020-05-11 16:30:54 +09:00
smoogipoo
1e7e7417ed Fix testing relying on control point order 2020-04-22 09:04:44 +09:00
smoogipoo
8ea76244a2 Fix only single beatmap being tested 2020-04-22 09:04:44 +09:00
smoogipoo
9713d90388 Always apply beatmap converter/processor 2020-04-22 09:04:44 +09:00
smoogipoo
72fb34f82c Fix overriding control points incorrectly 2020-04-21 14:19:05 +09:00
Will Kennedy
877bd7837a Changed variable names 2020-04-02 22:02:57 -04:00
Will Kennedy
c042e709a5 Fix GetDecoder getting fallback decoder too often 2020-04-02 20:43:54 -04:00
Dean Herbert
6d81da5419
Merge branch 'master' into video-offset 2020-03-25 11:28:59 +09:00
Dean Herbert
368bf58521 Rename and make fields readonly 2020-03-25 11:08:08 +09:00
Dan Balasescu
1d556bfc5f
Merge branch 'master' into video-offset 2020-03-11 15:13:18 +09:00
smoogipoo
7a9c85d69d Fix now failing test due to parsing ranges 2020-03-10 12:21:40 +09:00
voidedWarranties
48282dea8b Remove individual setting to disable videos, fix tests 2020-03-07 22:08:38 -08:00
Dean Herbert
0677f746aa Provide the ruleset to converter classes 2019-12-24 16:02:16 +09:00
smoogipoo
705cdde148 Fix incorrect test 2019-12-20 16:42:45 +09:00
smoogipoo
c976427206 Refactor test to be more complete 2019-12-13 19:00:28 +09:00
smoogipoo
be000e13e4 Implement initial legacy beatmap encoding support 2019-12-12 18:34:40 +09:00
Huo Yaoyuan
d60493a961 Use discards. 2019-11-12 20:03:21 +08:00
Huo Yaoyuan
144812669d Use static local functions. 2019-11-12 19:56:54 +08:00
smoogipoo
cf2d885099 Fix control points being flushed too late 2019-10-30 18:02:18 +09:00
Dan Balasescu
514c9f1eef
Merge branch 'master' into bindable-control-points 2019-10-30 16:20:54 +09:00
Dean Herbert
7c6ccce3ba Add tests covering precision case 2019-10-29 18:02:30 +09:00
Dean Herbert
8baf569f59 Remove necessity of AutoGenerated flag 2019-10-25 19:58:42 +09:00
Bartłomiej Dach
76c74719a4 Add test for fallback decoder overwrite
LegacyDifficultyCalculatorBeatmapDecoder was registered as a fallback
decoder in commit ffde389 for future use in the server-side difficulty
calculation components. Due to the pre-existing fallback registrations
this causes a runtime crash when the diffcalc components are started.
Add a test reproducing this scenario to prevent the issue from
resurfacing in the future.
2019-10-04 17:00:51 +02:00
Bartłomiej Dach
86588778b1 Implement fallback decoder registration
After the preparatory introduction of LineBufferedReader, it is now
possible to introduce registration of fallback decoders that won't drop
input supplied in the first line of the file.

A fallback decoder is used when the magic in the first line of the file
does not match any of the other known decoders. In such a case,
the fallback decoder is constructed and provided a LineBufferedReader
instance. The process of matching magic only peeks the first non-empty
line, so it is available for re-reading in Decode() using ReadLine().

There can be only one fallback decoder per type; a second attempt of
registering a fallback will result in an exception to avoid bugs.

To address the issue of parsing failing on badly or non-headered files,
set the legacy decoders for Beatmaps and Storyboards as the fallbacks.

Due to non-trivial logic, several new, passing unit tests with possible
edge cases also included.
2019-09-15 01:28:07 +02:00
Bartłomiej Dach
11eda44d34 Migrate decoding to line-buffered reader
Migrate all usages of StreamReader in the context of decoding beatmaps,
storyboards or skins to the new LineBufferedReader.
2019-09-15 01:28:07 +02:00
Dean Herbert
f925e781a9 Refactor HitWindows for legibility 2019-09-06 15:24:14 +09:00
iiSaLMaN
94b5caf740 Fix build issues 2019-08-23 15:18:56 +03:00
David Zhao
15a592e25e Just assert doesn't throw and don't catch at LegacyDecoder 2019-08-07 19:25:40 +09:00
David Zhao
497d2cb677 shorten tests and rename 2019-08-06 12:35:18 +09:00
David Zhao
2c32d886d7 Add better asserts 2019-08-06 10:39:54 +09:00
David Zhao
b8c38d4dfd remove unnecessary assert 2019-08-06 10:36:26 +09:00
David Zhao
a5c17ae26d Don't use GetDecoder 2019-08-06 10:14:36 +09:00
David Zhao
cd6fe91882 Log error for invalid events 2019-08-06 10:05:21 +09:00
Dean Herbert
60ea3d4e1a Fix skinning support for combobreak 2019-06-30 21:58:30 +09:00
Dean Herbert
58efa7a177
Merge pull request #4729 from peppy/fix-control-point-ordering
Fix control points with same timestamp potentially being parsed incorrectly
2019-05-21 15:33:27 +09:00
smoogipoo
7e38aabe75 Remove equivalence check from controlpoint parsing 2019-05-21 14:27:41 +09:00
smoogipoo
e3ae858c87 Adjust testcase to avoid potential rounding issues 2019-05-21 14:01:41 +09:00
smoogipoo
f1c9073338 Fix commented line check not working with whitespace 2019-05-14 16:16:55 +09:00
smoogipoo
19bc6b72cc More tests to showcase failures 2019-05-14 10:13:42 +09:00
smoogipoo
7aa10956b5 Add unit test 2019-05-14 09:46:42 +09:00
smoogipoo
d7c09e7dbd Merge remote-tracking branch 'origin/master' into fix-new-inspections
# Conflicts:
#	osu.Game.Rulesets.Catch/Judgements/CatchDropletJudgement.cs
#	osu.Game.Rulesets.Catch/Judgements/CatchJudgement.cs
#	osu.Game.Rulesets.Mania/Scoring/ManiaScoreProcessor.cs
#	osu.Game.Rulesets.Osu/Replays/OsuAutoGenerator.cs
#	osu.Game.Rulesets.Osu/UI/Cursor/CursorTrail.cs
#	osu.Game.Tests/Visual/SongSelect/TestCaseBeatmapScoresContainer.cs
#	osu.Game/Graphics/OsuFont.cs
#	osu.Game/Online/API/Requests/Responses/APILegacyScoreInfo.cs
#	osu.Game/Overlays/Profile/Header/BadgeContainer.cs
#	osu.Game/Overlays/Profile/ProfileHeader.cs
#	osu.Game/Screens/Select/PlaySongSelect.cs
#	osu.Game/Skinning/LegacySkinDecoder.cs
2019-05-07 13:20:17 +09:00
smoogipoo
0222424aef Make mods IReadOnlyList<Mod> gamewide
Prevents potential multiple evaluations of enumerable.
2019-04-10 17:20:36 +09:00
smoogipoo
c584967eb1 Remove mods from workingbeatmap 2019-04-09 12:59:32 +09:00
Dean Herbert
c39c37a18d Apply more missed cases 2019-04-01 12:44:46 +09:00
Dean Herbert
4c77899738 Add storyboard ordering test 2019-03-26 16:37:52 +09:00
Dean Herbert
0241148385 Add extensive tests 2019-03-13 11:30:38 +09:00
Dean Herbert
cfac47413c Disable failing tests temporarily 2019-03-08 10:42:25 +09:00
smoogipoo
a08086cc8a Fix volume not being considered for file samples 2019-03-05 18:21:29 +09:00
Dean Herbert
628b3e1119 Move osu-resources to nuget 2019-01-28 18:33:39 +09:00
Dean Herbert
8617aaa2a7 Update licence header (and remove year) 2019-01-24 17:43:03 +09:00
Unknown
6eff79913b remove blank lines 2019-01-11 10:34:56 +01:00
smoogipoo
eb88768bd0 Fix incorrect controlpoint being applied to samples 2018-12-03 17:21:27 +09:00
smoogipoo
f27bd3ef3e OpenTK -> osuTK 2018-11-20 17:14:59 +09:00
smoogipoo
ace1dce281 Merge remote-tracking branch 'origin/master' into fix-slider-samples
# Conflicts:
#	osu.Game.Tests/Beatmaps/Formats/LegacyBeatmapDecoderTest.cs
2018-11-05 18:10:22 +09:00
smoogipoo
92d570342c Fix sample additions not falling back to non-addition bank 2018-11-05 17:35:24 +09:00
smoogipoo
a4caaf56ef Merge remote-tracking branch 'origin/master' into fix-slider-samples
# Conflicts:
#	osu.Game.Tests/Beatmaps/Formats/LegacyBeatmapDecoderTest.cs
#	osu.Game/Rulesets/Objects/Legacy/Catch/ConvertHitObjectParser.cs
#	osu.Game/Rulesets/Objects/Legacy/ConvertHitObjectParser.cs
#	osu.Game/Rulesets/Objects/Legacy/Mania/ConvertHitObjectParser.cs
#	osu.Game/Rulesets/Objects/Legacy/Osu/ConvertHitObjectParser.cs
#	osu.Game/Rulesets/Objects/Legacy/Taiko/ConvertHitObjectParser.cs
2018-11-05 16:38:28 +09:00
smoogipoo
8a2a6a3ecb Preserve the beatmap's version 2018-10-23 14:59:21 +09:00
smoogipoo
47be95ce0b Fix slider nodes using the wrong samples 2018-10-16 17:10:24 +09:00
smoogipoo
cb1703c6e2 Fix colours with alpha components not being parsed 2018-10-05 11:19:01 +09:00
smoogipoo
557a2ee39d Add more comprehensive tests 2018-08-17 10:04:00 +09:00
smoogipoo
05b5144dac Add parsing test 2018-08-15 13:36:22 +09:00
smoogipoo
e360985d73 Replace variables into the entire line 2018-08-14 18:15:09 +09:00
smoogipoo
c087a73f40 Implement per-hitobject custom sample banks 2018-07-20 15:12:44 +09:00
smoogipoo
967d0c3c72 Adjust testcase 2018-07-20 15:12:04 +09:00
smoogipoo
65d351c31a Fix failing test cases 2018-07-10 16:26:04 +09:00
smoogipoo
c1b8799253 Add simple testcase 2018-07-02 14:40:43 +09:00
smoogipoo
c78bfbfa55 Fix failing json conversion testcases 2018-07-02 13:34:19 +09:00
smoogipoo
9fd9af22f0 Remove unused using 2018-06-28 18:40:12 +09:00
smoogipoo
94f1b2eeb8 Only custom sample banks > 1 modify the filename 2018-06-28 18:29:17 +09:00
smoogipoo
3a9a82c80c Add back legacy custom sample banks 2018-06-28 18:29:12 +09:00
Dean Herbert
955a78e76d Remove OnlineBeatmapSetID from BeatmapInfo
It should now be retrieved via the linked BeatmapSetInfo
2018-06-08 15:26:27 +09:00
Dean Herbert
8220e0c79a Remove OnlineBeatmapSetID from BeatmapMetadata 2018-06-08 12:46:34 +09:00
smoogipoo
3e7fa45ad1 Fix tests 2018-05-11 16:13:00 +09:00
Dean Herbert
de424648d2 Update to .NET 4.7.1
Resolves #2368.
2018-04-20 14:46:52 +09:00
Dean Herbert
32a74f95a5 Normalize all the line endings 2018-04-13 18:26:38 +09:00
Dean Herbert
9a0fc9e29a Move combo colours completely out of beatmap 2018-03-20 16:24:06 +09:00
Dean Herbert
e43de68ad3 Move colour parsing to LegacyDecoder 2018-03-13 19:13:50 +09:00