1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-16 00:02:54 +08:00
osu-lazer/osu.Game.Tests/Resources
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
..
beatmap-version.osu Preserve the beatmap's version 2018-10-23 14:59:21 +09:00
comments.osu Fix commented line check not working with whitespace 2019-05-14 16:16:55 +09:00
controlpoint-custom-samplebank.osu Fix incorrect controlpoint being applied to samples 2018-12-03 17:21:27 +09:00
corrupted-header.osu Implement fallback decoder registration 2019-09-15 01:28:07 +02:00
empty-line-instead-of-header.osu Implement fallback decoder registration 2019-09-15 01:28:07 +02:00
empty-lines-at-start.osu Implement fallback decoder registration 2019-09-15 01:28:07 +02:00
Himeringo - Yotsuya-san ni Yoroshiku (RLC) [Winber1's Extreme].osu expanded BeatmapDecoder tests, added StoryboardDecoder tests 2017-12-02 15:28:00 +01:00
hitobject-combo-offset.osu Add more comprehensive tests 2018-08-17 10:04:00 +09:00
hitobject-custom-samplebank.osu Implement per-hitobject custom sample banks 2018-07-20 15:12:44 +09:00
hitobject-file-samples.osu Fix volume not being considered for file samples 2019-03-05 18:21:29 +09:00
hitobject-no-addition-bank.osu Fix sample additions not falling back to non-addition bank 2018-11-05 17:35:24 +09:00
invalid-events.osu shorten tests and rename 2019-08-06 12:35:18 +09:00
Kozato snow - Rengetsu Ouka (_Kiva) [Yuki YukI].osu Add storyboard test case but disable for now 2017-12-07 12:02:34 +09:00
missing-header.osu Implement fallback decoder registration 2019-09-15 01:28:07 +02:00
no-empty-line-after-header.osu Implement fallback decoder registration 2019-09-15 01:28:07 +02:00
overlapping-control-points.osu More tests to showcase failures 2019-05-14 10:13:42 +09:00
skin-empty.ini Remove unused pieces of ini 2019-02-05 18:08:27 +09:00
skin.ini Add extra legacy skin parsing tests 2019-09-03 18:59:23 +09:00
slider-samples.osu Fix slider nodes using the wrong samples 2018-10-16 17:10:24 +09:00
Soleily - Renatus (Gamu) [Insane].osu Fix colours with alpha components not being parsed 2018-10-05 11:19:01 +09:00
TestResources.cs Rename file to match class 2019-01-28 18:41:57 +09:00
variable-with-suffix.osb Replace variables into the entire line 2018-08-14 18:15:09 +09:00
Within Temptation - The Unforgiving (Armin) [Marathon].osu Add parity checking OsuJsonDecoder test cases 2017-12-07 11:11:38 +09:00