| 1227 | /** |
| 1228 | * @ticket 42069 |
| 1229 | * @dataProvider data_update_value_return_success_with_same_value |
| 1230 | */ |
| 1231 | public function test_update_value_return_success_with_same_value( $meta_key, $meta_value ) { |
| 1232 | add_post_meta( self::$post_id, $meta_key, $meta_value ); |
| 1233 | |
| 1234 | $this->grant_write_permission(); |
| 1235 | |
| 1236 | $data = array( |
| 1237 | 'meta' => array( |
| 1238 | $meta_key => $meta_value, |
| 1239 | ), |
| 1240 | ); |
| 1241 | |
| 1242 | $request = new WP_REST_Request( 'POST', sprintf( '/wp/v2/posts/%d', self::$post_id ) ); |
| 1243 | $request->set_body_params( $data ); |
| 1244 | |
| 1245 | $response = rest_get_server()->dispatch( $request ); |
| 1246 | |
| 1247 | $this->assertEquals( 200, $response->get_status() ); |
| 1248 | } |
| 1249 | |
| 1250 | public function data_update_value_return_success_with_same_value() { |
| 1251 | return array( |
| 1252 | array( 'test_boolean_update', 0 ), |
| 1253 | array( 'test_boolean_update', 1 ), |
| 1254 | array( 'test_boolean_update', false ), |
| 1255 | array( 'test_boolean_update', true ), |
| 1256 | array( 'test_boolean_update', '' ), |
| 1257 | array( 'test_boolean_update', '0' ), |
| 1258 | array( 'test_boolean_update', '1' ), |
| 1259 | array( 'test_textured_text_update', 'She said, "What about the > 10,000 penguins in the kitchen?"' ), |
| 1260 | array( 'test_textured_text_update', "He's about to do something rash..." ), |
| 1261 | array( 'test_json_text_update', json_encode( array( 'foo' => 'bar' ) ) ), |
| 1262 | ); |
| 1263 | } |
| 1264 | |
| 1265 | /** |
| 1266 | * @ticket 42069 |
| 1267 | * @dataProvider data_update_value_return_success_with_similar_value |
| 1268 | */ |
| 1269 | public function test_update_value_return_success_with_similar_value( $meta_key, $meta_value, $update_meta_value ) { |
| 1270 | add_post_meta( self::$post_id, $meta_key, $meta_value ); |
| 1271 | |
| 1272 | $this->grant_write_permission(); |
| 1273 | |
| 1274 | $data = array( |
| 1275 | 'meta' => array( |
| 1276 | $meta_key => $update_meta_value, |
| 1277 | ), |
| 1278 | ); |
| 1279 | |
| 1280 | $request = new WP_REST_Request( 'POST', sprintf( '/wp/v2/posts/%d', self::$post_id ) ); |
| 1281 | $request->set_body_params( $data ); |
| 1282 | |
| 1283 | $response = rest_get_server()->dispatch( $request ); |
| 1284 | |
| 1285 | $this->assertEquals( 200, $response->get_status() ); |
| 1286 | } |
| 1287 | |
| 1288 | public function data_update_value_return_success_with_similar_value() { |
| 1289 | return array( |
| 1290 | array( 'test_boolean_update', 0, '' ), |
| 1291 | array( 'test_boolean_update', 1, '1' ), |
| 1292 | array( 'test_boolean_update', false, 0 ), |
| 1293 | array( 'test_boolean_update', true, 1 ), |
| 1294 | array( 'test_boolean_update', '', false ), |
| 1295 | array( 'test_boolean_update', '1', true ), |
| 1296 | ); |
| 1297 | } |
| 1298 | |