Beispiel #1
0
    correctGraphs['maze_map_circle.txt']=Graph([('p_0_0', ['p_0_1']), ('p_0_1', ['p_0_0', 'p_0_2']), ('p_0_2', ['p_0_1', 'p_1_2']), ('p_10_1', ['p_11_1', 'p_9_1']), ('p_10_6', ['p_10_7', 'p_9_6']), ('p_10_7', ['p_10_6', 'p_11_7']), ('p_11_1', ['p_10_1', 'p_12_1']), ('p_11_7', ['p_10_7', 'p_11_8']), ('p_11_8', ['p_11_7', 'p_12_8']), ('p_12_1', ['p_11_1', 'p_13_1']), ('p_12_3', ['p_12_4', 'p_13_3']), ('p_12_4', ['p_12_3', 'p_12_5']), ('p_12_5', ['p_12_4', 'p_13_5']), ('p_12_8', ['p_11_8', 'p_13_8']), ('p_13_1', ['p_12_1', 'p_13_2']), ('p_13_2', ['p_13_1', 'p_13_3']), ('p_13_3', ['p_12_3', 'p_13_2']), ('p_13_5', ['p_12_5', 'p_13_6']), ('p_13_6', ['p_13_5', 'p_13_7']), ('p_13_7', ['p_13_6', 'p_13_8']), ('p_13_8', ['p_12_8', 'p_13_7']), ('p_1_2', ['p_0_2', 'p_2_2']), ('p_1_6', ['p_2_6']), ('p_1_8', ['p_2_8']), ('p_2_1', ['p_2_2', 'p_3_1']), ('p_2_2', ['p_1_2', 'p_2_1']), ('p_2_6', ['p_1_6', 'p_2_7', 'p_3_6']), ('p_2_7', ['p_2_6', 'p_2_8']), ('p_2_8', ['p_1_8', 'p_2_7', 'p_3_8']), ('p_3_1', ['p_2_1', 'p_4_1']), ('p_3_6', ['p_2_6']), ('p_3_8', ['p_2_8']), ('p_4_1', ['p_3_1', 'p_5_1']), ('p_5_1', ['p_4_1', 'p_5_2', 'p_6_1']), ('p_5_2', ['p_5_1', 'p_6_2']), ('p_6_1', ['p_5_1', 'p_6_2', 'p_7_1']), ('p_6_2', ['p_5_2', 'p_6_1', 'p_6_3']), ('p_6_3', ['p_6_2', 'p_7_3']), ('p_7_1', ['p_6_1', 'p_8_1']), ('p_7_3', ['p_6_3', 'p_7_4']), ('p_7_4', ['p_7_3', 'p_8_4']), ('p_8_1', ['p_7_1', 'p_9_1']), ('p_8_4', ['p_7_4', 'p_8_5']), ('p_8_5', ['p_8_4', 'p_9_5']), ('p_9_1', ['p_10_1', 'p_8_1']), ('p_9_5', ['p_8_5', 'p_9_6']), ('p_9_6', ['p_10_6', 'p_9_5'])])
    correctGraphs['maze_map.txt']=Graph([('p_10_1', ['p_9_1']), ('p_10_10', ['p_9_10']), ('p_10_3', ['p_9_3']), ('p_10_5', ['p_10_6', 'p_9_5']), ('p_10_6', ['p_10_5', 'p_10_7']), ('p_10_7', ['p_10_6', 'p_9_7']), ('p_1_1', ['p_2_1']), ('p_1_10', ['p_2_10']), ('p_1_3', ['p_1_4', 'p_2_3']), ('p_1_4', ['p_1_3', 'p_1_5']), ('p_1_5', ['p_1_4', 'p_1_6']), ('p_1_6', ['p_1_5', 'p_1_7']), ('p_1_7', ['p_1_6', 'p_2_7']), ('p_2_1', ['p_1_1', 'p_2_2']), ('p_2_10', ['p_1_10', 'p_3_10']), ('p_2_2', ['p_2_1', 'p_2_3', 'p_3_2']), ('p_2_3', ['p_1_3', 'p_2_2']), ('p_2_7', ['p_1_7', 'p_3_7']), ('p_3_10', ['p_2_10', 'p_3_9']), ('p_3_2', ['p_2_2', 'p_4_2']), ('p_3_5', ['p_4_5']), ('p_3_7', ['p_2_7', 'p_3_8']), ('p_3_8', ['p_3_7', 'p_3_9']), ('p_3_9', ['p_3_10', 'p_3_8', 'p_4_9']), ('p_4_2', ['p_3_2', 'p_5_2']), ('p_4_4', ['p_4_5']), ('p_4_5', ['p_3_5', 'p_4_4', 'p_5_5']), ('p_4_9', ['p_3_9', 'p_5_9']), ('p_5_10', ['p_5_9', 'p_6_10']), ('p_5_2', ['p_4_2', 'p_6_2']), ('p_5_5', ['p_4_5', 'p_5_6']), ('p_5_6', ['p_5_5', 'p_6_6']), ('p_5_9', ['p_4_9', 'p_5_10']), ('p_6_1', ['p_6_2']), ('p_6_10', ['p_5_10', 'p_7_10']), ('p_6_2', ['p_5_2', 'p_6_1', 'p_6_3', 'p_7_2']), ('p_6_3', ['p_6_2', 'p_6_4']), ('p_6_4', ['p_6_3']), ('p_6_6', ['p_5_6', 'p_6_7', 'p_7_6']), ('p_6_7', ['p_6_6']), ('p_7_10', ['p_6_10', 'p_7_9']), ('p_7_2', ['p_6_2', 'p_8_2']), ('p_7_5', ['p_7_6', 'p_8_5']), ('p_7_6', ['p_6_6', 'p_7_5']), ('p_7_8', ['p_7_9', 'p_8_8']), ('p_7_9', ['p_7_10', 'p_7_8']), ('p_8_2', ['p_7_2', 'p_9_2']), ('p_8_5', ['p_7_5', 'p_9_5']), ('p_8_8', ['p_7_8', 'p_9_8']), ('p_9_1', ['p_10_1', 'p_9_2']), ('p_9_10', ['p_10_10', 'p_9_9']), ('p_9_2', ['p_8_2', 'p_9_1', 'p_9_3']), ('p_9_3', ['p_10_3', 'p_9_2']), ('p_9_5', ['p_10_5', 'p_8_5']), ('p_9_7', ['p_10_7', 'p_9_8']), ('p_9_8', ['p_8_8', 'p_9_7', 'p_9_9']), ('p_9_9', ['p_9_10', 'p_9_8'])])
    comment('OK -> Graph construction')
except:
    comment('FAIL -> Graph construction\n'+error_msg())
    grade(0)
    print_grade()
    exit()

loadScore=[0.0 for k in range(len(correctGraphs))]
counter=0
for fname in correctGraphs.keys():
    correctGraph=correctGraphs[fname]
    try:
        g=Graph();
        g.loadFromBoolMatrix(fname)
        if g==correctGraph:
            loadScore[counter]+=1
            comment('OK -> Load matrix in to graph from '+fname)
        else:
            loadScore[counter]+=.2
            comment('FAIL -> Load matrix in to graph from '+fname+' produced wrong graph')
    except:
        comment('FAIL -> Load matrix in to graph from '+fname+' threw exceprion')
    counter+=1
grade(grades['trLoadGraph']*(sum(loadScore)/len(loadScore)))
if (sum(loadScore)/len(loadScore))>=1:
    comment('OK -> Load matrix test completed successfully\n')
else:
    comment('FAIL -> Load matrix test completed with errors\n')