multiple() public static method

public static multiple ( $values, $list, $min = null, $max = null )
示例#1
0
 /**
  * Test Multiple Select Validation
  *
  * @return void
  */
 public function testMultiple()
 {
     $this->assertTrue(Validation::multiple(array(0, 1, 2, 3)));
     $this->assertTrue(Validation::multiple(array(50, 32, 22, 0)));
     $this->assertTrue(Validation::multiple(array('str', 'var', 'enum', 0)));
     $this->assertFalse(Validation::multiple(''));
     $this->assertFalse(Validation::multiple(null));
     $this->assertFalse(Validation::multiple(array()));
     $this->assertFalse(Validation::multiple(array(0)));
     $this->assertFalse(Validation::multiple(array('0')));
     $this->assertTrue(Validation::multiple(array(0, 3, 4, 5), array('in' => range(0, 10))));
     $this->assertFalse(Validation::multiple(array(0, 15, 20, 5), array('in' => range(0, 10))));
     $this->assertFalse(Validation::multiple(array(0, 5, 10, 11), array('in' => range(0, 10))));
     $this->assertFalse(Validation::multiple(array('boo', 'foo', 'bar'), array('in' => array('foo', 'bar', 'baz'))));
     $this->assertFalse(Validation::multiple(array('foo', '1bar'), array('in' => range(0, 10))));
     $this->assertTrue(Validation::multiple(array(0, 5, 10, 11), array('max' => 3)));
     $this->assertFalse(Validation::multiple(array(0, 5, 10, 11, 55), array('max' => 3)));
     $this->assertTrue(Validation::multiple(array('foo', 'bar', 'baz'), array('max' => 3)));
     $this->assertFalse(Validation::multiple(array('foo', 'bar', 'baz', 'squirrel'), array('max' => 3)));
     $this->assertTrue(Validation::multiple(array(0, 5, 10, 11), array('min' => 3)));
     $this->assertTrue(Validation::multiple(array(0, 5, 10, 11, 55), array('min' => 3)));
     $this->assertFalse(Validation::multiple(array('foo', 'bar', 'baz'), array('min' => 5)));
     $this->assertFalse(Validation::multiple(array('foo', 'bar', 'baz', 'squirrel'), array('min' => 10)));
     $this->assertTrue(Validation::multiple(array(0, 5, 9), array('in' => range(0, 10), 'max' => 5)));
     $this->assertTrue(Validation::multiple(array('0', '5', '9'), array('in' => range(0, 10), 'max' => 5)));
     $this->assertFalse(Validation::multiple(array(0, 5, 9, 8, 6, 2, 1), array('in' => range(0, 10), 'max' => 5)));
     $this->assertFalse(Validation::multiple(array(0, 5, 9, 8, 11), array('in' => range(0, 10), 'max' => 5)));
     $this->assertFalse(Validation::multiple(array(0, 5, 9), array('in' => range(0, 10), 'max' => 5, 'min' => 3)));
     $this->assertFalse(Validation::multiple(array(0, 5, 9, 8, 6, 2, 1), array('in' => range(0, 10), 'max' => 5, 'min' => 2)));
     $this->assertFalse(Validation::multiple(array(0, 5, 9, 8, 11), array('in' => range(0, 10), 'max' => 5, 'min' => 2)));
     $this->assertFalse(Validation::multiple(array('2x', '3x'), array('in' => array(1, 2, 3, 4, 5))));
     $this->assertFalse(Validation::multiple(array(2, 3), array('in' => array('1x', '2x', '3x', '4x'))));
     $this->assertFalse(Validation::multiple(array('one'), array('in' => array('One', 'Two'))));
     $this->assertFalse(Validation::multiple(array('Two'), array('in' => array('one', 'two'))));
     // case insensitive
     $this->assertTrue(Validation::multiple(array('one'), array('in' => array('One', 'Two')), true));
     $this->assertTrue(Validation::multiple(array('Two'), array('in' => array('one', 'two')), true));
     $this->assertFalse(Validation::multiple(array('three'), array('in' => array('one', 'two')), true));
 }
示例#2
0
 /**
  * Test Multiple Select Validation
  *
  * @return void
  */
 public function testMultiple()
 {
     $this->assertTrue(Validation::multiple(array(0, 1, 2, 3)));
     $this->assertTrue(Validation::multiple(array(50, 32, 22, 0)));
     $this->assertTrue(Validation::multiple(array('str', 'var', 'enum', 0)));
     $this->assertFalse(Validation::multiple(''));
     $this->assertFalse(Validation::multiple(null));
     $this->assertFalse(Validation::multiple(array()));
     $this->assertFalse(Validation::multiple(array(0)));
     $this->assertFalse(Validation::multiple(array('0')));
     $this->assertTrue(Validation::multiple(array(0, 3, 4, 5), array('in' => range(0, 10))));
     $this->assertFalse(Validation::multiple(array(0, 15, 20, 5), array('in' => range(0, 10))));
     $this->assertFalse(Validation::multiple(array(0, 5, 10, 11), array('in' => range(0, 10))));
     $this->assertFalse(Validation::multiple(array('boo', 'foo', 'bar'), array('in' => array('foo', 'bar', 'baz'))));
     $this->assertFalse(Validation::multiple(array('foo', '1bar'), array('in' => range(0, 10))));
     $this->assertTrue(Validation::multiple(array(0, 5, 10, 11), array('max' => 3)));
     $this->assertFalse(Validation::multiple(array(0, 5, 10, 11, 55), array('max' => 3)));
     $this->assertTrue(Validation::multiple(array('foo', 'bar', 'baz'), array('max' => 3)));
     $this->assertFalse(Validation::multiple(array('foo', 'bar', 'baz', 'squirrel'), array('max' => 3)));
     $this->assertTrue(Validation::multiple(array(0, 5, 10, 11), array('min' => 3)));
     $this->assertTrue(Validation::multiple(array(0, 5, 10, 11, 55), array('min' => 3)));
     $this->assertFalse(Validation::multiple(array('foo', 'bar', 'baz'), array('min' => 5)));
     $this->assertFalse(Validation::multiple(array('foo', 'bar', 'baz', 'squirrel'), array('min' => 10)));
     $this->assertTrue(Validation::multiple(array(0, 5, 9), array('in' => range(0, 10), 'max' => 5)));
     $this->assertFalse(Validation::multiple(array('0', '5', '9'), array('in' => range(0, 10), 'max' => 5)));
     $this->assertTrue(Validation::multiple(array('0', '5', '9'), array('in' => range(0, 10), 'max' => 5), false));
     $this->assertFalse(Validation::multiple(array(0, 5, 9, 8, 6, 2, 1), array('in' => range(0, 10), 'max' => 5)));
     $this->assertFalse(Validation::multiple(array(0, 5, 9, 8, 11), array('in' => range(0, 10), 'max' => 5)));
     $this->assertFalse(Validation::multiple(array(0, 5, 9), array('in' => range(0, 10), 'max' => 5, 'min' => 3)));
     $this->assertFalse(Validation::multiple(array(0, 5, 9, 8, 6, 2, 1), array('in' => range(0, 10), 'max' => 5, 'min' => 2)));
     $this->assertFalse(Validation::multiple(array(0, 5, 9, 8, 11), array('in' => range(0, 10), 'max' => 5, 'min' => 2)));
 }
示例#3
0
 /**
  * @testdox multiple should return false to selected options above specified range
  */
 public function testInvalidMultipleWithMax()
 {
     $values = array('Spaghetti' => 1, 'Framework' => 1);
     $list = array('Spaghetti', 'Framework');
     $this->assertFalse(Validation::multiple($values, $list, null, 1));
 }