FIx shared structs + add better debugging/linting (#379)

* fix: Fixes issues w/ shared pointers to structs (#378)
* feat: Adds even better debugging and linting support (#376)

This is a #PATCH release.
This commit is contained in:
Harrison (Harry) Cramer
2024-09-16 17:06:40 -04:00
committed by GitHub
parent c3d7f26e3c
commit 5c9b88db4f
31 changed files with 191 additions and 155 deletions

View File

@@ -75,7 +75,7 @@ func TestWithMrMiddleware(t *testing.T) {
data, status := getFailData(t, handler, request)
assert(t, status, http.StatusNotFound)
assert(t, data.Message, "No MRs Found")
assert(t, data.Details, "Branch 'foo' does not have any merge requests")
assert(t, data.Details, "branch 'foo' does not have any merge requests")
})
t.Run("Handles when there are too many MRs", func(t *testing.T) {
request := makeRequest(t, http.MethodGet, "/foo", nil)
@@ -88,7 +88,7 @@ func TestWithMrMiddleware(t *testing.T) {
data, status := getFailData(t, handler, request)
assert(t, status, http.StatusBadRequest)
assert(t, data.Message, "Multiple MRs found")
assert(t, data.Details, "Please call gitlab.choose_merge_request()")
assert(t, data.Details, "please call gitlab.choose_merge_request()")
})
}
@@ -97,7 +97,7 @@ func TestValidatorMiddleware(t *testing.T) {
request := makeRequest(t, http.MethodPost, "/foo", FakePayload{}) // No Foo field
data, status := getFailData(t, middleware(
fakeHandler{},
withPayloadValidation(methodToPayload{http.MethodPost: &FakePayload{}}),
withPayloadValidation(methodToPayload{http.MethodPost: newPayload[FakePayload]}),
), request)
assert(t, data.Message, "Invalid payload")
assert(t, data.Details, "Foo is required")
@@ -107,7 +107,7 @@ func TestValidatorMiddleware(t *testing.T) {
request := makeRequest(t, http.MethodPost, "/foo", FakePayload{Foo: "Some payload"})
data := getSuccessData(t, middleware(
fakeHandler{},
withPayloadValidation(methodToPayload{http.MethodPost: &FakePayload{}}),
withPayloadValidation(methodToPayload{http.MethodPost: newPayload[FakePayload]}),
), request)
assert(t, data.Message, "Some message")
})