@@ -230,3 +230,41 @@ TEST(RectTest, Intersects)
230230 ASSERT_FALSE (rect2_ydown.intersects (rect1_ydown));
231231 }
232232}
233+
234+ TEST (RectTest, Contains)
235+ {
236+ Rect rect (-50 , 25 , 150 , -75 );
237+ Rect rect_ydown (-50 , -75 , 150 , 25 );
238+
239+ ASSERT_FALSE (rect.contains (-75 , 30 ));
240+ ASSERT_FALSE (rect.contains (-75 , 10 ));
241+ ASSERT_FALSE (rect.contains (-45 , 30 ));
242+ ASSERT_FALSE (rect.contains (151 , -76 ));
243+ ASSERT_FALSE (rect.contains (149 , -76 ));
244+ ASSERT_FALSE (rect.contains (151 , -74 ));
245+
246+ ASSERT_FALSE (rect_ydown.contains (-75 , 30 ));
247+ ASSERT_FALSE (rect_ydown.contains (-75 , 10 ));
248+ ASSERT_FALSE (rect_ydown.contains (-45 , 30 ));
249+ ASSERT_FALSE (rect_ydown.contains (151 , -76 ));
250+ ASSERT_FALSE (rect_ydown.contains (149 , -76 ));
251+ ASSERT_FALSE (rect_ydown.contains (151 , -74 ));
252+
253+ ASSERT_TRUE (rect.contains (-50 , -75 ));
254+ ASSERT_TRUE (rect.contains (150 , -75 ));
255+ ASSERT_TRUE (rect.contains (150 , 25 ));
256+ ASSERT_TRUE (rect.contains (-50 , 25 ));
257+ ASSERT_TRUE (rect.contains (-40 , -70 ));
258+ ASSERT_TRUE (rect.contains (100 , 0 ));
259+ ASSERT_TRUE (rect.contains (0 , -40 ));
260+ ASSERT_TRUE (rect.contains (5 , 24 ));
261+
262+ ASSERT_TRUE (rect_ydown.contains (-50 , -75 ));
263+ ASSERT_TRUE (rect_ydown.contains (150 , -75 ));
264+ ASSERT_TRUE (rect_ydown.contains (150 , 25 ));
265+ ASSERT_TRUE (rect_ydown.contains (-50 , 25 ));
266+ ASSERT_TRUE (rect_ydown.contains (-40 , -70 ));
267+ ASSERT_TRUE (rect_ydown.contains (100 , 0 ));
268+ ASSERT_TRUE (rect_ydown.contains (0 , -40 ));
269+ ASSERT_TRUE (rect_ydown.contains (5 , 24 ));
270+ }
0 commit comments