autoship_init_integration_test (function)
( src/api-health.php) Initiates the WooCommerce to Autoship to QPilot integration status check. Upon completion of the tests, the corresponding status timestamps are then populated.
Function
/**
* Initiates the Autoship <> QPilot integration tests.
* Hits the QPilot test endpoint where QPilot then checks
* POST, GET, and PUT calls to WC and Autoship Endpoints.
* If successful the corresponding status timestamps are populated.
*
*/
function autoship_init_integration_test(){
// Clear the Status timestamps in prep for testing.
autoship_clear_integration_point_statuses();
// Create the QPilot client
// Grab the client and only continue if connection exists.
if ( empty( $client = autoship_get_default_client() ) || empty( $client->get_token_auth() ) || empty( $client->get_site_id() ))
return false;
try {
/**
* Initiate QPilot's integration tests.
* When initiated QPilot uses the api autoshipcloud/v1/statuscheck/put
* and autoshipcloud/v1/statuscheck/post as well as the WC REST API
* to Check if the connection is fully valid.
*
*/
$result = $client->check_integration_status();
// Run the Status checks to ensure all green lights
$health = autoship_integration_statuses_check( $result );
} catch ( Exception $e ) {
// Run the Status checks to see where the failure occurred.
$health = autoship_integration_statuses_check( NULL, true, $e->getCode(), $e->getMessage() );
}
do_action( 'autoship_init_integration_test_complete', $health );
return $health;
}