| | 1249 | * Test passing `null` for a setting ID to remove it from the changeset. |
| | 1250 | * |
| | 1251 | * @covers WP_Customize_Manager::save_changeset_post() |
| | 1252 | */ |
| | 1253 | function test_remove_setting_from_changeset_post() { |
| | 1254 | $uuid = wp_generate_uuid4(); |
| | 1255 | |
| | 1256 | $manager = $this->create_test_manager( $uuid ); |
| | 1257 | $manager->save_changeset_post( array( |
| | 1258 | 'data' => array( |
| | 1259 | 'scratchpad' => array( |
| | 1260 | 'value' => 'foo', |
| | 1261 | ), |
| | 1262 | ), |
| | 1263 | ) ); |
| | 1264 | |
| | 1265 | // Create a new manager so post values are unset. |
| | 1266 | $manager = $this->create_test_manager( $uuid ); |
| | 1267 | |
| | 1268 | $this->assertArrayHasKey( 'scratchpad', $manager->changeset_data() ); |
| | 1269 | |
| | 1270 | $manager->save_changeset_post( array( |
| | 1271 | 'data' => array( |
| | 1272 | 'scratchpad' => null, |
| | 1273 | ), |
| | 1274 | ) ); |
| | 1275 | |
| | 1276 | $this->assertArrayNotHasKey( 'scratchpad', $manager->changeset_data() ); |
| | 1277 | } |
| | 1278 | |
| | 1279 | /** |