diff options
| author | Stefan Majewsky <majewsky@gmx.net> | 2018-02-04 23:29:09 +0100 |
|---|---|---|
| committer | Stefan Majewsky <majewsky@gmx.net> | 2018-02-04 23:29:09 +0100 |
| commit | fafac750baa70812432020784cc5ba2cc23224cc (patch) | |
| tree | 2b0100470a44a7db1550fc7989257c35c5ac808d /container_test.go | |
| parent | 698cd6aaf4e4fd235d5af904376c89f8faf177f7 (diff) | |
| download | go-schwift-fafac750baa70812432020784cc5ba2cc23224cc.tar.gz | |
add Container
Diffstat (limited to 'container_test.go')
| -rw-r--r-- | container_test.go | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/container_test.go b/container_test.go new file mode 100644 index 0000000..7c67ed5 --- /dev/null +++ b/container_test.go @@ -0,0 +1,57 @@ +/****************************************************************************** +* +* Copyright 2018 Stefan Majewsky <majewsky@gmx.net> +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +* +******************************************************************************/ + +package schwift + +import ( + "crypto/rand" + "encoding/hex" + "net/http" + "testing" +) + +func TestContainerExistence(t *testing.T) { + testWithAccount(t, func(a *Account) { + c := a.Container(getRandomName()) + + exists, err := c.Exists() + expectError(t, err, "") + expectBool(t, exists, false) + + _, err = c.Headers() + expectError(t, err, "expected 204 response, got 404 instead") + expectBool(t, Is(err, http.StatusNotFound), true) + expectBool(t, Is(err, http.StatusNoContent), false) + + err = c.Create(ContainerHeaders{}, nil) + expectError(t, err, "") + + exists, err = c.Exists() + expectError(t, err, "") + expectBool(t, exists, true) + }) +} + +func getRandomName() string { + var buf [16]byte + _, err := rand.Read(buf[:]) + if err != nil { + panic(err.Error()) + } + return hex.EncodeToString(buf[:]) +} |
