[R][httr2] Fix form parameter support (#13057)

* fix form parameter support in the r client

* fix query param

* fix form parameters
This commit is contained in:
William Cheng
2022-08-03 23:45:12 +08:00
committed by GitHub
parent bbf463f727
commit 13d34b9b63
15 changed files with 369 additions and 103 deletions

View File

@@ -235,6 +235,9 @@
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
{{#requiredParams}}
if (missing(`{{paramName}}`)) {
@@ -255,32 +258,29 @@
{{/headerParams}}
{{#queryParams}}
query_params["{{baseName}}"] <- {{paramName}}
query_params["{{baseName}}"] <- `{{paramName}}`
{{/queryParams}}
{{#hasFormParams}}
local_var_body <- list(
{{#formParams}}
{{^isFile}}
"{{baseName}}" = {{paramName}}{{^-last}},{{/-last}}
{{/isFile}}
{{#isFile}}
{{^isHttr2}}
"{{baseName}}" = httr::upload_file({{paramName}}){{^-last}},{{/-last}}
{{/isHttr2}}
{{#isHttr2}}
"{{baseName}}" = {{paramName}}{{^-last}},{{/-last}}
{{/isHttr2}}
{{/isFile}}
{{/formParams}}
)
{{#formParams}}
{{^isFile}}
form_params["{{baseName}}"] <- `{{paramName}}`
{{/isFile}}
{{#isFile}}
{{^isHttr2}}
file_params["{{baseName}}"] <- httr::upload_file(`{{paramName}}`)
{{/isHttr2}}
{{#isHttr2}}
file_params["{{baseName}}"] <- curl::form_file(`{{paramName}}`)
{{/isHttr2}}
{{/isFile}}
{{/formParams}}
{{/hasFormParams}}
{{#hasBodyParam}}
{{#bodyParams}}
if (!missing(`{{paramName}}`)) {
{{#isArray}}
body.items <- paste(unlist(lapply({{paramName}}, function(param) {
body.items <- paste(unlist(lapply(`{{paramName}}`, function(param) {
param$toJSONString()
})), collapse = ",")
local_var_body <- paste0("[", body.items, "]")
@@ -294,11 +294,6 @@
{{/bodyParams}}
{{/hasBodyParam}}
{{^hasBodyParam}}
{{^hasFormParams}}
local_var_body <- NULL
{{/hasFormParams}}
{{/hasBodyParam}}
local_var_url_path <- "{{path}}"
{{#hasPathParams}}
{{#pathParams}}
@@ -358,6 +353,8 @@
method = "{{httpMethod}}",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,

View File

@@ -161,8 +161,8 @@ ApiClient <- R6::R6Class(
if (resp$status_code %in% self$retry_status_codes) {
Sys.sleep((2 ^ i) + stats::runif(n = 1, min = 0, max = 1))
resp <- self$Execute(url, method, query_params, header_params,
form_params, file_params, body,
stream_callback = stream_callback, ...)
form_params, file_params, accepts, content_types,
body, stream_callback = stream_callback, ...)
} else {
break
}

View File

@@ -133,16 +133,20 @@ ApiClient <- R6::R6Class(
#' @param method HTTP method.
#' @param query_params The query parameters.
#' @param header_params The header parameters.
#' @param form_params The form parameters.
#' @param file_params The form parameters to upload files
#' @param accepts The HTTP accpet headers.
#' @param content_types The HTTP content-type headers.
#' @param body The HTTP request body.
#' @param stream_callback Callback function to process the data stream
#' @param ... Other optional arguments.
#' @return HTTP response
#' @export
CallApi = function(url, method, query_params, header_params, accepts,
content_types, body, stream_callback = NULL, ...) {
CallApi = function(url, method, query_params, header_params, form_params, file_params,
accepts, content_types, body, stream_callback = NULL, ...) {
resp <- self$Execute(url, method, query_params, header_params,
accepts, content_types,
resp <- self$Execute(url, method, query_params, header_params, form_params,
file_params, accepts, content_types,
body, stream_callback = stream_callback, ...)
#status_code <- httr::status_code(resp)
@@ -174,13 +178,17 @@ ApiClient <- R6::R6Class(
#' @param method HTTP method.
#' @param query_params The query parameters.
#' @param header_params The header parameters.
#' @param form_params The form parameters.
#' @param file_params The form parameters for uploading files.
#' @param accepts The HTTP accpet headers.
#' @param content_types The HTTP content-type headers.
#' @param body The HTTP request body.
#' @param stream_callback Callback function to process data stream
#' @param ... Other optional arguments.
#' @return HTTP response
#' @export
Execute = function(url, method, query_params, header_params, accepts, content_types,
body, stream_callback = NULL, ...) {
Execute = function(url, method, query_params, header_params, form_params, file_params,
accepts, content_types, body, stream_callback = NULL, ...) {
req <- request(url)
## add headers and default headers
@@ -210,6 +218,21 @@ ApiClient <- R6::R6Class(
}
}
# has file upload?
if (!is.null(file_params) && length(file_params) != 0) {
req <- req %>% req_body_multipart(!!!file_params)
# add form parameters via req_body_multipart
if (!is.null(form_params) && length(form_params) != 0) {
req <- req %>% req_body_multipart(!!!form_params)
}
} else { # no file upload
# add form parameters via req_body_form
if (!is.null(form_params) && length(form_params) != 0) {
req <- req %>% req_body_form(!!!form_params)
}
}
# add body parameters
if (!is.null(body)) {
req <- req %>% req_body_raw(body)

View File

@@ -138,16 +138,20 @@ ApiClient <- R6::R6Class(
#' @param method HTTP method.
#' @param query_params The query parameters.
#' @param header_params The header parameters.
#' @param form_params The form parameters.
#' @param file_params The form parameters to upload files
#' @param accepts The HTTP accpet headers.
#' @param content_types The HTTP content-type headers.
#' @param body The HTTP request body.
#' @param stream_callback Callback function to process the data stream
#' @param ... Other optional arguments.
#' @return HTTP response
#' @export
CallApi = function(url, method, query_params, header_params, accepts,
content_types, body, stream_callback = NULL, ...) {
CallApi = function(url, method, query_params, header_params, form_params, file_params,
accepts, content_types, body, stream_callback = NULL, ...) {
resp <- self$Execute(url, method, query_params, header_params,
accepts, content_types,
resp <- self$Execute(url, method, query_params, header_params, form_params,
file_params, accepts, content_types,
body, stream_callback = stream_callback, ...)
#status_code <- httr::status_code(resp)
@@ -179,13 +183,17 @@ ApiClient <- R6::R6Class(
#' @param method HTTP method.
#' @param query_params The query parameters.
#' @param header_params The header parameters.
#' @param form_params The form parameters.
#' @param file_params The form parameters for uploading files.
#' @param accepts The HTTP accpet headers.
#' @param content_types The HTTP content-type headers.
#' @param body The HTTP request body.
#' @param stream_callback Callback function to process data stream
#' @param ... Other optional arguments.
#' @return HTTP response
#' @export
Execute = function(url, method, query_params, header_params, accepts, content_types,
body, stream_callback = NULL, ...) {
Execute = function(url, method, query_params, header_params, form_params, file_params,
accepts, content_types, body, stream_callback = NULL, ...) {
req <- request(url)
## add headers and default headers
@@ -215,6 +223,21 @@ ApiClient <- R6::R6Class(
}
}
# has file upload?
if (!is.null(file_params) && length(file_params) != 0) {
req <- req %>% req_body_multipart(!!!file_params)
# add form parameters via req_body_multipart
if (!is.null(form_params) && length(form_params) != 0) {
req <- req %>% req_body_multipart(!!!form_params)
}
} else { # no file upload
# add form parameters via req_body_form
if (!is.null(form_params) && length(form_params) != 0) {
req <- req %>% req_body_form(!!!form_params)
}
}
# add body parameters
if (!is.null(body)) {
req <- req %>% req_body_raw(body)

View File

@@ -125,6 +125,9 @@ FakeApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`dummy`)) {
rlang::abort(message = "Missing required parameter `dummy`.",
@@ -137,7 +140,6 @@ FakeApi <- R6::R6Class(
header_params["data_file"] <- `var_data_file`
local_var_body <- NULL
local_var_url_path <- "/fake/data_file"
# The Accept request HTTP header
@@ -150,6 +152,8 @@ FakeApi <- R6::R6Class(
method = "GET",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,

View File

@@ -629,6 +629,9 @@ PetApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`pet`)) {
rlang::abort(message = "Missing required parameter `pet`.",
@@ -663,6 +666,8 @@ PetApi <- R6::R6Class(
method = "POST",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -746,6 +751,9 @@ PetApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`pet_id`)) {
rlang::abort(message = "Missing required parameter `pet_id`.",
@@ -756,7 +764,6 @@ PetApi <- R6::R6Class(
header_params["api_key"] <- `api_key`
local_var_body <- NULL
local_var_url_path <- "/pet/{petId}"
if (!missing(`pet_id`)) {
local_var_url_path <- gsub(paste0("\\{", "petId", "\\}"), URLencode(as.character(`pet_id`), reserved = TRUE), local_var_url_path)
@@ -775,6 +782,8 @@ PetApi <- R6::R6Class(
method = "DELETE",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -845,6 +854,9 @@ PetApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`status`)) {
rlang::abort(message = "Missing required parameter `status`.",
@@ -853,9 +865,8 @@ PetApi <- R6::R6Class(
reason = "Missing required parameter `status`."))
}
query_params["status"] <- status
query_params["status"] <- `status`
local_var_body <- NULL
local_var_url_path <- "/pet/findByStatus"
# OAuth token
header_params["Authorization"] <- paste("Bearer", self$api_client$access_token, sep = " ")
@@ -870,6 +881,8 @@ PetApi <- R6::R6Class(
method = "GET",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -953,6 +966,9 @@ PetApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`tags`)) {
rlang::abort(message = "Missing required parameter `tags`.",
@@ -961,9 +977,8 @@ PetApi <- R6::R6Class(
reason = "Missing required parameter `tags`."))
}
query_params["tags"] <- tags
query_params["tags"] <- `tags`
local_var_body <- NULL
local_var_url_path <- "/pet/findByTags"
# OAuth token
header_params["Authorization"] <- paste("Bearer", self$api_client$access_token, sep = " ")
@@ -978,6 +993,8 @@ PetApi <- R6::R6Class(
method = "GET",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -1061,6 +1078,9 @@ PetApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`pet_id`)) {
rlang::abort(message = "Missing required parameter `pet_id`.",
@@ -1069,7 +1089,6 @@ PetApi <- R6::R6Class(
reason = "Missing required parameter `pet_id`."))
}
local_var_body <- NULL
local_var_url_path <- "/pet/{petId}"
if (!missing(`pet_id`)) {
local_var_url_path <- gsub(paste0("\\{", "petId", "\\}"), URLencode(as.character(`pet_id`), reserved = TRUE), local_var_url_path)
@@ -1087,6 +1106,8 @@ PetApi <- R6::R6Class(
method = "GET",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -1176,6 +1197,9 @@ PetApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`pet_id`)) {
rlang::abort(message = "Missing required parameter `pet_id`.",
@@ -1184,7 +1208,6 @@ PetApi <- R6::R6Class(
reason = "Missing required parameter `pet_id`."))
}
local_var_body <- NULL
local_var_url_path <- "/pet/{petId}?streaming"
if (!missing(`pet_id`)) {
local_var_url_path <- gsub(paste0("\\{", "petId", "\\}"), URLencode(as.character(`pet_id`), reserved = TRUE), local_var_url_path)
@@ -1205,6 +1228,8 @@ PetApi <- R6::R6Class(
method = "GET",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -1299,6 +1324,9 @@ PetApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`header_test_int`)) {
rlang::abort(message = "Missing required parameter `header_test_int`.",
@@ -1309,7 +1337,6 @@ PetApi <- R6::R6Class(
header_params["header_test_int"] <- `header_test_int`
local_var_body <- NULL
local_var_url_path <- "/pet_header_test"
# API key authentication
if ("api_key" %in% names(self$api_client$api_keys) && nchar(self$api_client$api_keys["api_key"]) > 0) {
@@ -1326,6 +1353,8 @@ PetApi <- R6::R6Class(
method = "GET",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -1414,6 +1443,9 @@ PetApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`pet`)) {
rlang::abort(message = "Missing required parameter `pet`.",
@@ -1442,6 +1474,8 @@ PetApi <- R6::R6Class(
method = "PUT",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -1527,6 +1561,9 @@ PetApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`pet_id`)) {
rlang::abort(message = "Missing required parameter `pet_id`.",
@@ -1535,11 +1572,8 @@ PetApi <- R6::R6Class(
reason = "Missing required parameter `pet_id`."))
}
local_var_body <- list(
"name" = name,
"status" = status
)
form_params["name"] <- `name`
form_params["status"] <- `status`
local_var_url_path <- "/pet/{petId}"
if (!missing(`pet_id`)) {
local_var_url_path <- gsub(paste0("\\{", "petId", "\\}"), URLencode(as.character(`pet_id`), reserved = TRUE), local_var_url_path)
@@ -1558,6 +1592,8 @@ PetApi <- R6::R6Class(
method = "POST",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -1632,6 +1668,9 @@ PetApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`pet_id`)) {
rlang::abort(message = "Missing required parameter `pet_id`.",
@@ -1640,11 +1679,8 @@ PetApi <- R6::R6Class(
reason = "Missing required parameter `pet_id`."))
}
local_var_body <- list(
"additionalMetadata" = additional_metadata,
"file" = file
)
form_params["additionalMetadata"] <- `additional_metadata`
file_params["file"] <- curl::form_file(`file`)
local_var_url_path <- "/pet/{petId}/uploadImage"
if (!missing(`pet_id`)) {
local_var_url_path <- gsub(paste0("\\{", "petId", "\\}"), URLencode(as.character(`pet_id`), reserved = TRUE), local_var_url_path)
@@ -1663,6 +1699,8 @@ PetApi <- R6::R6Class(
method = "POST",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,

View File

@@ -273,6 +273,9 @@ StoreApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`order_id`)) {
rlang::abort(message = "Missing required parameter `order_id`.",
@@ -281,7 +284,6 @@ StoreApi <- R6::R6Class(
reason = "Missing required parameter `order_id`."))
}
local_var_body <- NULL
local_var_url_path <- "/store/order/{orderId}"
if (!missing(`order_id`)) {
local_var_url_path <- gsub(paste0("\\{", "orderId", "\\}"), URLencode(as.character(`order_id`), reserved = TRUE), local_var_url_path)
@@ -298,6 +300,8 @@ StoreApi <- R6::R6Class(
method = "DELETE",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -366,8 +370,10 @@ StoreApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
local_var_url_path <- "/store/inventory"
# API key authentication
if ("api_key" %in% names(self$api_client$api_keys) && nchar(self$api_client$api_keys["api_key"]) > 0) {
@@ -384,6 +390,8 @@ StoreApi <- R6::R6Class(
method = "GET",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -467,6 +475,9 @@ StoreApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`order_id`)) {
rlang::abort(message = "Missing required parameter `order_id`.",
@@ -475,7 +486,6 @@ StoreApi <- R6::R6Class(
reason = "Missing required parameter `order_id`."))
}
local_var_body <- NULL
local_var_url_path <- "/store/order/{orderId}"
if (!missing(`order_id`)) {
local_var_url_path <- gsub(paste0("\\{", "orderId", "\\}"), URLencode(as.character(`order_id`), reserved = TRUE), local_var_url_path)
@@ -492,6 +502,8 @@ StoreApi <- R6::R6Class(
method = "GET",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -575,6 +587,9 @@ StoreApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`order`)) {
rlang::abort(message = "Missing required parameter `order`.",
@@ -601,6 +616,8 @@ StoreApi <- R6::R6Class(
method = "POST",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,

View File

@@ -459,6 +459,9 @@ UserApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`user`)) {
rlang::abort(message = "Missing required parameter `user`.",
@@ -489,6 +492,8 @@ UserApi <- R6::R6Class(
method = "POST",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -557,6 +562,9 @@ UserApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`user`)) {
rlang::abort(message = "Missing required parameter `user`.",
@@ -566,7 +574,7 @@ UserApi <- R6::R6Class(
}
if (!missing(`user`)) {
body.items <- paste(unlist(lapply(user, function(param) {
body.items <- paste(unlist(lapply(`user`, function(param) {
param$toJSONString()
})), collapse = ",")
local_var_body <- paste0("[", body.items, "]")
@@ -590,6 +598,8 @@ UserApi <- R6::R6Class(
method = "POST",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -658,6 +668,9 @@ UserApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`user`)) {
rlang::abort(message = "Missing required parameter `user`.",
@@ -667,7 +680,7 @@ UserApi <- R6::R6Class(
}
if (!missing(`user`)) {
body.items <- paste(unlist(lapply(user, function(param) {
body.items <- paste(unlist(lapply(`user`, function(param) {
param$toJSONString()
})), collapse = ",")
local_var_body <- paste0("[", body.items, "]")
@@ -691,6 +704,8 @@ UserApi <- R6::R6Class(
method = "POST",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -759,6 +774,9 @@ UserApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`username`)) {
rlang::abort(message = "Missing required parameter `username`.",
@@ -767,7 +785,6 @@ UserApi <- R6::R6Class(
reason = "Missing required parameter `username`."))
}
local_var_body <- NULL
local_var_url_path <- "/user/{username}"
if (!missing(`username`)) {
local_var_url_path <- gsub(paste0("\\{", "username", "\\}"), URLencode(as.character(`username`), reserved = TRUE), local_var_url_path)
@@ -788,6 +805,8 @@ UserApi <- R6::R6Class(
method = "DELETE",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -858,6 +877,9 @@ UserApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`username`)) {
rlang::abort(message = "Missing required parameter `username`.",
@@ -866,7 +888,6 @@ UserApi <- R6::R6Class(
reason = "Missing required parameter `username`."))
}
local_var_body <- NULL
local_var_url_path <- "/user/{username}"
if (!missing(`username`)) {
local_var_url_path <- gsub(paste0("\\{", "username", "\\}"), URLencode(as.character(`username`), reserved = TRUE), local_var_url_path)
@@ -883,6 +904,8 @@ UserApi <- R6::R6Class(
method = "GET",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -968,6 +991,9 @@ UserApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`username`)) {
rlang::abort(message = "Missing required parameter `username`.",
@@ -983,11 +1009,10 @@ UserApi <- R6::R6Class(
reason = "Missing required parameter `password`."))
}
query_params["username"] <- username
query_params["username"] <- `username`
query_params["password"] <- password
query_params["password"] <- `password`
local_var_body <- NULL
local_var_url_path <- "/user/login"
# The Accept request HTTP header
@@ -1000,6 +1025,8 @@ UserApi <- R6::R6Class(
method = "GET",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -1079,8 +1106,10 @@ UserApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
local_var_url_path <- "/user/logout"
# API key authentication
if ("api_key" %in% names(self$api_client$api_keys) && nchar(self$api_client$api_keys["api_key"]) > 0) {
@@ -1097,6 +1126,8 @@ UserApi <- R6::R6Class(
method = "GET",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -1167,6 +1198,9 @@ UserApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`username`)) {
rlang::abort(message = "Missing required parameter `username`.",
@@ -1208,6 +1242,8 @@ UserApi <- R6::R6Class(
method = "PUT",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,

View File

@@ -94,6 +94,43 @@ test_that("get_pet_by_id", {
)
})
test_that("update_pet_with_form", {
## add pet
update_pet_id <- 123999
update_pet <- Pet$new("name_test",
photoUrls = list("photo_test", "second test"),
category = Category$new(id = 450, name = "test_cat"),
id = update_pet_id,
tags = list(
Tag$new(id = 123, name = "tag_test"), Tag$new(id = 456, name = "unknown")
),
status = "available"
)
pet_api$api_client$username <- "username123"
pet_api$api_client$password <- "password123"
result <- pet_api$add_pet(update_pet)
## update pet with form
update_result <- pet_api$update_pet_with_form(update_pet_id, name = "pet2", status = "sold")
# get pet
response <- pet_api$get_pet_by_id(update_pet_id)
expect_equal(response$id, update_pet_id)
expect_equal(response$name, "pet2")
expect_equal(response$status, "sold")
expect_equal(
response$photoUrls,
list("photo_test", "second test")
)
expect_equal(response$category, Category$new(id = 450, name = "test_cat"))
expect_equal(pet$tags, response$tags)
expect_equal(
response$tags,
list(Tag$new(id = 123, name = "tag_test"), Tag$new(id = 456, name = "unknown"))
)
})
test_that("get_pet_by_id_streaming", {
result <- tryCatch(
pet_api$get_pet_by_id_streaming(pet_id, stream_callback = function(x) { print(x) }),

View File

@@ -166,8 +166,8 @@ ApiClient <- R6::R6Class(
if (resp$status_code %in% self$retry_status_codes) {
Sys.sleep((2 ^ i) + stats::runif(n = 1, min = 0, max = 1))
resp <- self$Execute(url, method, query_params, header_params,
form_params, file_params, body,
stream_callback = stream_callback, ...)
form_params, file_params, accepts, content_types,
body, stream_callback = stream_callback, ...)
} else {
break
}

View File

@@ -125,6 +125,9 @@ FakeApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`dummy`)) {
rlang::abort(message = "Missing required parameter `dummy`.",
@@ -137,7 +140,6 @@ FakeApi <- R6::R6Class(
header_params["data_file"] <- `var_data_file`
local_var_body <- NULL
local_var_url_path <- "/fake/data_file"
# The Accept request HTTP header
@@ -150,6 +152,8 @@ FakeApi <- R6::R6Class(
method = "GET",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,

View File

@@ -629,6 +629,9 @@ PetApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`pet`)) {
rlang::abort(message = "Missing required parameter `pet`.",
@@ -663,6 +666,8 @@ PetApi <- R6::R6Class(
method = "POST",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -746,6 +751,9 @@ PetApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`pet_id`)) {
rlang::abort(message = "Missing required parameter `pet_id`.",
@@ -756,7 +764,6 @@ PetApi <- R6::R6Class(
header_params["api_key"] <- `api_key`
local_var_body <- NULL
local_var_url_path <- "/pet/{petId}"
if (!missing(`pet_id`)) {
local_var_url_path <- gsub(paste0("\\{", "petId", "\\}"), URLencode(as.character(`pet_id`), reserved = TRUE), local_var_url_path)
@@ -775,6 +782,8 @@ PetApi <- R6::R6Class(
method = "DELETE",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -845,6 +854,9 @@ PetApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`status`)) {
rlang::abort(message = "Missing required parameter `status`.",
@@ -853,9 +865,8 @@ PetApi <- R6::R6Class(
reason = "Missing required parameter `status`."))
}
query_params["status"] <- status
query_params["status"] <- `status`
local_var_body <- NULL
local_var_url_path <- "/pet/findByStatus"
# OAuth token
header_params["Authorization"] <- paste("Bearer", self$api_client$access_token, sep = " ")
@@ -870,6 +881,8 @@ PetApi <- R6::R6Class(
method = "GET",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -953,6 +966,9 @@ PetApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`tags`)) {
rlang::abort(message = "Missing required parameter `tags`.",
@@ -961,9 +977,8 @@ PetApi <- R6::R6Class(
reason = "Missing required parameter `tags`."))
}
query_params["tags"] <- tags
query_params["tags"] <- `tags`
local_var_body <- NULL
local_var_url_path <- "/pet/findByTags"
# OAuth token
header_params["Authorization"] <- paste("Bearer", self$api_client$access_token, sep = " ")
@@ -978,6 +993,8 @@ PetApi <- R6::R6Class(
method = "GET",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -1061,6 +1078,9 @@ PetApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`pet_id`)) {
rlang::abort(message = "Missing required parameter `pet_id`.",
@@ -1069,7 +1089,6 @@ PetApi <- R6::R6Class(
reason = "Missing required parameter `pet_id`."))
}
local_var_body <- NULL
local_var_url_path <- "/pet/{petId}"
if (!missing(`pet_id`)) {
local_var_url_path <- gsub(paste0("\\{", "petId", "\\}"), URLencode(as.character(`pet_id`), reserved = TRUE), local_var_url_path)
@@ -1087,6 +1106,8 @@ PetApi <- R6::R6Class(
method = "GET",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -1176,6 +1197,9 @@ PetApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`pet_id`)) {
rlang::abort(message = "Missing required parameter `pet_id`.",
@@ -1184,7 +1208,6 @@ PetApi <- R6::R6Class(
reason = "Missing required parameter `pet_id`."))
}
local_var_body <- NULL
local_var_url_path <- "/pet/{petId}?streaming"
if (!missing(`pet_id`)) {
local_var_url_path <- gsub(paste0("\\{", "petId", "\\}"), URLencode(as.character(`pet_id`), reserved = TRUE), local_var_url_path)
@@ -1205,6 +1228,8 @@ PetApi <- R6::R6Class(
method = "GET",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -1299,6 +1324,9 @@ PetApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`header_test_int`)) {
rlang::abort(message = "Missing required parameter `header_test_int`.",
@@ -1309,7 +1337,6 @@ PetApi <- R6::R6Class(
header_params["header_test_int"] <- `header_test_int`
local_var_body <- NULL
local_var_url_path <- "/pet_header_test"
# API key authentication
if ("api_key" %in% names(self$api_client$api_keys) && nchar(self$api_client$api_keys["api_key"]) > 0) {
@@ -1326,6 +1353,8 @@ PetApi <- R6::R6Class(
method = "GET",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -1414,6 +1443,9 @@ PetApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`pet`)) {
rlang::abort(message = "Missing required parameter `pet`.",
@@ -1442,6 +1474,8 @@ PetApi <- R6::R6Class(
method = "PUT",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -1527,6 +1561,9 @@ PetApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`pet_id`)) {
rlang::abort(message = "Missing required parameter `pet_id`.",
@@ -1535,11 +1572,8 @@ PetApi <- R6::R6Class(
reason = "Missing required parameter `pet_id`."))
}
local_var_body <- list(
"name" = name,
"status" = status
)
form_params["name"] <- `name`
form_params["status"] <- `status`
local_var_url_path <- "/pet/{petId}"
if (!missing(`pet_id`)) {
local_var_url_path <- gsub(paste0("\\{", "petId", "\\}"), URLencode(as.character(`pet_id`), reserved = TRUE), local_var_url_path)
@@ -1558,6 +1592,8 @@ PetApi <- R6::R6Class(
method = "POST",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -1632,6 +1668,9 @@ PetApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`pet_id`)) {
rlang::abort(message = "Missing required parameter `pet_id`.",
@@ -1640,11 +1679,8 @@ PetApi <- R6::R6Class(
reason = "Missing required parameter `pet_id`."))
}
local_var_body <- list(
"additionalMetadata" = additional_metadata,
"file" = httr::upload_file(file)
)
form_params["additionalMetadata"] <- `additional_metadata`
file_params["file"] <- httr::upload_file(`file`)
local_var_url_path <- "/pet/{petId}/uploadImage"
if (!missing(`pet_id`)) {
local_var_url_path <- gsub(paste0("\\{", "petId", "\\}"), URLencode(as.character(`pet_id`), reserved = TRUE), local_var_url_path)
@@ -1663,6 +1699,8 @@ PetApi <- R6::R6Class(
method = "POST",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,

View File

@@ -273,6 +273,9 @@ StoreApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`order_id`)) {
rlang::abort(message = "Missing required parameter `order_id`.",
@@ -281,7 +284,6 @@ StoreApi <- R6::R6Class(
reason = "Missing required parameter `order_id`."))
}
local_var_body <- NULL
local_var_url_path <- "/store/order/{orderId}"
if (!missing(`order_id`)) {
local_var_url_path <- gsub(paste0("\\{", "orderId", "\\}"), URLencode(as.character(`order_id`), reserved = TRUE), local_var_url_path)
@@ -298,6 +300,8 @@ StoreApi <- R6::R6Class(
method = "DELETE",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -366,8 +370,10 @@ StoreApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
local_var_url_path <- "/store/inventory"
# API key authentication
if ("api_key" %in% names(self$api_client$api_keys) && nchar(self$api_client$api_keys["api_key"]) > 0) {
@@ -384,6 +390,8 @@ StoreApi <- R6::R6Class(
method = "GET",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -467,6 +475,9 @@ StoreApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`order_id`)) {
rlang::abort(message = "Missing required parameter `order_id`.",
@@ -475,7 +486,6 @@ StoreApi <- R6::R6Class(
reason = "Missing required parameter `order_id`."))
}
local_var_body <- NULL
local_var_url_path <- "/store/order/{orderId}"
if (!missing(`order_id`)) {
local_var_url_path <- gsub(paste0("\\{", "orderId", "\\}"), URLencode(as.character(`order_id`), reserved = TRUE), local_var_url_path)
@@ -492,6 +502,8 @@ StoreApi <- R6::R6Class(
method = "GET",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -575,6 +587,9 @@ StoreApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`order`)) {
rlang::abort(message = "Missing required parameter `order`.",
@@ -601,6 +616,8 @@ StoreApi <- R6::R6Class(
method = "POST",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,

View File

@@ -459,6 +459,9 @@ UserApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`user`)) {
rlang::abort(message = "Missing required parameter `user`.",
@@ -489,6 +492,8 @@ UserApi <- R6::R6Class(
method = "POST",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -557,6 +562,9 @@ UserApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`user`)) {
rlang::abort(message = "Missing required parameter `user`.",
@@ -566,7 +574,7 @@ UserApi <- R6::R6Class(
}
if (!missing(`user`)) {
body.items <- paste(unlist(lapply(user, function(param) {
body.items <- paste(unlist(lapply(`user`, function(param) {
param$toJSONString()
})), collapse = ",")
local_var_body <- paste0("[", body.items, "]")
@@ -590,6 +598,8 @@ UserApi <- R6::R6Class(
method = "POST",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -658,6 +668,9 @@ UserApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`user`)) {
rlang::abort(message = "Missing required parameter `user`.",
@@ -667,7 +680,7 @@ UserApi <- R6::R6Class(
}
if (!missing(`user`)) {
body.items <- paste(unlist(lapply(user, function(param) {
body.items <- paste(unlist(lapply(`user`, function(param) {
param$toJSONString()
})), collapse = ",")
local_var_body <- paste0("[", body.items, "]")
@@ -691,6 +704,8 @@ UserApi <- R6::R6Class(
method = "POST",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -759,6 +774,9 @@ UserApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`username`)) {
rlang::abort(message = "Missing required parameter `username`.",
@@ -767,7 +785,6 @@ UserApi <- R6::R6Class(
reason = "Missing required parameter `username`."))
}
local_var_body <- NULL
local_var_url_path <- "/user/{username}"
if (!missing(`username`)) {
local_var_url_path <- gsub(paste0("\\{", "username", "\\}"), URLencode(as.character(`username`), reserved = TRUE), local_var_url_path)
@@ -788,6 +805,8 @@ UserApi <- R6::R6Class(
method = "DELETE",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -858,6 +877,9 @@ UserApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`username`)) {
rlang::abort(message = "Missing required parameter `username`.",
@@ -866,7 +888,6 @@ UserApi <- R6::R6Class(
reason = "Missing required parameter `username`."))
}
local_var_body <- NULL
local_var_url_path <- "/user/{username}"
if (!missing(`username`)) {
local_var_url_path <- gsub(paste0("\\{", "username", "\\}"), URLencode(as.character(`username`), reserved = TRUE), local_var_url_path)
@@ -883,6 +904,8 @@ UserApi <- R6::R6Class(
method = "GET",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -968,6 +991,9 @@ UserApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`username`)) {
rlang::abort(message = "Missing required parameter `username`.",
@@ -983,11 +1009,10 @@ UserApi <- R6::R6Class(
reason = "Missing required parameter `password`."))
}
query_params["username"] <- username
query_params["username"] <- `username`
query_params["password"] <- password
query_params["password"] <- `password`
local_var_body <- NULL
local_var_url_path <- "/user/login"
# The Accept request HTTP header
@@ -1000,6 +1025,8 @@ UserApi <- R6::R6Class(
method = "GET",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -1079,8 +1106,10 @@ UserApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
local_var_url_path <- "/user/logout"
# API key authentication
if ("api_key" %in% names(self$api_client$api_keys) && nchar(self$api_client$api_keys["api_key"]) > 0) {
@@ -1097,6 +1126,8 @@ UserApi <- R6::R6Class(
method = "GET",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,
@@ -1167,6 +1198,9 @@ UserApi <- R6::R6Class(
args <- list(...)
query_params <- list()
header_params <- c()
form_params <- list()
file_params <- list()
local_var_body <- NULL
if (missing(`username`)) {
rlang::abort(message = "Missing required parameter `username`.",
@@ -1208,6 +1242,8 @@ UserApi <- R6::R6Class(
method = "PUT",
query_params = query_params,
header_params = header_params,
form_params = form_params,
file_params = file_params,
accepts = local_var_accepts,
content_types = local_var_content_types,
body = local_var_body,

View File

@@ -336,7 +336,3 @@ test_that("Tests anyOf", {
# #expect_equal(response$tags, list(Tag$new(123, "tag_test"), Tag$new(456, "unknown")))
#})
#test_that("updatePetWithForm", {
# response <- pet_api$updatePetWithForm(pet_id, "test", "sold")
# expect_equal(response, "Pet updated")
#})