assertStringContainsString('error_page 497 = @plain_http_request;', $config); $this->assertStringContainsString('if ($uri != /auth/dingtalk/callback)', $config); $this->assertStringContainsString('proxy_set_header X-Forwarded-Proto http;', $config); $this->assertStringContainsString('return 308 https://218.93.190.75:8442$request_uri;', $config); } public function test_configuration_script_validates_and_restores_on_failure(): void { $script = file_get_contents(base_path('deploy/configure-dingtalk-callback.sh')); $this->assertStringContainsString('nginx -t', $script); $this->assertStringContainsString('the previous configuration was restored', $script); $this->assertStringContainsString('DINGTALK_HTTP_CALLBACK_READY=', $script); } }