@@ -195,6 +195,17 @@ public function testException()
195195 $ this ->assertTrue ($ result ->wasSuccessful ());
196196 }
197197
198+ public function testExceptionBackport ()
199+ {
200+ $ test = new ThrowExceptionTestCase ('test ' );
201+ $ test ->expectException ('RuntimeException ' );
202+
203+ $ result = $ test ->run ();
204+
205+ $ this ->assertEquals (1 , count ($ result ));
206+ $ this ->assertTrue ($ result ->wasSuccessful ());
207+ }
208+
198209 public function testExceptionWithMessage ()
199210 {
200211 $ test = new ThrowExceptionTestCase ('test ' );
@@ -206,6 +217,18 @@ public function testExceptionWithMessage()
206217 $ this ->assertTrue ($ result ->wasSuccessful ());
207218 }
208219
220+ public function testExceptionWithMessageBackport ()
221+ {
222+ $ test = new ThrowExceptionTestCase ('test ' );
223+ $ test ->expectException ('RuntimeException ' );
224+ $ test ->expectExceptionMessage ('A runtime error occurred ' );
225+
226+ $ result = $ test ->run ();
227+
228+ $ this ->assertEquals (1 , count ($ result ));
229+ $ this ->assertTrue ($ result ->wasSuccessful ());
230+ }
231+
209232 public function testExceptionWithWrongMessage ()
210233 {
211234 $ test = new ThrowExceptionTestCase ('test ' );
@@ -221,6 +244,22 @@ public function testExceptionWithWrongMessage()
221244 );
222245 }
223246
247+ public function testExceptionWithWrongMessageBackport ()
248+ {
249+ $ test = new ThrowExceptionTestCase ('test ' );
250+ $ test ->expectException ('RuntimeException ' );
251+ $ test ->expectExceptionMessage ('A logic error occurred ' );
252+
253+ $ result = $ test ->run ();
254+
255+ $ this ->assertEquals (1 , $ result ->failureCount ());
256+ $ this ->assertEquals (1 , count ($ result ));
257+ $ this ->assertEquals (
258+ "Failed asserting that exception message 'A runtime error occurred' contains 'A logic error occurred'. " ,
259+ $ test ->getStatusMessage ()
260+ );
261+ }
262+
224263 public function testExceptionWithRegexpMessage ()
225264 {
226265 $ test = new ThrowExceptionTestCase ('test ' );
@@ -263,6 +302,39 @@ public function testExceptionWithInvalidRegexpMessage()
263302 );
264303 }
265304
305+ public function testExceptionWithWrongRegexpMessageBackport ()
306+ {
307+ $ test = new ThrowExceptionTestCase ('test ' );
308+ $ test ->expectException ('RuntimeException ' );
309+ $ test ->expectExceptionMessageRegExp ('/logic .*? occurred/ ' );
310+
311+ $ result = $ test ->run ();
312+
313+ $ this ->assertEquals (1 , $ result ->failureCount ());
314+ $ this ->assertEquals (1 , count ($ result ));
315+ $ this ->assertEquals (
316+ "Failed asserting that exception message 'A runtime error occurred' matches '/logic .*? occurred/'. " ,
317+ $ test ->getStatusMessage ()
318+ );
319+ }
320+
321+ /**
322+ * @covers PHPUnit_Framework_Constraint_ExceptionMessageRegExp
323+ */
324+ public function testExceptionWithInvalidRegexpMessageBackport ()
325+ {
326+ $ test = new ThrowExceptionTestCase ('test ' );
327+ $ test ->expectException ('RuntimeException ' );
328+ $ test ->expectExceptionMessageRegExp ('#runtime .*? occurred/ ' );
329+
330+ $ test ->run ();
331+
332+ $ this ->assertEquals (
333+ "Invalid expected exception message regex given: '#runtime .*? occurred/' " ,
334+ $ test ->getStatusMessage ()
335+ );
336+ }
337+
266338 public function testNoException ()
267339 {
268340 $ test = new ThrowNoExceptionTestCase ('test ' );
0 commit comments