@@ -127,6 +127,15 @@ describe('Rectangle', () => {
127127 let test = new Rectangle ( cx , cy , w * 2 , h * 2 ) ;
128128 expect ( base . intersects ( test ) ) . to . be . true ;
129129 } ) ;
130+
131+ it ( 'returns true when base rect overlaps test rect only on left edge' , ( ) => {
132+ let test = new Rectangle ( left + 10 , top - 10 , w , h + 20 ) ;
133+ expect ( base . intersects ( test ) ) . to . be . true ;
134+ } ) ;
135+ it ( 'returns true when test rect overlaps base rect only on left edge' , ( ) => {
136+ let test = new Rectangle ( left - 10 , top + 10 , w , h - 20 ) ;
137+ expect ( base . intersects ( test ) ) . to . be . true ;
138+ } ) ;
130139 it ( 'returns true when edges line up on the left' , ( ) => {
131140 let test = new Rectangle ( left - 10 , cy , 20 , 20 ) ;
132141 expect ( base . intersects ( test ) ) . to . be . true ;
@@ -135,6 +144,15 @@ describe('Rectangle', () => {
135144 let test = new Rectangle ( left - 10 - 1 , cy , 10 , 10 ) ;
136145 expect ( base . intersects ( test ) ) . not . to . be . true ;
137146 } ) ;
147+
148+ it ( 'returns true when base rect overlaps test rect only on right edge' , ( ) => {
149+ let test = new Rectangle ( left - 10 , top - 10 , w , h + 20 ) ;
150+ expect ( base . intersects ( test ) ) . to . be . true ;
151+ } ) ;
152+ it ( 'returns true when test rect overlaps base rect only on right edge' , ( ) => {
153+ let test = new Rectangle ( left + 10 , top + 10 , w , h - 20 ) ;
154+ expect ( base . intersects ( test ) ) . to . be . true ;
155+ } ) ;
138156 it ( 'returns true when edges line up on the right' , ( ) => {
139157 let test = new Rectangle ( right + 10 , cy , 20 , 20 ) ;
140158 expect ( base . intersects ( test ) ) . to . be . true ;
@@ -143,6 +161,15 @@ describe('Rectangle', () => {
143161 let test = new Rectangle ( right + 10 + 1 , cy , 10 , 10 ) ;
144162 expect ( base . intersects ( test ) ) . not . to . be . true ;
145163 } ) ;
164+
165+ it ( 'returns true when base rect overlaps test rect only on top edge' , ( ) => {
166+ let test = new Rectangle ( left - 10 , top + 10 , w + 20 , h ) ;
167+ expect ( base . intersects ( test ) ) . to . be . true ;
168+ } ) ;
169+ it ( 'returns true when test rect overlaps base rect only on top edge' , ( ) => {
170+ let test = new Rectangle ( left + 10 , top - 10 , w - 20 , h ) ;
171+ expect ( base . intersects ( test ) ) . to . be . true ;
172+ } ) ;
146173 it ( 'returns true when edges line up on the top' , ( ) => {
147174 let test = new Rectangle ( cx , top - 10 , 20 , 20 ) ;
148175 expect ( base . intersects ( test ) ) . to . be . true ;
@@ -151,6 +178,15 @@ describe('Rectangle', () => {
151178 let test = new Rectangle ( cx , top - 10 - 1 , 10 , 10 ) ;
152179 expect ( base . intersects ( test ) ) . not . to . be . true ;
153180 } ) ;
181+
182+ it ( 'returns true when base rect overlaps test rect only on bottom edge' , ( ) => {
183+ let test = new Rectangle ( left - 10 , top - 10 , w + 20 , h ) ;
184+ expect ( base . intersects ( test ) ) . to . be . true ;
185+ } ) ;
186+ it ( 'returns true when test rect overlaps base rect only on bottom edge' , ( ) => {
187+ let test = new Rectangle ( left + 10 , top + 10 , w - 20 , h ) ;
188+ expect ( base . intersects ( test ) ) . to . be . true ;
189+ } ) ;
154190 it ( 'returns true when edges line up on the bottom' , ( ) => {
155191 let test = new Rectangle ( cx , bottom + 10 , 20 , 20 ) ;
156192 expect ( base . intersects ( test ) ) . to . be . true ;
0 commit comments