33 lines
1.4 KiB
PHP
33 lines
1.4 KiB
PHP
|
|
<?php
|
||
|
|
|
||
|
|
it('documents both supported methods for service application actions', function () {
|
||
|
|
$openApi = json_decode(
|
||
|
|
file_get_contents(__DIR__.'/../../openapi.json'),
|
||
|
|
true,
|
||
|
|
flags: JSON_THROW_ON_ERROR,
|
||
|
|
);
|
||
|
|
|
||
|
|
$actionPaths = [
|
||
|
|
'/services/{uuid}/applications/{app_uuid}/logs',
|
||
|
|
'/services/{uuid}/applications/{app_uuid}/start',
|
||
|
|
'/services/{uuid}/applications/{app_uuid}/restart',
|
||
|
|
'/services/{uuid}/applications/{app_uuid}/stop',
|
||
|
|
];
|
||
|
|
|
||
|
|
foreach ($actionPaths as $path) {
|
||
|
|
expect($openApi['paths'][$path])
|
||
|
|
->toHaveKeys(['get', 'post'])
|
||
|
|
->and($openApi['paths'][$path]['post']['responses'])
|
||
|
|
->toHaveKeys(['200', '400', '401', '404', '501']);
|
||
|
|
}
|
||
|
|
|
||
|
|
expect($openApi['paths'][$actionPaths[0]]['post']['responses']['200']['content']['application/json']['schema']['properties'])
|
||
|
|
->toHaveKey('logs')
|
||
|
|
->and($openApi['paths'][$actionPaths[1]]['post']['responses']['200']['content']['application/json']['schema']['properties'])
|
||
|
|
->toHaveKey('message')
|
||
|
|
->and($openApi['paths'][$actionPaths[2]]['post']['responses']['200']['content']['application/json']['schema']['properties'])
|
||
|
|
->toHaveKey('message')
|
||
|
|
->and($openApi['paths'][$actionPaths[3]]['post']['responses']['200']['content']['application/json']['schema']['properties'])
|
||
|
|
->toHaveKey('message');
|
||
|
|
});
|