+# Copyright (C) The Arvados Authors. All rights reserved.
+#
+# SPDX-License-Identifier: Apache-2.0
+
source("fakes/FakeArvados.R")
source("fakes/FakeHttpRequest.R")
source("fakes/FakeHttpParser.R")
serverResponse <- list(keepWebServiceUrl = "https://myWebDavServer.com")
httpRequest <- FakeHttpRequest$new(expectedURL, serverResponse)
- REST <- RESTService$new("token", "host", NULL,
+ REST <- RESTService$new("token", "host",
httpRequest, FakeHttpParser$new())
REST$getWebDavHostName()
serverResponse <- list(keepWebServiceUrl = "https://myWebDavServer.com")
httpRequest <- FakeHttpRequest$new(expectedURL = NULL, serverResponse)
- REST <- RESTService$new("token", "host", NULL,
+ REST <- RESTService$new("token", "host",
httpRequest, FakeHttpParser$new())
expect_that("https://myWebDavServer.com", equals(REST$getWebDavHostName()))
})
-test_that("getResource calls REST service properly", {
-
- serverResponse <- NULL
- resourceUUID <- "aaaaa-j7d0g-ccccccccccccccc"
- expectedURL <- paste0("https://host/arvados/v1/collections/", resourceUUID)
-
- httpRequest <- FakeHttpRequest$new(expectedURL, serverResponse)
-
- REST <- RESTService$new("token", "host", "webDavHost",
- httpRequest, FakeHttpParser$new())
-
- REST$getResource("collections", resourceUUID)
-
- expect_that(httpRequest$URLIsProperlyConfigured, is_true())
- expect_that(httpRequest$requestHeaderContainsAuthorizationField, is_true())
- expect_that(httpRequest$numberOfGETRequests, equals(1))
-})
-
-test_that("getResource parses server response", {
-
- resourceUUID <- "aaaaa-j7d0g-ccccccccccccccc"
- httpParser <- FakeHttpParser$new()
- REST <- RESTService$new("token", "host", "webDavHost",
- FakeHttpRequest$new(), httpParser)
-
- REST$getResource("collections", resourceUUID)
-
- expect_that(httpParser$parserCallCount, equals(1))
-})
-
-test_that("getResource raises exception if response contains errors field", {
-
- resourceUUID <- "aaaaa-j7d0g-ccccccccccccccc"
- serverResponse <- list(errors = 404)
-
- REST <- RESTService$new("token", "host", "webDavHost",
- FakeHttpRequest$new(NULL, serverResponse),
- FakeHttpParser$new())
-
- expect_that(REST$getResource("collections", resourceUUID), throws_error(404))
-})
-
-test_that("listResources calls REST service properly", {
-
- serverResponse <- NULL
- expectedURL <- paste0("https://host/arvados/v1/collections")
- httpRequest <- FakeHttpRequest$new(expectedURL, serverResponse)
-
- REST <- RESTService$new("token", "host", "webDavHost",
- httpRequest, FakeHttpParser$new())
-
- REST$listResources("collections")
-
- expect_that(httpRequest$URLIsProperlyConfigured, is_true())
- expect_that(httpRequest$requestHeaderContainsAuthorizationField, is_true())
- expect_that(httpRequest$numberOfGETRequests, equals(1))
-})
-
-test_that("listResources parses server response", {
-
- httpParser <- FakeHttpParser$new()
- REST <- RESTService$new("token", "host", "webDavHost",
- FakeHttpRequest$new(), httpParser)
-
- REST$listResources("collections")
-
- expect_that(httpParser$parserCallCount, equals(1))
-})
-
-test_that("listResources raises exception if response contains errors field", {
-
- serverResponse <- list(errors = 404)
-
- REST <- RESTService$new("token", "host", "webDavHost",
- FakeHttpRequest$new(NULL, serverResponse),
- FakeHttpParser$new())
-
- expect_that(REST$listResources("collections"), throws_error(404))
-})
-
-test_that("fetchAllItems always returns all resource items from server", {
-
- expectedURL <- NULL
- serverResponse <- list(items_available = 8,
- items = list("collection1",
- "collection2",
- "collection3",
- "collection4",
- "collection5",
- "collection6",
- "collection7",
- "collection8"))
-
- httpParser <- FakeHttpParser$new()
- httpRequest <- FakeHttpRequest$new(expectedURL, serverResponse)
- httpRequest$serverMaxElementsPerRequest <- 3
-
- REST <- RESTService$new("token", "host", "webDavHost",
- httpRequest, httpParser)
-
- result <- REST$fetchAllItems(NULL, NULL)
-
- expect_that(length(result), equals(8))
- expect_that(httpRequest$numberOfGETRequests, equals(3))
- expect_that(httpParser$parserCallCount, equals(3))
-})
-
-test_that("deleteResource calls REST service properly", {
-
- serverResponse <- NULL
- resourceUUID <- "aaaaa-j7d0g-ccccccccccccccc"
- expectedURL <- paste0("https://host/arvados/v1/collections/", resourceUUID)
-
- httpRequest <- FakeHttpRequest$new(expectedURL, serverResponse)
-
- REST <- RESTService$new("token", "host", "webDavHost",
- httpRequest, FakeHttpParser$new())
-
- REST$deleteResource("collections", resourceUUID)
-
- expect_that(httpRequest$URLIsProperlyConfigured, is_true())
- expect_that(httpRequest$requestHeaderContainsAuthorizationField, is_true())
- expect_that(httpRequest$numberOfDELETERequests, equals(1))
-})
-
-test_that("deleteCollection parses server response", {
-
- resourceUUID <- "aaaaa-j7d0g-ccccccccccccccc"
- httpParser <- FakeHttpParser$new()
- REST <- RESTService$new("token", "host", "webDavHost",
- FakeHttpRequest$new(), httpParser)
-
- REST$deleteResource("collections", resourceUUID)
-
- expect_that(httpParser$parserCallCount, equals(1))
-})
-
-test_that("deleteCollection raises exception if response contains errors field", {
-
- resourceUUID <- "aaaaa-j7d0g-ccccccccccccccc"
- serverResponse <- list(errors = 404)
-
- REST <- RESTService$new("token", "host", "webDavHost",
- FakeHttpRequest$new(NULL, serverResponse),
- FakeHttpParser$new())
-
- expect_that(REST$deleteResource("collections", resourceUUID), throws_error(404))
-})
-
-test_that("updateResource calls REST service properly", {
-
- serverResponse <- NULL
- resourceUUID <- "aaaaa-j7d0g-ccccccccccccccc"
- expectedURL <- paste0("https://host/arvados/v1/collections/", resourceUUID)
- newResourceContent <- list(newName = "Brand new shiny name")
-
- httpRequest <- FakeHttpRequest$new(expectedURL, serverResponse)
-
- REST <- RESTService$new("token", "host", "webDavHost",
- httpRequest, FakeHttpParser$new())
-
- REST$updateResource("collections", resourceUUID, newResourceContent)
-
- expect_that(httpRequest$URLIsProperlyConfigured, is_true())
- expect_that(httpRequest$requestHeaderContainsAuthorizationField, is_true())
- expect_that(httpRequest$JSONEncodedBodyIsProvided, is_true())
- expect_that(httpRequest$numberOfPUTRequests, equals(1))
-})
-
-test_that("updateResource parses server response", {
-
- newResourceContent <- list(newName = "Brand new shiny name")
- resourceUUID <- "aaaaa-j7d0g-ccccccccccccccc"
- httpParser <- FakeHttpParser$new()
- REST <- RESTService$new("token", "host", "webDavHost",
- FakeHttpRequest$new(), httpParser)
-
- REST$updateResource("collections", resourceUUID, newResourceContent)
-
- expect_that(httpParser$parserCallCount, equals(1))
-})
-
-test_that("updateResource raises exception if response contains errors field", {
-
- resourceUUID <- "aaaaa-j7d0g-ccccccccccccccc"
- serverResponse <- list(errors = 404)
- newResourceContent <- list(newName = "Brand new shiny name")
- REST <- RESTService$new("token", "host", "webDavHost",
- FakeHttpRequest$new(NULL, serverResponse),
- FakeHttpParser$new())
-
- expect_that(REST$updateResource("collections", resourceUUID, newResourceContent),
- throws_error(404))
-})
-
-test_that("createResource calls REST service properly", {
-
- resourceContent <- list(name = "My favorite collection")
- serverResponse <- NULL
- resourceUUID <- "aaaaa-j7d0g-ccccccccccccccc"
- expectedURL <- "https://host/arvados/v1/collections"
- newResourceContent <- list(newName = "Brand new shiny name")
-
- httpRequest <- FakeHttpRequest$new(expectedURL, serverResponse)
-
- REST <- RESTService$new("token", "host", "webDavHost",
- httpRequest, FakeHttpParser$new())
-
- REST$createResource("collections", resourceContent)
-
- expect_that(httpRequest$URLIsProperlyConfigured, is_true())
- expect_that(httpRequest$requestHeaderContainsAuthorizationField, is_true())
- expect_that(httpRequest$JSONEncodedBodyIsProvided, is_true())
- expect_that(httpRequest$numberOfPOSTRequests, equals(1))
-})
-
-test_that("createResource parses server response", {
-
- resourceContent <- list(newName = "Brand new shiny name")
- resourceUUID <- "aaaaa-j7d0g-ccccccccccccccc"
- httpParser <- FakeHttpParser$new()
- REST <- RESTService$new("token", "host", "webDavHost",
- FakeHttpRequest$new(), httpParser)
-
- REST$createResource("collections", resourceContent)
-
- expect_that(httpParser$parserCallCount, equals(1))
-})
-
-test_that("createResource raises exception if response contains errors field", {
-
- resourceUUID <- "aaaaa-j7d0g-ccccccccccccccc"
- serverResponse <- list(errors = 404)
- resourceContent <- list(newName = "Brand new shiny name")
- REST <- RESTService$new("token", "host", "webDavHost",
- FakeHttpRequest$new(NULL, serverResponse),
- FakeHttpParser$new())
-
- expect_that(REST$createResource("collections", resourceContent),
- throws_error(404))
-})
-
test_that("create calls REST service properly", {
uuid <- "aaaaa-j7d0g-ccccccccccccccc"
fakeHttp <- FakeHttpRequest$new(expectedURL)
fakeHttpParser <- FakeHttpParser$new()
- REST <- RESTService$new("token", "https://host/", "https://webDavHost/",
- fakeHttp, fakeHttpParser)
+ REST <- RESTService$new("token", "https://host/",
+ fakeHttp, fakeHttpParser,
+ 0, "https://webDavHost/")
REST$create("file", uuid)
response$status_code <- 404
fakeHttp <- FakeHttpRequest$new(serverResponse = response)
- REST <- RESTService$new("token", "https://host/", "https://webDavHost/",
- fakeHttp, HttpParser$new())
+ REST <- RESTService$new("token", "https://host/",
+ fakeHttp, HttpParser$new(),
+ 0, "https://webDavHost/")
expect_that(REST$create("file", uuid),
throws_error("Server code: 404"))
fakeHttp <- FakeHttpRequest$new(expectedURL)
fakeHttpParser <- FakeHttpParser$new()
- REST <- RESTService$new("token", "https://host/", "https://webDavHost/",
- fakeHttp, fakeHttpParser)
+ REST <- RESTService$new("token", "https://host/",
+ fakeHttp, fakeHttpParser,
+ 0, "https://webDavHost/")
REST$delete("file", uuid)
response$status_code <- 404
fakeHttp <- FakeHttpRequest$new(serverResponse = response)
- REST <- RESTService$new("token", "https://host/", "https://webDavHost/",
- fakeHttp, HttpParser$new())
+ REST <- RESTService$new("token", "https://host/",
+ fakeHttp, HttpParser$new(),
+ 0, "https://webDavHost/")
expect_that(REST$delete("file", uuid),
throws_error("Server code: 404"))
fakeHttp <- FakeHttpRequest$new(expectedURL)
fakeHttpParser <- FakeHttpParser$new()
- REST <- RESTService$new("token", "https://host/", "https://webDavHost/",
- fakeHttp, fakeHttpParser)
+ REST <- RESTService$new("token", "https://host/",
+ fakeHttp, fakeHttpParser,
+ 0, "https://webDavHost/")
REST$move("file", "newDestination/file", uuid)
response$status_code <- 404
fakeHttp <- FakeHttpRequest$new(serverResponse = response)
- REST <- RESTService$new("token", "https://host/", "https://webDavHost/",
- fakeHttp, HttpParser$new())
+ REST <- RESTService$new("token", "https://host/",
+ fakeHttp, HttpParser$new(),
+ 0, "https://webDavHost/")
expect_that(REST$move("file", "newDestination/file", uuid),
throws_error("Server code: 404"))
fakeHttp <- FakeHttpRequest$new(expectedURL, returnContent)
- REST <- RESTService$new("token", "https://host/", "https://webDavHost/",
- fakeHttp, FakeHttpParser$new())
+ REST <- RESTService$new("token", "https://host/",
+ fakeHttp, FakeHttpParser$new(),
+ 0, "https://webDavHost/")
returnResult <- REST$getCollectionContent(uuid)
returnedContentMatchExpected <- all.equal(returnResult,
response <- ""
fakeHttp <- FakeHttpRequest$new(serverResponse = response)
- REST <- RESTService$new("token", "https://host/", "https://webDavHost/",
- fakeHttp, FakeHttpParser$new())
+ REST <- RESTService$new("token", "https://host/",
+ fakeHttp, FakeHttpParser$new(),
+ 0, "https://webDavHost/")
expect_that(REST$getCollectionContent(uuid),
throws_error("Response is empty, request may be misconfigured"))
uuid <- "aaaaa-j7d0g-ccccccccccccccc"
fakeHttpParser <- FakeHttpParser$new()
- REST <- RESTService$new("token", "https://host/", "https://webDavHost/",
- FakeHttpRequest$new(), fakeHttpParser)
+ REST <- RESTService$new("token", "https://host/",
+ FakeHttpRequest$new(), fakeHttpParser,
+ 0, "https://webDavHost/")
REST$getCollectionContent(uuid)
response <- ""
fakeHttp <- FakeHttpRequest$new(serverResponse = response)
- REST <- RESTService$new("token", "https://host/", "https://webDavHost/",
- fakeHttp, FakeHttpParser$new())
+ REST <- RESTService$new("token", "https://host/",
+ fakeHttp, FakeHttpParser$new(),
+ 0, "https://webDavHost/")
expect_that(REST$getCollectionContent(uuid),
throws_error("Response is empty, request may be misconfigured"))
response$status_code <- 404
fakeHttp <- FakeHttpRequest$new(serverResponse = response)
- REST <- RESTService$new("token", "https://host/", "https://webDavHost/",
- fakeHttp, HttpParser$new())
+ REST <- RESTService$new("token", "https://host/",
+ fakeHttp, HttpParser$new(),
+ 0, "https://webDavHost/")
expect_that(REST$getCollectionContent(uuid),
throws_error("Server code: 404"))
response$content <- c(6, 2, 931, 12003)
fakeHttp <- FakeHttpRequest$new(expectedURL, response)
- REST <- RESTService$new("token", "https://host/", "https://webDavHost/",
- fakeHttp, FakeHttpParser$new())
+ REST <- RESTService$new("token", "https://host/",
+ fakeHttp, FakeHttpParser$new(),
+ 0, "https://webDavHost/")
returnResult <- REST$getResourceSize("file", uuid)
returnedContentMatchExpected <- all.equal(returnResult,
response <- ""
fakeHttp <- FakeHttpRequest$new(serverResponse = response)
- REST <- RESTService$new("token", "https://host/", "https://webDavHost/",
- fakeHttp, FakeHttpParser$new())
+ REST <- RESTService$new("token", "https://host/",
+ fakeHttp, FakeHttpParser$new(),
+ 0, "https://webDavHost/")
expect_that(REST$getResourceSize("file", uuid),
throws_error("Response is empty, request may be misconfigured"))
response$status_code <- 404
fakeHttp <- FakeHttpRequest$new(serverResponse = response)
- REST <- RESTService$new("token", "https://host/", "https://webDavHost/",
- fakeHttp, HttpParser$new())
+ REST <- RESTService$new("token", "https://host/",
+ fakeHttp, HttpParser$new(),
+ 0, "https://webDavHost/")
expect_that(REST$getResourceSize("file", uuid),
throws_error("Server code: 404"))
uuid <- "aaaaa-j7d0g-ccccccccccccccc"
fakeHttpParser <- FakeHttpParser$new()
- REST <- RESTService$new("token", "https://host/", "https://webDavHost/",
- FakeHttpRequest$new(), fakeHttpParser)
+ REST <- RESTService$new("token", "https://host/",
+ FakeHttpRequest$new(), fakeHttpParser,
+ 0, "https://webDavHost/")
REST$getResourceSize("file", uuid)
fakeHttp <- FakeHttpRequest$new(expectedURL, serverResponse)
- REST <- RESTService$new("token", "https://host/", "https://webDavHost/",
- fakeHttp, FakeHttpParser$new())
+ REST <- RESTService$new("token", "https://host/",
+ fakeHttp, FakeHttpParser$new(),
+ 0, "https://webDavHost/")
returnResult <- REST$read("file", uuid, "text", 1024, 512)
response$status_code <- 404
fakeHttp <- FakeHttpRequest$new(serverResponse = response)
- REST <- RESTService$new("token", "https://host/", "https://webDavHost/",
- fakeHttp, HttpParser$new())
+ REST <- RESTService$new("token", "https://host/",
+ fakeHttp, HttpParser$new(),
+ 0, "https://webDavHost/")
expect_that(REST$read("file", uuid),
throws_error("Server code: 404"))
uuid <- "aaaaa-j7d0g-ccccccccccccccc"
fakeHttp <- FakeHttpRequest$new()
- REST <- RESTService$new("token", "https://host/", "https://webDavHost/",
- fakeHttp, HttpParser$new())
+ REST <- RESTService$new("token", "https://host/",
+ fakeHttp, HttpParser$new(),
+ 0, "https://webDavHost/")
expect_that(REST$read("file", uuid, "some invalid content type"),
throws_error("Invalid contentType. Please use text or raw."))
uuid <- "aaaaa-j7d0g-ccccccccccccccc"
fakeHttpParser <- FakeHttpParser$new()
- REST <- RESTService$new("token", "https://host/", "https://webDavHost/",
- FakeHttpRequest$new(), fakeHttpParser)
+ REST <- RESTService$new("token", "https://host/",
+ FakeHttpRequest$new(), fakeHttpParser,
+ 0, "https://webDavHost/")
REST$read("file", uuid, "text", 1024, 512)
expectedURL <- "https://webDavHost/c=aaaaa-j7d0g-ccccccccccccccc/file"
fakeHttp <- FakeHttpRequest$new(expectedURL)
- REST <- RESTService$new("token", "https://host/", "https://webDavHost/",
- fakeHttp, FakeHttpParser$new())
+ REST <- RESTService$new("token", "https://host/",
+ fakeHttp, FakeHttpParser$new(),
+ 0, "https://webDavHost/")
REST$write("file", uuid, fileContent, "text/html")
response$status_code <- 404
fakeHttp <- FakeHttpRequest$new(serverResponse = response)
- REST <- RESTService$new("token", "https://host/", "https://webDavHost/",
- fakeHttp, HttpParser$new())
+ REST <- RESTService$new("token", "https://host/",
+ fakeHttp, HttpParser$new(),
+ 0, "https://webDavHost/")
expect_that(REST$write("file", uuid, fileContent, "text/html"),
throws_error("Server code: 404"))