summaryrefslogtreecommitdiff
path: root/Tests/ComponentTests/ParserTests
diff options
context:
space:
mode:
authorSophia Pearson <codergal89@gmail.com>2022-09-04 21:52:27 +0200
committerSophia Pearson <codergal89@gmail.com>2022-09-04 21:52:27 +0200
commitf711d55d465bd8838dc55bde1f4a25d582a6bb6b (patch)
treee2b5b2ac79adf23e5f2c475ce11ee1c3c6561f0b /Tests/ComponentTests/ParserTests
parent2f3abbb6f1141f15ef77ac27e431bc66bb0c7899 (diff)
downloadtexty-f711d55d465bd8838dc55bde1f4a25d582a6bb6b.tar.xz
texty-f711d55d465bd8838dc55bde1f4a25d582a6bb6b.zip
tests: adjust tests to new design
Diffstat (limited to 'Tests/ComponentTests/ParserTests')
-rw-r--r--Tests/ComponentTests/ParserTests/CommandParserTestBase.gd29
-rw-r--r--Tests/ComponentTests/ParserTests/test_CommandParser.gd9
-rw-r--r--Tests/ComponentTests/ParserTests/test_LookCommand.gd55
3 files changed, 0 insertions, 93 deletions
diff --git a/Tests/ComponentTests/ParserTests/CommandParserTestBase.gd b/Tests/ComponentTests/ParserTests/CommandParserTestBase.gd
deleted file mode 100644
index 6e452cb..0000000
--- a/Tests/ComponentTests/ParserTests/CommandParserTestBase.gd
+++ /dev/null
@@ -1,29 +0,0 @@
-extends GutTest
-
-class_name CommandParserTestBase
-
-const CommandParser = preload("res://Scripts/CommandParser.cs")
-
-var _instance: CommandParser
-
-func _to_bits(number: int, bits: int) -> Array:
- var result = []
- for bit in bits:
- result.append(number & 1)
- number = number >> 1
- return result
-
-func before_each():
- _instance = autofree(CommandParser.new())
-
-func generate_capitalization_permutations(text: String) -> Array:
- var result = []
-
- for permutation in pow(2, text.length()):
- var mask = _to_bits(permutation, text.length())
- var copy = String(text)
- for index in len(mask):
- if mask[index] == 1:
- copy[index] = copy[index].to_upper()
- result.append(copy)
- return result;
diff --git a/Tests/ComponentTests/ParserTests/test_CommandParser.gd b/Tests/ComponentTests/ParserTests/test_CommandParser.gd
deleted file mode 100644
index bdb14a6..0000000
--- a/Tests/ComponentTests/ParserTests/test_CommandParser.gd
+++ /dev/null
@@ -1,9 +0,0 @@
-extends CommandParserTestBase
-
-const Command = preload("res://Scripts/Command.cs")
-
-func parse(input: String) -> Command:
- return autofree(_instance.TryParse(input))
-
-func test_parsing_the_empty_string_returns_null():
- assert_null(parse(''))
diff --git a/Tests/ComponentTests/ParserTests/test_LookCommand.gd b/Tests/ComponentTests/ParserTests/test_LookCommand.gd
deleted file mode 100644
index 32268b0..0000000
--- a/Tests/ComponentTests/ParserTests/test_LookCommand.gd
+++ /dev/null
@@ -1,55 +0,0 @@
-extends CommandParserTestBase
-
-const LookCommand = preload("res://Scripts/Commands/LookCommand.cs")
-
-var _around_permutations = generate_capitalization_permutations('around')
-var _at_permutations = generate_capitalization_permutations('at')
-var _look_permutations = generate_capitalization_permutations('look')
-
-func parse(input: String) -> LookCommand:
- return autofree(_instance.TryParse(input))
-
-func test_parsing_look_command_without_an_argument_returns_non_null():
- assert_not_null(parse('look'))
-
-func test_parsing_look_command_is_case_insensitive(permutation=use_parameters(_look_permutations)):
- assert_not_null(parse(permutation))
-
-func test_parsing_look_command_without_an_argument_returns_look_command_with_an_emtpy_target():
- assert_eq('', parse('look').Target)
-
-func test_parsing_look_at_command_is_case_insensitive(permutation=use_parameters(_at_permutations)):
- assert_not_null(parse('look ' + permutation))
-
-func test_parsing_look_at_command_without_further_arguments_returns_look_command_with_an_emtpy_target():
- assert_eq('', parse('look at').Target)
-
-func test_parsing_look_at_command_without_further_arguments_returns_look_command_with_non_null_modifier():
- assert_not_null(parse('look at').Modifier)
-
-func test_parsing_look_at_command_without_further_arguments_returns_look_command_with_at_modifier():
- assert_eq('At', parse('look at').ModifierAsString)
-
-func test_parsing_look_at_command_with_more_arguments_returns_look_command_with_non_empty_target():
- assert_ne('', parse('look at door on the left').Target)
-
-func test_parsing_look_at_command_with_an_additional_argument_returns_look_command_with_the_additional_argument_as_the_target():
- assert_eq('window', parse('look at window').Target)
-
-func test_parsing_look_at_command_with_multiple_additional_arguments_returns_look_command_with_the_additional_arguments_as_the_target():
- assert_eq('table near the door', parse('look at table near the door').Target)
-
-func test_parsing_look_around_command_is_case_insensitive(permutation=use_parameters(_around_permutations)):
- assert_not_null(parse('look ' + permutation))
-
-func test_parsing_look_around_command_without_further_arguments_returns_look_command_with_an_empty_target():
- assert_eq('', parse('look around').Target)
-
-func test_parsing_look_around_command_without_further_arguments_returns_look_command_with_non_null_modifier():
- assert_not_null(parse('look around').Modifier)
-
-func test_parsing_look_around_command_without_further_arguments_returns_look_command_with_around_modifier():
- assert_eq('Around', parse('look around').ModifierAsString)
-
-func test_parsing_look_around_command_ignores_all_additional_arguments():
- assert_eq('', parse('look around the room').Target)