MantisBT - Doomseeker
View Issue Details
0004536Doomseeker[All Projects] Suggestionpublic2025-05-04 14:372025-11-08 18:35
Zalewa 
Zalewa 
normalfeatureN/A
resolvedfixed 
1.5.1 
1.5.2 
0004536: Wadseeker End-to-End tests
There are no automated tests whatsoever for Wadseeker. Any change to Wadseeker may break some specific scenario and we won't be aware until a bug report is made. An example of such problem is in 0004468, where the described scenario should work properly, but for some reason Wadseeker fails to download the file there and this problem was missed during development.

The goal for this task is to establish a way for running Wadseeker tests from a command-line script where various scenarios will be embedded within the tests and the tests themselves will be capable of serving Wadseeker with all the necessary services.

The scripts should cover various scenarios of finding and downloading files and then verifying if the results are expected. Negative cases should also be verified. It would be nice to be able to run *all* the scripts via a single command and with a minimal setup requirements.

There should also be scenarios for validating the /idgames Archive, though some care must be taken as to not abuse this service by accident.
I have a personal website with some scenarios that I sometimes use to run Wadseeker against, but this cannot be used for scripted testing. I only run manual tests against this website, and it's online only when I need it.
No tags attached.
Issue History
2025-05-04 14:37ZalewaNew Issue
2025-05-04 14:37ZalewaStatusnew => assigned
2025-05-04 14:37ZalewaAssigned To => Zalewa
2025-11-08 18:35ZalewaNote Added: 0024649
2025-11-08 18:35ZalewaStatusassigned => resolved
2025-11-08 18:35ZalewaFixed in Version => 1.5.2
2025-11-08 18:35ZalewaResolutionopen => fixed

Notes
(0024649)
Zalewa   
2025-11-08 18:35   
Implemented in Python and with the pytest framework. The implementation together with launch instructions is located in `tools/wadseekertests` directory in the repo.

There are plenty of commits here. It started with this one:'https://bitbucket.org/Doomseeker/doomseeker/commits/a492db2a28d6987a9bc21d69535b1304000242c2 [^]'

The tests verify a few different scenarios by launching the command-line wadseeker app and manipulating what is seeked and where. The tests host their own HTTP server for Wadseeker to bounce off. This server supports nearly all of the implemented test scenarios. There are also some tests that use the /idgames archive, but these are disabled by default as these contact the real service.