projects
/
arvados.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' into 7490-datamanager-dont-die-return-error
[arvados.git]
/
services
/
datamanager
/
datamanager_test.go
diff --git
a/services/datamanager/datamanager_test.go
b/services/datamanager/datamanager_test.go
index c2cb762d52b625b625634f24d385ddbf9ad4e7d8..26a2fbf92ba124c8cbe4e534c39931107f084dca 100644
(file)
--- a/
services/datamanager/datamanager_test.go
+++ b/
services/datamanager/datamanager_test.go
@@
-16,11
+16,6
@@
import (
"time"
)
"time"
)
-const (
- ActiveUserToken = "3kg6k6lzmp9kj5cpkcoxie963cmvjahbt2fod9zru30k1jqdmi"
- AdminToken = "4axaw8zxe0qm22wa6urpp5nskcne8z88cvbupv653y1njyi05h"
-)
-
var arv arvadosclient.ArvadosClient
var keepClient *keepclient.KeepClient
var keepServers []string
var arv arvadosclient.ArvadosClient
var keepClient *keepclient.KeepClient
var keepServers []string
@@
-33,7
+28,12
@@
func SetupDataManagerTest(t *testing.T) {
arvadostest.StartAPI()
arvadostest.StartKeep(2, false)
arvadostest.StartAPI()
arvadostest.StartKeep(2, false)
- arv = makeArvadosClient()
+ var err error
+ arv, err = makeArvadosClient()
+ if err != nil {
+ t.Fatalf("Error making arvados client: %s", err)
+ }
+ arv.ApiToken = arvadostest.DataManagerToken
// keep client
keepClient = &keepclient.KeepClient{
// keep client
keepClient = &keepclient.KeepClient{
@@
-44,7
+44,7
@@
func SetupDataManagerTest(t *testing.T) {
}
// discover keep services
}
// discover keep services
- if err
:
= keepClient.DiscoverKeepServers(); err != nil {
+ if err = keepClient.DiscoverKeepServers(); err != nil {
t.Fatalf("Error discovering keep services: %s", err)
}
keepServers = []string{}
t.Fatalf("Error discovering keep services: %s", err)
}
keepServers = []string{}
@@
-124,7
+124,18
@@
func getFirstLocatorFromCollection(t *testing.T, uuid string) string {
return match[1] + "+" + match[2]
}
return match[1] + "+" + match[2]
}
+func switchToken(t string) func() {
+ orig := arv.ApiToken
+ restore := func() {
+ arv.ApiToken = orig
+ }
+ arv.ApiToken = t
+ return restore
+}
+
func getCollection(t *testing.T, uuid string) Dict {
func getCollection(t *testing.T, uuid string) Dict {
+ defer switchToken(arvadostest.AdminToken)()
+
getback := make(Dict)
err := arv.Get("collections", uuid, nil, &getback)
if err != nil {
getback := make(Dict)
err := arv.Get("collections", uuid, nil, &getback)
if err != nil {
@@
-138,6
+149,8
@@
func getCollection(t *testing.T, uuid string) Dict {
}
func updateCollection(t *testing.T, uuid string, paramName string, paramValue string) {
}
func updateCollection(t *testing.T, uuid string, paramName string, paramValue string) {
+ defer switchToken(arvadostest.AdminToken)()
+
err := arv.Update("collections", uuid, arvadosclient.Dict{
"collection": arvadosclient.Dict{
paramName: paramValue,
err := arv.Update("collections", uuid, arvadosclient.Dict{
"collection": arvadosclient.Dict{
paramName: paramValue,
@@
-152,6
+165,8
@@
func updateCollection(t *testing.T, uuid string, paramName string, paramValue st
type Dict map[string]interface{}
func deleteCollection(t *testing.T, uuid string) {
type Dict map[string]interface{}
func deleteCollection(t *testing.T, uuid string) {
+ defer switchToken(arvadostest.AdminToken)()
+
getback := make(Dict)
err := arv.Delete("collections", uuid, nil, &getback)
if err != nil {
getback := make(Dict)
err := arv.Delete("collections", uuid, nil, &getback)
if err != nil {
@@
-175,7
+190,7
@@
func getBlockIndexesForServer(t *testing.T, i int) []string {
path := keepServers[i] + "/index"
client := http.Client{}
req, err := http.NewRequest("GET", path, nil)
path := keepServers[i] + "/index"
client := http.Client{}
req, err := http.NewRequest("GET", path, nil)
- req.Header.Add("Authorization", "OAuth2 "+
Admin
Token)
+ req.Header.Add("Authorization", "OAuth2 "+
arvadostest.DataManager
Token)
req.Header.Add("Content-Type", "application/octet-stream")
resp, err := client.Do(req)
defer resp.Body.Close()
req.Header.Add("Content-Type", "application/octet-stream")
resp, err := client.Do(req)
defer resp.Body.Close()
@@
-297,7
+312,7
@@
func backdateBlocks(t *testing.T, oldUnusedBlockLocators []string) {
func getStatus(t *testing.T, path string) interface{} {
client := http.Client{}
req, err := http.NewRequest("GET", path, nil)
func getStatus(t *testing.T, path string) interface{} {
client := http.Client{}
req, err := http.NewRequest("GET", path, nil)
- req.Header.Add("Authorization", "OAuth2 "+
Admin
Token)
+ req.Header.Add("Authorization", "OAuth2 "+
arvadostest.DataManager
Token)
req.Header.Add("Content-Type", "application/octet-stream")
resp, err := client.Do(req)
if err != nil {
req.Header.Add("Content-Type", "application/octet-stream")
resp, err := client.Do(req)
if err != nil {
@@
-504,7
+519,7
@@
func TestRunDatamanagerAsNonAdminUser(t *testing.T) {
defer TearDownDataManagerTest(t)
SetupDataManagerTest(t)
defer TearDownDataManagerTest(t)
SetupDataManagerTest(t)
- arv.ApiToken =
ActiveUser
Token
+ arv.ApiToken =
arvadostest.Active
Token
err := singlerun(arv)
if err == nil {
err := singlerun(arv)
if err == nil {