diff options
author | Derrick Anderson <derrick@andersonwebstudio.com> | 2018-02-12 16:01:02 -0500 |
---|---|---|
committer | Derrick Anderson <derrick@andersonwebstudio.com> | 2018-02-12 16:01:02 -0500 |
commit | c209e4457457edc042f063390c9a222a694f3a6d (patch) | |
tree | 5e1653318a6a14bcad80025793adab0f700deed9 /utils/api_test.go | |
parent | 62efb1df754bfe6b10a3c17ca6f89fd33b991f56 (diff) | |
download | chat-c209e4457457edc042f063390c9a222a694f3a6d.tar.gz chat-c209e4457457edc042f063390c9a222a694f3a6d.tar.bz2 chat-c209e4457457edc042f063390c9a222a694f3a6d.zip |
revert master changes
Diffstat (limited to 'utils/api_test.go')
-rw-r--r-- | utils/api_test.go | 49 |
1 files changed, 0 insertions, 49 deletions
diff --git a/utils/api_test.go b/utils/api_test.go deleted file mode 100644 index 5e41c7bfe..000000000 --- a/utils/api_test.go +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright (c) 2017-present Mattermost, Inc. All Rights Reserved. -// See License.txt for license information. - -package utils - -import ( - "crypto/ecdsa" - "crypto/elliptic" - "crypto/rand" - "crypto/sha256" - "encoding/asn1" - "encoding/base64" - "math/big" - "net/http" - "net/http/httptest" - "net/url" - "testing" - - "github.com/stretchr/testify/assert" - "github.com/stretchr/testify/require" -) - -func TestRenderWebError(t *testing.T) { - r := httptest.NewRequest("GET", "http://foo", nil) - w := httptest.NewRecorder() - key, err := ecdsa.GenerateKey(elliptic.P256(), rand.Reader) - require.NoError(t, err) - RenderWebError(w, r, http.StatusTemporaryRedirect, url.Values{ - "foo": []string{"bar"}, - }, key) - - resp := w.Result() - location, err := url.Parse(resp.Header.Get("Location")) - require.NoError(t, err) - require.NotEmpty(t, location.Query().Get("s")) - - type ecdsaSignature struct { - R, S *big.Int - } - var rs ecdsaSignature - s, err := base64.URLEncoding.DecodeString(location.Query().Get("s")) - require.NoError(t, err) - _, err = asn1.Unmarshal(s, &rs) - require.NoError(t, err) - - assert.Equal(t, "bar", location.Query().Get("foo")) - h := sha256.Sum256([]byte("/error?foo=bar")) - assert.True(t, ecdsa.Verify(&key.PublicKey, h[:], rs.R, rs.S)) -} |