diff --git src/bp-xprofile/classes/class-bp-xprofile-field-type.php src/bp-xprofile/classes/class-bp-xprofile-field-type.php
index ccfb2c6..0c8ba43 100644
|
|
|
abstract class BP_XProfile_Field_Type { |
| 206 | 206 | $validated = true; |
| 207 | 207 | } |
| 208 | 208 | |
| 209 | | // If there's a whitelist set, also check the $value. |
| | 209 | // If there's a whitelist set, make sure that each value is a whitelisted value. |
| 210 | 210 | if ( ( true === $validated ) && ! empty( $values ) && ! empty( $this->validation_whitelist ) ) { |
| 211 | 211 | foreach ( (array) $values as $value ) { |
| 212 | | $validated = in_array( $value, $this->validation_whitelist, true ); |
| | 212 | if ( ! in_array( $value, $this->validation_whitelist, true ) ) { |
| | 213 | $validated = false; |
| | 214 | break; |
| | 215 | } |
| 213 | 216 | } |
| 214 | 217 | } |
| 215 | 218 | |
diff --git tests/phpunit/testcases/xprofile/class-bp-xprofile-field-type.php tests/phpunit/testcases/xprofile/class-bp-xprofile-field-type.php
index 2587d90..6fa2644 100644
|
|
|
class BP_Tests_XProfile_Field_Type extends BP_UnitTestCase { |
| 38 | 38 | |
| 39 | 39 | $this->assertTrue( $field->is_valid( array( 'cheese', 'pepporoni' ) ) ); |
| 40 | 40 | $this->assertTrue( $field->is_valid( array( 'cheese' ) ) ); |
| 41 | | $this->assertFalse( $field->is_valid( array( 'cheese', 'pepporoni', 'pinapple' ) ) ); |
| | 41 | $this->assertFalse( $field->is_valid( array( 'cheese', 'pinapple', 'pepporoni' ) ) ); |
| 42 | 42 | $this->assertFalse( $field->is_valid( array( 'pinapple' ) ) ); |
| 43 | 43 | } |
| 44 | 44 | |
| … |
… |
class BP_Tests_XProfile_Field_Type extends BP_UnitTestCase { |
| 104 | 104 | |
| 105 | 105 | $this->assertTrue( $field->is_valid( array( 123 ) ) ); |
| 106 | 106 | $this->assertTrue( $field->is_valid( array( 456 ) ) ); |
| 107 | | $this->assertFalse( $field->is_valid( array( 123, 456, 789 ) ) ); |
| | 107 | $this->assertFalse( $field->is_valid( array( 789, 456, 123 ) ) ); |
| 108 | 108 | $this->assertFalse( $field->is_valid( array( 789 ) ) ); |
| 109 | 109 | } |
| 110 | 110 | |
| … |
… |
class BP_Tests_XProfile_Field_Type extends BP_UnitTestCase { |
| 114 | 114 | |
| 115 | 115 | $this->assertTrue( $field->is_valid( array( 'cheese', 'pepporoni' ) ) ); |
| 116 | 116 | $this->assertTrue( $field->is_valid( array( 'cheese' ) ) ); |
| 117 | | $this->assertFalse( $field->is_valid( array( 'cheese', 'pepporoni', 'pinapple' ) ) ); |
| | 117 | $this->assertFalse( $field->is_valid( array( 'pinapple', 'cheese', 'pepporoni' ) ) ); |
| 118 | 118 | $this->assertFalse( $field->is_valid( array( 'pinapple' ) ) ); |
| 119 | 119 | $this->assertFalse( $field->is_valid( '' ) ); |
| 120 | 120 | } |
| … |
… |
class BP_Tests_XProfile_Field_Type extends BP_UnitTestCase { |
| 132 | 132 | |
| 133 | 133 | $this->assertTrue( $field->is_valid( array( 'cheese', 'pepporoni' ) ) ); |
| 134 | 134 | $this->assertTrue( $field->is_valid( array( 'cheese' ) ) ); |
| 135 | | $this->assertFalse( $field->is_valid( array( 'cheese', 'pepporoni', 'pinapple' ) ) ); |
| | 135 | $this->assertFalse( $field->is_valid( array( 'pepporoni', 'cheese', 'pinapple' ) ) ); |
| 136 | 136 | $this->assertFalse( $field->is_valid( array( 'pinapple' ) ) ); |
| 137 | 137 | $this->assertFalse( $field->is_valid( '' ) ); |
| 138 | 138 | } |