Add Edge Gateway tests for unit, API, and integration scenarios
This commit is contained in:
@@ -6,6 +6,7 @@ it('builds the installer around the compose stack artifacts and management polli
|
||||
$stackServiceSource = file_get_contents(app_path('resources/edge-gateway-agent/truckwash-edge-gateway-stack.service'));
|
||||
$launcherSource = file_get_contents(app_path('resources/edge-gateway-agent/gateway-launcher.sh'));
|
||||
$composeSource = file_get_contents(app_path('resources/edge-gateway-agent/docker-compose.gateway.yml'));
|
||||
$agentSource = file_get_contents(app_path('resources/edge-gateway-agent/agent.php'));
|
||||
$edgeDockerfileSource = file_get_contents(app_path('resources/edge-gateway-agent/Dockerfile.edge-agent'));
|
||||
$workerDockerfileSource = file_get_contents(app_path('resources/edge-gateway-agent/Dockerfile.lan-worker'));
|
||||
$autoUpdaterSource = file_get_contents(app_path('resources/edge-gateway-agent/auto-updater.php'));
|
||||
@@ -14,6 +15,7 @@ it('builds the installer around the compose stack artifacts and management polli
|
||||
expect($managerSource)->not->toBeFalse();
|
||||
expect($launcherSource)->not->toBeFalse();
|
||||
expect($composeSource)->not->toBeFalse();
|
||||
expect($agentSource)->not->toBeFalse();
|
||||
expect($edgeDockerfileSource)->not->toBeFalse();
|
||||
expect($workerDockerfileSource)->not->toBeFalse();
|
||||
expect($autoUpdaterSource)->not->toBeFalse();
|
||||
@@ -66,7 +68,11 @@ it('builds the installer around the compose stack artifacts and management polli
|
||||
expect($composeSource)->toContain('condition: service_healthy');
|
||||
expect($composeSource)->toContain("minio:\n condition: service_started");
|
||||
expect($composeSource)->toContain("mariadb:\n condition: service_started");
|
||||
expect($composeSource)->toContain("test: [\"CMD-SHELL\", \"kill -0 1\"]");
|
||||
expect($composeSource)->toContain('/opt/truckwash-edge-agent/runtime/control-plane-status.json');
|
||||
expect($composeSource)->toContain('$$data[\\"last_loop_at\\"]');
|
||||
expect($composeSource)->toContain('$$data[\\"last_successful_sync_at\\"]');
|
||||
expect($composeSource)->toContain('<= 30');
|
||||
expect($composeSource)->toContain('<= 90');
|
||||
expect($composeSource)->toContain("http://127.0.0.1:8090/health");
|
||||
expect($composeSource)->toContain('$$json=@file_get_contents(\'http://127.0.0.1:8090/health\');');
|
||||
expect($composeSource)->toContain('$$path=\"/opt/truckwash-edge-agent/runtime/auto-updater-heartbeat.json\"');
|
||||
@@ -76,6 +82,15 @@ it('builds the installer around the compose stack artifacts and management polli
|
||||
expect($composeSource)->toContain('container_name: truckwash-mariadb');
|
||||
expect($composeSource)->toContain('container_name: truckwash-minio');
|
||||
expect($composeSource)->toContain('container_name: truckwash-auto-updater');
|
||||
expect($agentSource)->toContain('private string $controlPlaneStatusPath;');
|
||||
expect($agentSource)->toContain('control-plane-status.json');
|
||||
expect($agentSource)->toContain("'control_plane_status' => \$this->buildControlPlaneStatusPayload()");
|
||||
expect($agentSource)->toContain("'last_heartbeat_attempt_at'");
|
||||
expect($agentSource)->toContain("'last_heartbeat_success_at'");
|
||||
expect($agentSource)->toContain("'last_successful_sync_at'");
|
||||
expect($agentSource)->toContain("'last_transport_failure_at'");
|
||||
expect($agentSource)->toContain("'last_transport_error'");
|
||||
expect($agentSource)->toContain('private function recordTransportFailure(string $context, Throwable $throwable): void');
|
||||
expect($edgeDockerfileSource)->toContain('FROM ${BASE_IMAGE}');
|
||||
expect($edgeDockerfileSource)->toContain('COPY agent.php /opt/truckwash-edge-agent/agent.php');
|
||||
expect($edgeDockerfileSource)->not->toContain('docker-php-ext-install');
|
||||
|
||||
Reference in New Issue
Block a user