Dean Herbert
a06cb54732
Merge branch 'master' into beatmap-parsing-fallback-v2
2019-09-20 15:28:08 +09:00
Dean Herbert
ddff9882cf
Fix importing archives which are nested in a single folder within a zip
2019-09-19 19:11:04 +09: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
Dean Herbert
9e1cb90dd8
Remove existing argument for ItemAdded event
...
For all usages, it looks like this was unnecessary.
2019-06-26 11:40:41 +09:00
Dean Herbert
12aa264657
Consolidate tests and check for file reference counts
2019-06-10 18:35:23 +09:00
Dean Herbert
28b2a516e3
Ensure exception is only thrown once on rollback
2019-06-10 18:13:33 +09:00
Dean Herbert
dcdb806120
Catch newly thrown exception in test
2019-06-10 17:26:56 +09:00
Dean Herbert
5b75060b94
Add test for rollback logic correctly dereferencing files
2019-06-10 16:45:45 +09:00
smoogipoo
f090e292c9
Move ArchiveModelManager import process to async flow
2019-06-10 13:42:22 +09:00
smoogipoo
00191ca940
Actually set the beatmap difficulty
2019-03-12 15:24:35 +09:00
smoogipoo
059397ac50
Remove unnecessary early return for maching beatmap IDs
2019-03-12 14:40:13 +09:00
Dean Herbert
d0ae75af6e
Add tests and fix scenario where all matching are contained by duplicate candidate
2019-03-11 18:13:33 +09:00
Dean Herbert
80737b9ef8
Remove "silent" parameter; consolidate import logic
2019-02-25 18:24:06 +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
Dean Herbert
c45c34d400
Make beatmap importing possible elsewhere in tests
2018-12-25 19:17:21 +09:00
smoogipoo
a8ad7d4670
Add silent import parameter
2018-11-30 18:27:13 +09:00
smoogipoo
a88b69ec43
Notify of existing imports
2018-11-28 20:19:35 +09:00
smoogipoo
6c100caba7
Use existing instance of beatmap rather than adding more resources
2018-06-17 19:00:58 +09:00
ekrctb
aeeb03ff9c
simpler temporary path generation
2018-06-06 18:36:43 +09:00
ekrctb
b84441ab87
Fix TestImportOverIPC
2018-06-04 22:25:18 +09:00
Dean Herbert
203691b1c7
Add import rollback test
2018-05-29 16:23:38 +09:00
Dean Herbert
cc081cad5a
Simplify test osz instantiation
2018-05-29 16:23:38 +09:00
Dean Herbert
015fd9d0e7
Fix loading test method returning oldest import rather than newest
2018-05-29 16:23:38 +09:00
smoogipoo
66b3b295e7
Use IBeatmap wherever possible
2018-04-19 20:44:38 +09:00
Dean Herbert
32a74f95a5
Normalize all the line endings
2018-04-13 18:26:38 +09:00
smoogipoo
c21e820a45
One more level of nesting (we can do this better in the future)
2018-03-25 02:43:45 +09:00
Dean Herbert
e0d28564d0
Move import logic to shared implementation
2018-02-15 14:22:39 +09:00
Dean Herbert
9ed05543d7
Fix post-test conditionals from being inverse of what we want to test
2018-02-12 15:39:00 +09:00
Dean Herbert
264a0f59e2
Fix duplicate test name
2018-02-12 12:22:13 +09:00
Dean Herbert
721bb7e4dd
Add proper handling for OnlineBeatmapSetID conflicts
...
Not yet working
2018-02-09 21:31:33 +09:00
Dean Herbert
541068235d
Test import twice in a row
2018-02-09 18:23:06 +09:00
Dean Herbert
623ba652ed
Share more code between tests
2018-02-09 18:20:18 +09:00
Dean Herbert
981fa379b7
Count() -> Count
2018-02-09 18:02:28 +09:00
Dean Herbert
a771ca4077
Add try-finally to ensure host is exited
2018-02-09 18:02:06 +09:00
Dean Herbert
8140ffea15
Add test for deleting then reimporting
2018-02-09 17:59:27 +09:00
Dean Herbert
a166932468
Add deletion test
2018-02-09 17:51:29 +09:00
Dean Herbert
d8da68c55f
Disable test again (accidentally re-enabled)
2018-02-08 17:22:23 +09:00
Dean Herbert
789e25069f
Fix non-visual tests not cleaning up previous executions
2018-02-08 17:07:59 +09:00
smoogipoo
4f5bfdb888
Remove explicit .Exit on IPC test
2018-02-08 14:03:37 +09:00
smoogipoo
74016a1482
Make sure the import tests exit their hosts
2018-02-07 15:57:16 +09:00
TocoToucan
3c11978cfa
Use local functions
2018-01-15 21:42:17 +03:00
Dean Herbert
37d393bca0
Update licence headers
2018-01-05 20:21:19 +09:00
Dean Herbert
0316ec3098
Remove no-longer-necessary Thread.Sleep
2017-10-24 10:08:00 +09:00
Dean Herbert
c704c0349a
Disable IPC test for now
2017-10-24 06:50:33 +09:00
Dean Herbert
7dadb7e21e
Mark IPC non-parallelizable
2017-10-24 06:13:39 +09:00
Dean Herbert
aff30db89d
Add thread sleep as a temporary workaround for failing tests
2017-10-22 16:21:41 +09:00
Dean Herbert
71d614b813
FIx missing columns yet again
2017-10-18 21:57:54 +09:00
Dean Herbert
00be98dba7
Query test assert conditions less often
2017-10-18 20:37:53 +09:00
Dean Herbert
799f510217
FileStore logic fixes
2017-10-17 10:25:18 +09:00