@@ -109,79 +109,103 @@ def test_length_errors(self, left, right):
109109 with tm .assert_raises_regex (TypeError , msg ):
110110 iv .length
111111
112- def test_math_add (self , interval ):
113- expected = Interval (1 , 2 )
114- actual = interval + 1
115- assert expected == actual
112+ def test_math_add (self , closed ):
113+ interval = Interval (0 , 1 , closed = closed )
114+ expected = Interval (1 , 2 , closed = closed )
116115
117- expected = Interval (1 , 2 )
118- actual = 1 + interval
119- assert expected == actual
116+ result = interval + 1
117+ assert result == expected
118+
119+ result = 1 + interval
120+ assert result == expected
120121
121- actual = interval
122- actual += 1
123- assert expected == actual
122+ result = interval
123+ result += 1
124+ assert result == expected
124125
125126 msg = r"unsupported operand type\(s\) for \+"
126127 with tm .assert_raises_regex (TypeError , msg ):
127- interval + Interval ( 1 , 2 )
128+ interval + interval
128129
129130 with tm .assert_raises_regex (TypeError , msg ):
130131 interval + 'foo'
131132
132- def test_math_sub (self , interval ):
133- expected = Interval (- 1 , 0 )
134- actual = interval - 1
135- assert expected == actual
133+ def test_math_sub (self , closed ):
134+ interval = Interval (0 , 1 , closed = closed )
135+ expected = Interval (- 1 , 0 , closed = closed )
136+
137+ result = interval - 1
138+ assert result == expected
136139
137- actual = interval
138- actual -= 1
139- assert expected == actual
140+ result = interval
141+ result -= 1
142+ assert result == expected
140143
141144 msg = r"unsupported operand type\(s\) for -"
142145 with tm .assert_raises_regex (TypeError , msg ):
143- interval - Interval ( 1 , 2 )
146+ interval - interval
144147
145148 with tm .assert_raises_regex (TypeError , msg ):
146149 interval - 'foo'
147150
148- def test_math_mult (self , interval ):
149- expected = Interval (0 , 2 )
150- actual = interval * 2
151- assert expected == actual
151+ def test_math_mult (self , closed ):
152+ interval = Interval (0 , 1 , closed = closed )
153+ expected = Interval (0 , 2 , closed = closed )
154+
155+ result = interval * 2
156+ assert result == expected
152157
153- expected = Interval (0 , 2 )
154- actual = 2 * interval
155- assert expected == actual
158+ result = 2 * interval
159+ assert result == expected
156160
157- actual = interval
158- actual *= 2
159- assert expected == actual
161+ result = interval
162+ result *= 2
163+ assert result == expected
160164
161165 msg = r"unsupported operand type\(s\) for \*"
162166 with tm .assert_raises_regex (TypeError , msg ):
163- interval * Interval ( 1 , 2 )
167+ interval * interval
164168
165169 msg = r"can\'t multiply sequence by non-int"
166170 with tm .assert_raises_regex (TypeError , msg ):
167171 interval * 'foo'
168172
169- def test_math_div (self , interval ):
170- expected = Interval (0 , 0.5 )
171- actual = interval / 2.0
172- assert expected == actual
173+ def test_math_div (self , closed ):
174+ interval = Interval (0 , 1 , closed = closed )
175+ expected = Interval (0 , 0.5 , closed = closed )
173176
174- actual = interval
175- actual /= 2.0
176- assert expected == actual
177+ result = interval / 2.0
178+ assert result == expected
179+
180+ result = interval
181+ result /= 2.0
182+ assert result == expected
177183
178184 msg = r"unsupported operand type\(s\) for /"
179185 with tm .assert_raises_regex (TypeError , msg ):
180- interval / Interval ( 1 , 2 )
186+ interval / interval
181187
182188 with tm .assert_raises_regex (TypeError , msg ):
183189 interval / 'foo'
184190
191+ def test_math_floordiv (self , closed ):
192+ interval = Interval (1 , 2 , closed = closed )
193+ expected = Interval (0 , 1 , closed = closed )
194+
195+ result = interval // 2
196+ assert result == expected
197+
198+ result = interval
199+ result //= 2
200+ assert result == expected
201+
202+ msg = r"unsupported operand type\(s\) for //"
203+ with tm .assert_raises_regex (TypeError , msg ):
204+ interval // interval
205+
206+ with tm .assert_raises_regex (TypeError , msg ):
207+ interval // 'foo'
208+
185209 def test_constructor_errors (self ):
186210 msg = "invalid option for 'closed': foo"
187211 with tm .assert_raises_regex (ValueError , msg ):
0 commit comments