@@ -145,6 +145,35 @@ func TestT41_GitHubRunnerProviderModuleServesComputeProviderHTTP(t *testing.T) {
145145 }
146146}
147147
148+ func TestT44_GitHubRunnerProviderServesHealthz (t * testing.T ) {
149+ module , err := newGitHubRunnerProviderModule ("provider" , map [string ]any {
150+ "token" : "github-token" ,
151+ "provider_token" : "provider-token" ,
152+ "repositories" : []any {"GoCodeAlone/workflow-compute" },
153+ }, & fakeRunnerClient {})
154+ if err != nil {
155+ t .Fatalf ("module: %v" , err )
156+ }
157+ server := httptest .NewServer (module .HTTPHandler ())
158+ defer server .Close ()
159+
160+ resp , err := server .Client ().Get (server .URL + "/healthz" )
161+ if err != nil {
162+ t .Fatalf ("health request: %v" , err )
163+ }
164+ defer resp .Body .Close ()
165+ if resp .StatusCode != http .StatusOK {
166+ t .Fatalf ("status: got %d want 200" , resp .StatusCode )
167+ }
168+ var got map [string ]string
169+ if err := json .NewDecoder (resp .Body ).Decode (& got ); err != nil {
170+ t .Fatalf ("decode response: %v" , err )
171+ }
172+ if got ["status" ] != "ok" {
173+ t .Fatalf ("health response: got %+v" , got )
174+ }
175+ }
176+
148177func TestT41_GitHubRunnerProviderHTTPRejectsUnallowlistedRepository (t * testing.T ) {
149178 module , err := newGitHubRunnerProviderModule ("provider" , map [string ]any {
150179 "token" : "github-token" ,
0 commit comments