From: Joseph Nuthalapati Date: Fri, 27 Mar 2020 08:04:09 +0000 (+0530) Subject: download and fullScreen are imcompatible options X-Git-Tag: 0.1.0~1 X-Git-Url: https://njoseph.me/gitweb/nimcoon.git/commitdiff_plain/956837326555259ef33d1bab42a3981b4082b20a download and fullScreen are imcompatible options Signed-off-by: Joseph Nuthalapati --- diff --git a/src/nimcoon.nim b/src/nimcoon.nim index a0bb93d..56e6867 100644 --- a/src/nimcoon.nim +++ b/src/nimcoon.nim @@ -32,7 +32,7 @@ proc parseArguments(): CommandLineOptions = proc isValidOptions*(options: Options): bool = # Check for invalid combinations of options - var invalidCombinations = [("musicOnly", "fullScreen")] + var invalidCombinations = [("musicOnly", "fullScreen"), ("download", "fullScreen")] for combination in invalidCombinations: if options[combination[0]] and options[combination[1]]: stderr.writeLine fmt"Incompatible options provided: {combination[0]} and {combination[1]}" diff --git a/tests/tests.nim b/tests/tests.nim index dad726c..8b9e6d2 100644 --- a/tests/tests.nim +++ b/tests/tests.nim @@ -13,7 +13,15 @@ suite "Playing direct links": check(sanitizeURL("https://www.youtube.com/watch\\?v\\=QOEMv0S8AcA") == expected) test "validate options": - let invalidOptions = to_table({"musicOnly": true, "feelingLucky": false, "fullScreen": true, "download": false}) - check(not isValidOptions(invalidOptions)) - let validOptions = to_table({"musicOnly": false, "feelingLucky": true, "fullScreen": true, "download": true}) - check(isValidOptions(validOptions)) + let invalidOptionsList = [ + to_table({"musicOnly": true, "feelingLucky": false, "fullScreen": true, "download": false}), + to_table({"musicOnly": false, "feelingLucky": true, "fullScreen": true, "download": true}) + ] + for invalidOptions in invalidOptionsList: + check(not isValidOptions(invalidOptions)) + let validOptionsList = [ + to_table({"musicOnly": false, "feelingLucky": true, "fullScreen": false, "download": true}), + to_table({"musicOnly": false, "feelingLucky": true, "fullScreen": true, "download": false}) + ] + for validOptions in validOptionsList: + check(isValidOptions(validOptions))