Code Duplication    Length = 15-16 lines in 5 locations

projects/plugins/jetpack/tests/php/_inc/lib/test_class.rest-api-endpoints.php 5 locations

@@ 1135-1150 (lines=16) @@
1132
	 *
1133
	 * @since 9.9.0
1134
	 */
1135
	public function test_get_purchase_token() {
1136
		$purchase_token = '1ApurchaseToken1';
1137
		Jetpack_Options::update_option( 'id', 1234 );
1138
		Jetpack_Options::update_option( 'purchase_token', $purchase_token );
1139
1140
		// Create a user and set it up as current.
1141
		$user = $this->create_and_get_user( 'administrator' );
1142
		wp_set_current_user( $user->ID );
1143
1144
		// Fetch purchase token.
1145
		$response = $this->create_and_get_request( 'purchase-token', array(), 'GET' );
1146
1147
		// Confirm purchase token exists.
1148
		$this->assertResponseStatus( 200, $response );
1149
		$this->assertEquals( $purchase_token, $response->get_data() );
1150
	}
1151
1152
	/**
1153
	 * Test fetching a site's purchase token with a non-administrator user.
@@ 1157-1172 (lines=16) @@
1154
	 *
1155
	 * @since 9.9.0
1156
	 */
1157
	public function test_get_purchase_token_non_admin_user() {
1158
		$purchase_token = '1ApurchaseToken1';
1159
		Jetpack_Options::update_option( 'id', 1234 );
1160
		Jetpack_Options::update_option( 'purchase_token', $purchase_token );
1161
1162
		// Create a user and set it up as current.
1163
		$user = $this->create_and_get_user();
1164
		wp_set_current_user( $user->ID );
1165
1166
		// Fetch purchase token.
1167
		$response = $this->create_and_get_request( 'purchase-token', array(), 'GET' );
1168
1169
		// Request fails because the user doesn't have the `manage_options` permission.
1170
		$this->assertResponseStatus( 403, $response );
1171
		$this->assertResponseData( array( 'code' => 'invalid_permission_manage_purchase_token' ), $response );
1172
	}
1173
1174
	/**
1175
	 * Test fetching a site's purchase token when no site is registered.
@@ 1179-1193 (lines=15) @@
1176
	 *
1177
	 * @since 9.9.0
1178
	 */
1179
	public function test_get_purchase_token_no_site_registered() {
1180
		$purchase_token = '1ApurchaseToken1';
1181
		Jetpack_Options::update_option( 'purchase_token', $purchase_token );
1182
1183
		// Create a user and set it up as current.
1184
		$user = $this->create_and_get_user( 'administrator' );
1185
		wp_set_current_user( $user->ID );
1186
1187
		// Fetch purchase token.
1188
		$response = $this->create_and_get_request( 'purchase-token', array(), 'GET' );
1189
1190
		// Confirm that the request failed.
1191
		$this->assertResponseStatus( 500, $response );
1192
		$this->assertResponseData( array( 'code' => 'site_not_registered' ), $response );
1193
	}
1194
1195
	/**
1196
	 * Test deleting a site's purchase token.
@@ 1235-1250 (lines=16) @@
1232
	 *
1233
	 * @since 9.9.0
1234
	 */
1235
	public function test_delete_purchase_token_non_admin_user() {
1236
		$purchase_token = '1ApurchaseToken1';
1237
		Jetpack_Options::update_option( 'id', 1234 );
1238
		Jetpack_Options::update_option( 'purchase_token', $purchase_token );
1239
1240
		// Create a user and set it up as current.
1241
		$user = $this->create_and_get_user();
1242
		wp_set_current_user( $user->ID );
1243
1244
		// Fetch the purchase token.
1245
		$response = $this->create_and_get_request( 'purchase-token', array(), 'GET' );
1246
1247
		// Request fails because the user doesn't have the `manage_options` permission.
1248
		$this->assertResponseStatus( 403, $response );
1249
		$this->assertResponseData( array( 'code' => 'invalid_permission_manage_purchase_token' ), $response );
1250
	}
1251
1252
	/**
1253
	 * Test deleting a site's purchase token when no site is registered.
@@ 1257-1271 (lines=15) @@
1254
	 *
1255
	 * @since 9.9.0
1256
	 */
1257
	public function test_delete_purchase_token_no_site_registered() {
1258
		$purchase_token = '1ApurchaseToken1';
1259
		Jetpack_Options::update_option( 'purchase_token', $purchase_token );
1260
1261
		// Create a user and set it up as current.
1262
		$user = $this->create_and_get_user( 'administrator' );
1263
		wp_set_current_user( $user->ID );
1264
1265
		// Fetch purchase token.
1266
		$response = $this->create_and_get_request( 'purchase-token', array(), 'POST' );
1267
1268
		// Confirm that the request failed.
1269
		$this->assertResponseStatus( 500, $response );
1270
		$this->assertResponseData( array( 'code' => 'site_not_registered' ), $response );
1271
	}
1272
} // class end
1273