@@ -52,6 +52,50 @@ def testCalculatedAttributes(self):
52
52
self .assertEqual ((r .left , r .centery ), r .midleft )
53
53
self .assertEqual ((r .right , r .centery ), r .midright )
54
54
55
+ def testAttributes (self ):
56
+ """Checks that all the attributes are initialized correctly."""
57
+ r = Rect (1 , 2 , 3 , 4 )
58
+
59
+ self .assertEqual (1 , r .left )
60
+ self .assertEqual (2 , r .top )
61
+ self .assertEqual (4 , r .right )
62
+ self .assertEqual (6 , r .bottom )
63
+
64
+ self .assertEqual (1 , r .x )
65
+ self .assertEqual (2 , r .y )
66
+
67
+ self .assertEqual (3 , r .w )
68
+ self .assertEqual (4 , r .h )
69
+
70
+ self .assertEqual ((1 , 2 ), r .topleft )
71
+ self .assertEqual ((4 , 2 ), r .topright )
72
+ self .assertEqual ((1 , 6 ), r .bottomleft )
73
+ self .assertEqual ((4 , 6 ), r .bottomright )
74
+
75
+ self .assertEqual ((3 , 4 ), r .size )
76
+ self .assertEqual (3 , r .width )
77
+ self .assertEqual (4 , r .height )
78
+
79
+ if isinstance (r , FRect ):
80
+ self .assertEqual (2.5 , r .centerx )
81
+ self .assertEqual (4 , r .centery )
82
+ self .assertEqual ((2.5 , 4 ), r .center )
83
+
84
+ self .assertEqual ((2.5 , 2 ), r .midtop )
85
+ self .assertEqual ((2.5 , 6 ), r .midbottom )
86
+ self .assertEqual ((1 , 4 ), r .midleft )
87
+ self .assertEqual ((4 , 4 ), r .midright )
88
+
89
+ elif isinstance (r , Rect ):
90
+ self .assertEqual (2 , r .centerx )
91
+ self .assertEqual (4 , r .centery )
92
+ self .assertEqual ((2 , 4 ), r .center )
93
+
94
+ self .assertEqual ((2 , 2 ), r .midtop )
95
+ self .assertEqual ((2 , 6 ), r .midbottom )
96
+ self .assertEqual ((1 , 4 ), r .midleft )
97
+ self .assertEqual ((4 , 4 ), r .midright )
98
+
55
99
def testRepr (self ):
56
100
rect = Rect (12 , 34 , 56 , 78 )
57
101
self .assertEqual (repr (rect ), "Rect(12, 34, 56, 78)" )
@@ -777,27 +821,27 @@ def test_inflate__larger(self):
777
821
r = Rect (2 , 4 , 6 , 8 )
778
822
r2 = r .inflate (4 , 6 )
779
823
780
- self .assertEqual (r .center , r2 . center )
781
- self .assertEqual (r .left - 2 , r2 . left )
782
- self .assertEqual (r .top - 3 , r2 . top )
783
- self .assertEqual (r .right + 2 , r2 . right )
784
- self .assertEqual (r .bottom + 3 , r2 . bottom )
785
- self .assertEqual (r .width + 4 , r2 . width )
786
- self .assertEqual (r .height + 6 , r2 . height )
824
+ self .assertEqual (r2 .center , ( 5 , 8 ) )
825
+ self .assertEqual (r2 .left , 0 )
826
+ self .assertEqual (r2 .top , 1 )
827
+ self .assertEqual (r2 .right , 10 )
828
+ self .assertEqual (r2 .bottom , 15 )
829
+ self .assertEqual (r2 .width , 10 )
830
+ self .assertEqual (r2 .height , 14 )
787
831
788
832
def test_inflate__smaller (self ):
789
833
"""Ensures deflating a rect keeps its center the same
790
834
and shrinks dimensions by correct values."""
791
835
r = Rect (2 , 4 , 6 , 8 )
792
836
r2 = r .inflate (- 4 , - 6 )
793
837
794
- self .assertEqual (r . center , r2 .center )
795
- self .assertEqual (r . left + 2 , r2 .left )
796
- self .assertEqual (r . top + 3 , r2 .top )
797
- self .assertEqual (r . right - 2 , r2 .right )
798
- self .assertEqual (r . bottom - 3 , r2 .bottom )
799
- self .assertEqual (r . width - 4 , r2 .width )
800
- self .assertEqual (r . height - 6 , r2 .height )
838
+ self .assertEqual (( 5 , 8 ) , r2 .center )
839
+ self .assertEqual (4 , r2 .left )
840
+ self .assertEqual (7 , r2 .top )
841
+ self .assertEqual (6 , r2 .right )
842
+ self .assertEqual (9 , r2 .bottom )
843
+ self .assertEqual (2 , r2 .width )
844
+ self .assertEqual (2 , r2 .height )
801
845
802
846
def test_inflate_ip__larger (self ):
803
847
"""Ensures inflating a rect in place keeps its center the same
@@ -806,13 +850,13 @@ def test_inflate_ip__larger(self):
806
850
r2 = Rect (r )
807
851
r2 .inflate_ip (4 , 6 )
808
852
809
- self .assertEqual (r .center , r2 . center )
810
- self .assertEqual (r .left - 2 , r2 . left )
811
- self .assertEqual (r .top - 3 , r2 . top )
812
- self .assertEqual (r .right + 2 , r2 . right )
813
- self .assertEqual (r .bottom + 3 , r2 . bottom )
814
- self .assertEqual (r .width + 4 , r2 . width )
815
- self .assertEqual (r .height + 6 , r2 . height )
853
+ self .assertEqual (r2 .center , ( 5 , 8 ) )
854
+ self .assertEqual (r2 .left , 0 )
855
+ self .assertEqual (r2 .top , 1 )
856
+ self .assertEqual (r2 .right , 10 )
857
+ self .assertEqual (r2 .bottom , 15 )
858
+ self .assertEqual (r2 .width , 10 )
859
+ self .assertEqual (r2 .height , 14 )
816
860
817
861
def test_inflate_ip__smaller (self ):
818
862
"""Ensures deflating a rect in place keeps its center the same
@@ -821,13 +865,13 @@ def test_inflate_ip__smaller(self):
821
865
r2 = Rect (r )
822
866
r2 .inflate_ip (- 4 , - 6 )
823
867
824
- self .assertEqual (r .center , r2 . center )
825
- self .assertEqual (r .left + 2 , r2 . left )
826
- self .assertEqual (r .top + 3 , r2 . top )
827
- self .assertEqual (r .right - 2 , r2 . right )
828
- self .assertEqual (r .bottom - 3 , r2 . bottom )
829
- self .assertEqual (r .width - 4 , r2 . width )
830
- self .assertEqual (r .height - 6 , r2 . height )
868
+ self .assertEqual (r2 .center , ( 5 , 8 ) )
869
+ self .assertEqual (r2 .left , 4 )
870
+ self .assertEqual (r2 .top , 7 )
871
+ self .assertEqual (r2 .right , 6 )
872
+ self .assertEqual (r2 .bottom , 9 )
873
+ self .assertEqual (r2 .width , 2 )
874
+ self .assertEqual (r2 .height , 2 )
831
875
832
876
def test_scale_by__larger_single_argument (self ):
833
877
"""The scale method scales around the center of the rectangle"""
0 commit comments