function test_call_api_should_call_wp_remote_request_with_desired_params_and_return_error_if_not_successful() { add_filter("pre_http_request", array($this, "get_error_http_response"), 10, 3); $this->assertNull($this->http_request); $this->assertNull($this->url); $expected = '{ "object": "error", "message": "User has blocked requests through HTTP." }'; $omise = new Omise(); $response = $omise->call_api("private_key", "GET", "/customers/customer_id/cards"); $this->assertEquals($expected, $response); global $wp_version; $expected = "GET"; $actual = $this->http_request["method"]; $this->assertEquals($expected, $actual); $expected = 60; $actual = $this->http_request["timeout"]; $this->assertEquals($expected, $actual); $expected = "Basic cHJpdmF0ZV9rZXk6"; $actual = $this->http_request["headers"]["Authorization"]; $this->assertEquals($expected, $actual); $expected = "2014-07-27"; $actual = $this->http_request["headers"]["Omise-Version"]; $this->assertEquals($expected, $actual); $expected = "OmiseWooCommerce/" . OMISE_WOOCOMMERCE_PLUGIN_VERSION . " WooCommerce/" . WC_VERSION . " Wordpress/" . $wp_version; $actual = $this->http_request["headers"]["User-Agent"]; $this->assertEquals($expected, $actual); $expected = "https://api.omise.co/customers/customer_id/cards"; $this->assertEquals($expected, $this->url); remove_filter("pre_http_request", array($this, "get_error_http_response"), 10, 3); }