@@ -330,6 +330,58 @@ public function testStartsWithRegexQuestionmark()
330330 );
331331 }
332332
333+ public function testContainsSingle ()
334+ {
335+ $ testObject = ParseObject::create ('TestObject ' );
336+ $ testObject ->set ('foo ' , 'foobarfoo ' );
337+ $ testObject ->save ();
338+ $ query = new ParseQuery ('TestObject ' );
339+ $ query ->contains ('foo ' , 'bar ' );
340+ $ results = $ query ->find ();
341+ $ this ->assertEquals (
342+ count ($ results ),
343+ 1 ,
344+ 'Contains should find the string. '
345+ );
346+ }
347+
348+ public function testContainsMultiple ()
349+ {
350+ $ this ->provideTestObjects (10 );
351+ $ query = new ParseQuery ('TestObject ' );
352+ $ query ->contains ('foo ' , 'bar ' );
353+ $ results = $ query ->find ();
354+ $ this ->assertEquals (
355+ count ($ results ),
356+ 10 ,
357+ 'Contains function did not return correct number of objects. '
358+ );
359+
360+ $ query = new ParseQuery ('TestObject ' );
361+ $ query ->contains ('foo ' , '8 ' );
362+ $ results = $ query ->find ();
363+ $ this ->assertEquals (
364+ count ($ results ),
365+ 1 ,
366+ 'Contains function did not return correct number of objects. '
367+ );
368+ }
369+
370+ public function testContainsNonExistent ()
371+ {
372+ $ testObject = ParseObject::create ('TestObject ' );
373+ $ testObject ->set ('foo ' , 'foobarfoo ' );
374+ $ testObject ->save ();
375+ $ query = new ParseQuery ('TestObject ' );
376+ $ query ->contains ('foo ' , 'baz ' );
377+ $ results = $ query ->find ();
378+ $ this ->assertEquals (
379+ count ($ results ),
380+ 0 ,
381+ 'Contains should not find. '
382+ );
383+ }
384+
333385 public function testGreaterThan ()
334386 {
335387 $ this ->provideTestObjects (10 );
0 commit comments