Пример #1
0
    def test_centre_tile_has_correct_vertices(self):
        network = data.generate_network(4, 4)
        tile = "B2"
        expected_vertices = {"A1", "B1", "C1", "C2", "C3", "B3", "A3", "A2"}

        self.assertEqual(expected_vertices, set(network[tile]),
                         "Vertices did not match.")
Пример #2
0
    def test_bottom_right_corner_tile_has_correct_vertices(self):
        network = data.generate_network(4, 4)
        tile = "D4"
        expected_vertices = {"C3", "C4", "D3"}

        self.assertEqual(expected_vertices, set(network[tile]),
                         "Vertices did not match.")
Пример #3
0
    def test_topleft_corner_tile_has_correct_vertices(self):
        network = data.generate_network(4, 4)
        tile = "A1"
        expected_vertices = {"B1", "B2", "A2"}

        self.assertEqual(expected_vertices, set(network[tile]),
                         "Vertices did not match.")
Пример #4
0
    def test_find_expected_words_in_3x3_map(self):
        """
        Test an example 3x3 matrix.
        :return:
        """
        # Generate an example network.
        letters = list("COTASTTIN")
        network = data.generate_network(3, 3)
        mapping = data.assign_letters(network, letters)
        expected_words = ["CAT", "COAT", "STINT", "COT", "COST"]

        words = search.generate_words(network, mapping)

        for expected_word in expected_words:
            self.assertIn(expected_word, words,
                          "Could not find word in generated list.")
Пример #5
0
    def test_4x4_generated_networks_have_expected_names(self):
        network = data.generate_network(4, 4)

        self.assertIn("A1", network.keys(), "Could not find A1 tile.")

        self.assertIn("D4", network.keys(), "Could not find A1 tile.")
Пример #6
0
    def test_7x7_generated_networks_have_expected_names(self):
        network = data.generate_network(7, 7)

        self.assertIn("A1", network.keys(), "Could not find A1 tile.")

        self.assertIn("G7", network.keys(), "Could not find A1 tile.")
Пример #7
0
from bogglers import data, search
from pprint import pprint
import time

print("Searching...")
t = time.time()
network = data.generate_network(4, 4)
letters = list("LTWNHWCCRJIYRFIE")
mapping = data.assign_letters(network, letters)

words = search.generate_words(network, mapping, max_letters=4)
elapsed = time.time() - t

print("Search complete.")
print("Time elapsed: {}".format(elapsed))
print("Found {} words.".format(len(words)))
pprint(words)