@@ -679,37 +679,42 @@ end
679
679
@test g2 == gref
680
680
end
681
681
682
- function equivalent_dict (d1, d2)
682
+ function check_dimensionality (g, d2)
683
+ d1 = dimensionality (g)
683
684
keys (d1) == keys (d2) || return false
684
685
for k in keys (d1)
685
- s1 = Set (Set (x) for x in d1[k])
686
- s2 = Set (Set (x) for x in d2[k])
686
+ s1 = Set (( Set (l), m) for (l,m) in d1[k])
687
+ s2 = Set (( Set (l), m) for (l,m) in d2[k])
687
688
s1 == s2 || return false
688
689
end
689
690
return true
690
691
end
691
692
692
693
@testset " Dimensionality" begin
693
- @test dimensionality (PeriodicGraph {0} (5 )) == Dict (0 => [collect (1 : 5 )])
694
+ @test dimensionality (PeriodicGraph {0} (5 )) == Dict (0 => [( collect (1 : 5 ), 1 )])
694
695
g:: PeriodicGraph3D = PeriodicGraph3D ([PeriodicEdge3D (1 , 3 , (0 , 0 , 1 )),
695
696
PeriodicEdge3D (2 , 3 , (0 , 1 , 0 )),
696
- PeriodicEdge3D (2 , 3 , (0 , - 1 , 0 )),
697
+ PeriodicEdge3D (2 , 3 , (0 , 0 , 0 )),
697
698
PeriodicEdge3D (4 , 4 , (1 , 1 , 0 ))])
698
- @test equivalent_dict ( dimensionality (g) , Dict (1 => connected_components (g)))
699
- @test add_edge! (g, PeriodicEdge (3 , 2 , (0 ,0 ,0 )))
700
- @test equivalent_dict ( dimensionality (g) , Dict (1 => connected_components (g)))
699
+ @test check_dimensionality (g , Dict (1 => [(x, 1 ) for x in connected_components (g)] ))
700
+ @test add_edge! (g, PeriodicEdge (2 , 3 , (0 ,- 1 ,0 )))
701
+ @test check_dimensionality (g , Dict (1 => [(x, 1 ) for x in connected_components (g)] ))
701
702
@test add_edge! (g, PeriodicEdge (2 , 2 , (0 ,0 ,1 )))
702
- @test equivalent_dict ( dimensionality (g) , Dict (1 => [[4 ]], 2 => [[1 ,2 ,3 ]]))
703
+ @test check_dimensionality (g , Dict (1 => [( [4 ], 1 ) ], 2 => [( [1 ,2 ,3 ], 1 ) ]))
703
704
@test rem_edge! (g, PeriodicEdge (1 , 3 , (0 ,0 ,1 )))
704
- @test equivalent_dict ( dimensionality (g) , Dict (0 => [[1 ]], 1 => [[4 ]], 2 => [[2 ,3 ]]))
705
+ @test check_dimensionality (g , Dict (0 => [( [1 ], 1 ) ], 1 => [( [4 ], 1 ) ], 2 => [( [2 ,3 ], 1 ) ]))
705
706
@test rem_edge! (g, 3 , PeriodicVertex (2 , (0 ,0 ,0 )))
706
- @test equivalent_dict ( dimensionality (g) , Dict (0 => [[1 ]], 1 => [[4 ]], 2 => [[2 ,3 ]]))
707
+ @test check_dimensionality (g , Dict (0 => [( [1 ], 1 ) ], 1 => [( [4 ], 1 ) ], 2 => [( [2 ,3 ], 2 ) ]))
707
708
@test rem_edge! (g, PeriodicEdge (2 , 3 , (0 ,1 ,0 )))
708
- @test equivalent_dict ( dimensionality (g) , Dict (0 => [[1 ]], 1 => [[2 ,3 ],[4 ]]))
709
+ @test check_dimensionality (g , Dict (0 => [( [1 ], 1 ) ], 1 => [( [2 ,3 ],1 ),( [4 ], 1 ) ]))
709
710
@test add_edge! (g, 2 , PeriodicVertex3D (3 , (1 ,0 ,- 1 )))
710
- @test equivalent_dict ( dimensionality (g) , Dict (0 => [[1 ]], 1 => [[4 ]], 2 => [[2 ,3 ]]))
711
+ @test check_dimensionality (g , Dict (0 => [( [1 ], 1 ) ], 1 => [( [4 ], 1 ) ], 2 => [( [2 ,3 ], 1 ) ]))
711
712
@test add_edge! (g, 2 , PeriodicVertex (3 , (2 ,0 ,- 1 )))
712
- @test equivalent_dict (dimensionality (g), Dict (0 => [[1 ]], 1 => [[4 ]], 3 => [[2 ,3 ]]))
713
+ @test check_dimensionality (g, Dict (0 => [([1 ],1 )], 1 => [([4 ],1 )], 3 => [([2 ,3 ],1 )]))
714
+
715
+ @test check_dimensionality (PeriodicGraph (" 2 1 1 2 0 1 1 0 1" ), Dict (2 => [([1 ],2 )]))
716
+ @test check_dimensionality (PeriodicGraph (" 3 1 1 2 0 0 1 1 0 2 0" ), Dict (2 => [([1 ],4 )]))
717
+ @test check_dimensionality (PeriodicGraph (" 3 1 1 0 0 1 1 2 -1 0 0 1 2 0 -1 0 1 2 1 0 0" ), Dict (3 => [([1 ,2 ],2 )]))
713
718
end
714
719
715
720
@testset " Dimension change" begin
719
724
3 4 -1 0 0
720
725
4 1 0 0 1
721
726
4 4 0 0 1" )
722
- @test equivalent_dict ( dimensionality (g) , Dict (1 => [[ 1 , 2 , 3 , 4 ] ]))
727
+ @test check_dimensionality (g , Dict (1 => [( 1 : 4 , 1 ) ]))
723
728
gg = PeriodicGraph1D (g)
724
729
@test string (gg) == " 1 1 2 0 1 4 -1 2 3 0 3 4 0 4 4 1"
725
730
@test PeriodicGraph2D (gg) == PeriodicGraph2D (g) ==
0 commit comments