def setUp(self): self.G = Graph( test_vertices(), test_edges() ) self.h = 1000 self.w = 2000 self.k = int(sqrt((self.h*self.w)/self.G.n)) # 632 self.D = ForceDrawing( self.G, self.h, self.w )
class TestForceDrawing(TestDrawing): def setUp(self): self.G = Graph( test_vertices(), test_edges() ) self.h = 1000 self.w = 2000 self.k = int(sqrt((self.h*self.w)/self.G.n)) # 632 self.D = ForceDrawing( self.G, self.h, self.w ) def test_init(self): self.assertEqual( self.D.G, Graph( test_vertices(), test_edges() ) ) self.assertEqual( self.D.h, self.h) self.assertEqual( self.D.w, self.w) self.assertEqual( self.D.k, self.k ) def test_f(self): fr = self.D.f_r fa = self.D.f_a self.assertEqual( fa(0), 0) self.assertEqual( fa(25), 0) self.assertEqual( fa(50), 3) self.assertEqual( fa(51), 4) self.assertEqual( fa(632), 632) self.assertEqual( fa(1000), 1582) #if two vertices less than k away repulsion is great self.assertEqual( fr(0), self.h/2) self.assertEqual( fr(5), 79884) self.assertEqual( fr(632), 632) self.assertEqual( fr(1000), 399) def test_force(self): fr = self.D.f_r fa = self.D.f_a v_0 = TwoVector(0,0) v_1 = TwoVector(1,2) v_2 = TwoVector(2,4) v_3 = TwoVector(3,6) self.assertEqual( self.D.force(v_0, fa), TwoVector() ) self.assertEqual( self.D.force(v_0, fr), TwoVector(self.h/2,self.h/2) )