From c53364d9520fadf544db5ea063c9c83360540964 Mon Sep 17 00:00:00 2001 From: 9seconds Date: Fri, 30 Jul 2021 15:18:26 +0300 Subject: [PATCH] Add test for making QR code url --- internal/utils/make_qr_code_url.go | 2 +- internal/utils/make_qr_code_url_test.go | 31 +++++++++++++++++++++++++ 2 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 internal/utils/make_qr_code_url_test.go diff --git a/internal/utils/make_qr_code_url.go b/internal/utils/make_qr_code_url.go index 752986f..fd140fb 100644 --- a/internal/utils/make_qr_code_url.go +++ b/internal/utils/make_qr_code_url.go @@ -11,7 +11,7 @@ func MakeQRCodeURL(data string) string { rv := url.URL{ Scheme: "https", Host: "api.qrserver.com", - Path: "v1/create-qr-code", + Path: "/v1/create-qr-code", RawQuery: values.Encode(), } diff --git a/internal/utils/make_qr_code_url_test.go b/internal/utils/make_qr_code_url_test.go new file mode 100644 index 0000000..cea1f91 --- /dev/null +++ b/internal/utils/make_qr_code_url_test.go @@ -0,0 +1,31 @@ +package utils_test + +import ( + "net/url" + "strings" + "testing" + + "github.com/9seconds/mtg/v2/internal/utils" + "github.com/stretchr/testify/suite" +) + +type MakeQRCodeURLTestSuite struct { + suite.Suite +} + +func (suite *MakeQRCodeURLTestSuite) TestSomeData() { + value := utils.MakeQRCodeURL("some data") + + parsed, err := url.Parse(value) + suite.NoError(err) + + suite.Equal("some data", parsed.Query().Get("data")) + suite.Equal("svg", parsed.Query().Get("format")) + suite.Equal("api.qrserver.com", strings.TrimPrefix(parsed.Host, "www.")) + suite.Equal("v1/create-qr-code", strings.Trim(parsed.Path, "/")) +} + +func TestMakeQRCodeURL(t *testing.T) { + t.Parallel() + suite.Run(t, &MakeQRCodeURLTestSuite{}) +}