예제 #1
0
    def test_chemical_min_graph_size_32_support_5_percent(self):
        graph_dataset_size = 340

        file_name = "../graphdata/benchmark_tests/Chemical_340.txt"
        supp = graph_dataset_size * 0.05
        min_size_graph = 32
        cg = cgSpan(database_file_name=file_name,
                    min_support=supp,
                    min_num_vertices=min_size_graph)
        cg.run()
        cg.time_stats()
예제 #2
0
    def test_compound_min_graph_size_42_support_5_percent(self):
        graph_dataset_size = 422

        file_name = "../graphdata/benchmark_tests/Coumpound_422.txt"
        supp = graph_dataset_size * 0.05
        min_size_graph = 42
        cg = cgSpan(database_file_name=file_name,
                    min_support=supp,
                    min_num_vertices=min_size_graph)
        cg.run()
        cg.time_stats()
예제 #3
0
    def test_case_02(self):
        cg = cgSpan(database_file_name=
                    "../graphdata/unit_test_data/graph.data.testcase.2",
                    min_support=2)
        cg.run()

        results = cg._report_df.to_numpy().astype(str)
        results = self.convert_results_format(results)

        solution_1 = ('2', 'v 0 A v 1 B v 2 C e 0 1 x e 0 2 z e 1 2 y ', '3')
        solutions = [solution_1]

        self.updateOutput(results)
        self.assertEqual(sorted(solutions), sorted(results),
                         "Atleast one solution was not found.")
예제 #4
0
    def test_chemical_min_graph_size_2(self):
        graph_dataset_size = 340

        file_name = "../graphdata/benchmark_tests/Chemical_340.txt"
        supp = graph_dataset_size * 0.45
        min_size_graph = 2
        cg = cgSpan(database_file_name=file_name,
                    min_support=supp,
                    min_num_vertices=min_size_graph)
        cg.run()
        cg.time_stats()
        cg.graph_dataset_stats()

        results = cg._report_df.to_numpy().astype(str)
        results = self.convert_results_format(results)
        self.updateOutput(results)
예제 #5
0
    def test_case_00(self):
        cg = cgSpan(database_file_name=
                    "../graphdata/unit_test_data/graph.data.testcase.0",
                    min_support=2)
        cg.run()

        #result = [support, description, num_vert]
        results = cg._report_df.to_numpy().astype(str)
        results = self.convert_results_format(results)

        solution_1 = ('2', 'v 0 A v 1 B v 2 C v 3 D e 0 1 x e 1 2 y e 1 3 z ',
                      '4')
        solutions = [solution_1]

        self.updateOutput(results)
        self.assertEqual(sorted(solutions), sorted(results),
                         "Atleast one solution was not found.")
예제 #6
0
    def test_case_11(self):
        cg = cgSpan(database_file_name=
                    "../graphdata/unit_test_data/graph.data.testcase.11",
                    min_support=2)
        cg.run()

        results = cg._report_df.to_numpy().astype(str)
        results = self.convert_results_format(results)

        solution_1 = (
            '2',
            'v 0 A v 1 AA v 2 B v 3 C v 4 D v 5 E v 6 F v 7 G e 0 1 m e 1 2 n e 1 5 q e 2 3 o e 3 4 p e 5 6 r e 6 7 s ',
            '8')
        solution_2 = ('3', 'v 0 A v 1 AA v 2 B v 3 E e 0 1 m e 1 2 n e 1 3 q ',
                      '4')
        solutions = [solution_1, solution_2]

        self.updateOutput(results)
        self.assertEqual(sorted(solutions), sorted(results),
                         "Atleast one solution was not found.")
예제 #7
0
    def test_case_10(self):
        cg = cgSpan(database_file_name=
                    "../graphdata/unit_test_data/graph.data.testcase.10",
                    min_support=2)
        cg.run()

        results = cg._report_df.to_numpy().astype(str)
        results = self.convert_results_format(results)

        solution_1 = (
            '2',
            'v 0 A v 1 D v 2 E v 3 B v 4 C e 0 1 y e 0 3 z e 1 2 w e 3 4 x ',
            '5')
        solution_2 = ('3', 'v 0 A v 1 D v 2 B v 3 C e 0 1 y e 0 2 z e 2 3 x ',
                      '4')
        solutions = [solution_1, solution_2]

        self.updateOutput(results)
        self.assertEqual(sorted(solutions), sorted(results),
                         "Atleast one solution was not found.")
예제 #8
0
    def test_case_08(self):
        cg = cgSpan(database_file_name=
                    "../graphdata/unit_test_data/graph.data.testcase.8",
                    min_support=2)
        cg.run()

        results = cg._report_df.to_numpy().astype(str)
        results = self.convert_results_format(results)

        solution_1 = (
            '2',
            'v 0 A v 1 B v 2 C v 3 D v 4 E e 0 1 w e 0 2 x e 0 3 y e 0 4 z ',
            '5')
        solution_2 = ('3', 'v 0 A v 1 B v 2 C v 3 D e 0 1 w e 0 2 x e 0 3 y ',
                      '4')
        solutions = [solution_1, solution_2]

        self.updateOutput(results)
        self.assertEqual(sorted(solutions), sorted(results),
                         "Atleast one solution was not found.")