From a8b4e986f774da48a74d84e29fb31069bb13f43a Mon Sep 17 00:00:00 2001 From: Brent Baude Date: Wed, 29 Jan 2020 11:23:03 -0600 Subject: apiv2 binding test fixes a recent refactor in the bindings broke the tests. quick fixes to get them working again. Signed-off-by: Brent Baude --- pkg/bindings/connection.go | 11 ++++++----- pkg/bindings/test/common_test.go | 1 + pkg/bindings/test/images_test.go | 10 +++++----- pkg/bindings/test/test_suite_test.go | 13 +++++++++++++ 4 files changed, 25 insertions(+), 10 deletions(-) create mode 100644 pkg/bindings/test/test_suite_test.go diff --git a/pkg/bindings/connection.go b/pkg/bindings/connection.go index 3dec6ca20..2e5fc9cb8 100644 --- a/pkg/bindings/connection.go +++ b/pkg/bindings/connection.go @@ -115,11 +115,12 @@ func (c *Connection) DoRequest(httpBody io.Reader, httpMethod, endpoint string, ) safePathValues := make([]interface{}, len(pathValues)) // Make sure path values are http url safe - for _, pv := range pathValues { - safePathValues = append(safePathValues, url.QueryEscape(pv)) + for i, pv := range pathValues { + safePathValues[i] = url.QueryEscape(pv) } + // Lets eventually use URL for this which might lead to safer + // usage safeEndpoint := fmt.Sprintf(endpoint, safePathValues...) - e := c.makeEndpoint(safeEndpoint) req, err := http.NewRequest(httpMethod, e, httpBody) if err != nil { @@ -150,8 +151,8 @@ func GetConnectionFromContext(ctx context.Context) (*Connection, error) { if c == nil { return nil, errors.New("unable to get connection from context") } - conn := c.(Connection) - return &conn, nil + conn := c.(*Connection) + return conn, nil } // FiltersToHTML converts our typical filter format of a diff --git a/pkg/bindings/test/common_test.go b/pkg/bindings/test/common_test.go index 4f2a98f2b..e3e66c89f 100644 --- a/pkg/bindings/test/common_test.go +++ b/pkg/bindings/test/common_test.go @@ -15,6 +15,7 @@ import ( const ( defaultPodmanBinaryLocation string = "/usr/bin/podman" + alpine string = "docker.io/library/alpine:latest" ) type bindingTest struct { diff --git a/pkg/bindings/test/images_test.go b/pkg/bindings/test/images_test.go index d600197bb..2906d55cd 100644 --- a/pkg/bindings/test/images_test.go +++ b/pkg/bindings/test/images_test.go @@ -34,7 +34,7 @@ var _ = Describe("Podman images", func() { //podmanTest.Setup() //podmanTest.SeedImages() bt = newBindingTest() - p := bt.runPodman([]string{"pull", "docker.io/library/alpine:latest"}) + p := bt.runPodman([]string{"pull", alpine}) p.Wait(45) s = bt.startAPIService() time.Sleep(1 * time.Second) @@ -68,13 +68,13 @@ var _ = Describe("Podman images", func() { _, err = images.GetImage(connText, data.ID[0:12], nil) Expect(err).To(BeNil()) // Inspect by ID - // Inspect by long name should work, it doesnt (yet) i think it needs to be html escaped - //_, err = images.GetImage(connText, ) + //Inspect by long name should work, it doesnt (yet) i think it needs to be html escaped + //_, err = images.GetImage(connText, alpine, nil) //Expect(err).To(BeNil()) }) It("remove image", func() { // Remove invalid image should be a 404 - _, err = images.RemoveImage(connText, "foobar5000", &false) + _, err = images.Remove(connText, "foobar5000", &false) Expect(err).ToNot(BeNil()) code, _ := bindings.CheckResponseCode(err) Expect(code).To(BeNumerically("==", 404)) @@ -82,7 +82,7 @@ var _ = Describe("Podman images", func() { _, err := images.GetImage(connText, "alpine", nil) Expect(err).To(BeNil()) - response, err := images.RemoveImage(connText, "alpine", &false) + response, err := images.Remove(connText, "alpine", &false) Expect(err).To(BeNil()) fmt.Println(response) // to be continued diff --git a/pkg/bindings/test/test_suite_test.go b/pkg/bindings/test/test_suite_test.go new file mode 100644 index 000000000..dc2b49b88 --- /dev/null +++ b/pkg/bindings/test/test_suite_test.go @@ -0,0 +1,13 @@ +package test_bindings_test + +import ( + "testing" + + . "github.com/onsi/ginkgo" + . "github.com/onsi/gomega" +) + +func TestTest(t *testing.T) { + RegisterFailHandler(Fail) + RunSpecs(t, "Test Suite") +} -- cgit v1.2.3-54-g00ecf