|
5 | 5 | use App\Models\User; |
6 | 6 | use Carbon\CarbonImmutable; |
7 | 7 | use Illuminate\Support\Facades\Auth; |
| 8 | +use Illuminate\Support\Facades\Route; |
8 | 9 | use Laravel\Nightwatch\ExecutionStage; |
9 | 10 | use Laravel\Nightwatch\Facades\Nightwatch; |
10 | 11 | use Orchestra\Testbench\Attributes\WithEnv; |
@@ -89,4 +90,65 @@ public function test_it_ingests_fatal_errors_immediately(): void |
89 | 90 | ], |
90 | 91 | ]); |
91 | 92 | } |
| 93 | + |
| 94 | + #[WithEnv('NIGHTWATCH_FORCE_REQUEST', '1')] |
| 95 | + #[WithEnv('NIGHTWATCH_DEPLOY', '82f35860d8c7e59fe4d81a3256a2bb34c998acd9')] |
| 96 | + public function test_it_uses_nightwatch_deploy_env_for_deployments_by_default(): void |
| 97 | + { |
| 98 | + $ingest = $this->fakeIngest(); |
| 99 | + Route::get('/test', function () { |
| 100 | + return 'OK'; |
| 101 | + }); |
| 102 | + |
| 103 | + $this->get('/test')->assertOk(); |
| 104 | + |
| 105 | + $ingest->assertWrittenTimes(1); |
| 106 | + $ingest->assertLatestWrite('request:0.deploy', '82f35860d8c7e59fe4d81a3256a2bb34c998acd9'); |
| 107 | + } |
| 108 | + |
| 109 | + #[WithEnv('NIGHTWATCH_FORCE_REQUEST', '1')] |
| 110 | + #[WithEnv('LARAVEL_CLOUD_COMMIT', '92f35860d8c7e59fe4d81a3256a2bb34c998acd9')] |
| 111 | + public function test_it_uses_cloud_commit_env_for_deployments_if_available(): void |
| 112 | + { |
| 113 | + $ingest = $this->fakeIngest(); |
| 114 | + Route::get('/test', function () { |
| 115 | + return 'OK'; |
| 116 | + }); |
| 117 | + |
| 118 | + $this->get('/test')->assertOk(); |
| 119 | + |
| 120 | + $ingest->assertWrittenTimes(1); |
| 121 | + $ingest->assertLatestWrite('request:0.deploy', '92f35860d8c7e59fe4d81a3256a2bb34c998acd9'); |
| 122 | + } |
| 123 | + |
| 124 | + #[WithEnv('NIGHTWATCH_FORCE_REQUEST', '1')] |
| 125 | + #[WithEnv('FORGE_DEPLOY_COMMIT', '02f35860d8c7e59fe4d81a3256a2bb34c998acd9')] |
| 126 | + public function test_it_uses_forge_commit_env_for_deployments_if_available(): void |
| 127 | + { |
| 128 | + $ingest = $this->fakeIngest(); |
| 129 | + Route::get('/test', function () { |
| 130 | + return 'OK'; |
| 131 | + }); |
| 132 | + |
| 133 | + $this->get('/test')->assertOk(); |
| 134 | + |
| 135 | + $ingest->assertWrittenTimes(1); |
| 136 | + $ingest->assertLatestWrite('request:0.deploy', '02f35860d8c7e59fe4d81a3256a2bb34c998acd9'); |
| 137 | + } |
| 138 | + |
| 139 | + #[WithEnv('NIGHTWATCH_FORCE_REQUEST', '1')] |
| 140 | + #[WithEnv('FORGE_DEPLOY_COMMIT', '82f35860d8c7e59fe4d81a3256a2bb34c998acd9')] |
| 141 | + #[WithEnv('NIGHTWATCH_DEPLOY', '12f35860d8c7e59fe4d81a3256a2bb34c998acd9')] |
| 142 | + public function test_it_uses_higher_precedent_deploy_env_for_deployments(): void |
| 143 | + { |
| 144 | + $ingest = $this->fakeIngest(); |
| 145 | + Route::get('/test', function () { |
| 146 | + return 'OK'; |
| 147 | + }); |
| 148 | + |
| 149 | + $this->get('/test')->assertOk(); |
| 150 | + |
| 151 | + $ingest->assertWrittenTimes(1); |
| 152 | + $ingest->assertLatestWrite('request:0.deploy', '12f35860d8c7e59fe4d81a3256a2bb34c998acd9'); |
| 153 | + } |
92 | 154 | } |
0 commit comments