From 13d34b9b63ba164d7d13f3fbfb9cfccf48ff7751 Mon Sep 17 00:00:00 2001 From: William Cheng Date: Wed, 3 Aug 2022 23:45:12 +0800 Subject: [PATCH] [R][httr2] Fix form parameter support (#13057) * fix form parameter support in the r client * fix query param * fix form parameters --- .../src/main/resources/r/api.mustache | 43 +++++------ .../src/main/resources/r/api_client.mustache | 4 +- .../r/libraries/httr2/api_client.mustache | 35 +++++++-- .../client/petstore/R-httr2/R/api_client.R | 35 +++++++-- samples/client/petstore/R-httr2/R/fake_api.R | 6 +- samples/client/petstore/R-httr2/R/pet_api.R | 74 ++++++++++++++----- samples/client/petstore/R-httr2/R/store_api.R | 23 +++++- samples/client/petstore/R-httr2/R/user_api.R | 52 +++++++++++-- .../R-httr2/tests/testthat/test_petstore.R | 37 ++++++++++ samples/client/petstore/R/R/api_client.R | 4 +- samples/client/petstore/R/R/fake_api.R | 6 +- samples/client/petstore/R/R/pet_api.R | 74 ++++++++++++++----- samples/client/petstore/R/R/store_api.R | 23 +++++- samples/client/petstore/R/R/user_api.R | 52 +++++++++++-- .../petstore/R/tests/testthat/test_petstore.R | 4 - 15 files changed, 369 insertions(+), 103 deletions(-) diff --git a/modules/openapi-generator/src/main/resources/r/api.mustache b/modules/openapi-generator/src/main/resources/r/api.mustache index 9c8d999abc06..55b6a7010668 100644 --- a/modules/openapi-generator/src/main/resources/r/api.mustache +++ b/modules/openapi-generator/src/main/resources/r/api.mustache @@ -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, diff --git a/modules/openapi-generator/src/main/resources/r/api_client.mustache b/modules/openapi-generator/src/main/resources/r/api_client.mustache index e71bcd7f1bfe..a1553f67e466 100644 --- a/modules/openapi-generator/src/main/resources/r/api_client.mustache +++ b/modules/openapi-generator/src/main/resources/r/api_client.mustache @@ -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 } diff --git a/modules/openapi-generator/src/main/resources/r/libraries/httr2/api_client.mustache b/modules/openapi-generator/src/main/resources/r/libraries/httr2/api_client.mustache index b5586e1d1a5e..035161994bcf 100644 --- a/modules/openapi-generator/src/main/resources/r/libraries/httr2/api_client.mustache +++ b/modules/openapi-generator/src/main/resources/r/libraries/httr2/api_client.mustache @@ -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) diff --git a/samples/client/petstore/R-httr2/R/api_client.R b/samples/client/petstore/R-httr2/R/api_client.R index d1dcb01b2d69..8b52a1622d87 100644 --- a/samples/client/petstore/R-httr2/R/api_client.R +++ b/samples/client/petstore/R-httr2/R/api_client.R @@ -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) diff --git a/samples/client/petstore/R-httr2/R/fake_api.R b/samples/client/petstore/R-httr2/R/fake_api.R index bcfa18bba9e8..b5d560f74844 100644 --- a/samples/client/petstore/R-httr2/R/fake_api.R +++ b/samples/client/petstore/R-httr2/R/fake_api.R @@ -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, diff --git a/samples/client/petstore/R-httr2/R/pet_api.R b/samples/client/petstore/R-httr2/R/pet_api.R index 96d0db0b98df..a5653aa8001a 100644 --- a/samples/client/petstore/R-httr2/R/pet_api.R +++ b/samples/client/petstore/R-httr2/R/pet_api.R @@ -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, diff --git a/samples/client/petstore/R-httr2/R/store_api.R b/samples/client/petstore/R-httr2/R/store_api.R index f219288d51bb..f244be66fb35 100644 --- a/samples/client/petstore/R-httr2/R/store_api.R +++ b/samples/client/petstore/R-httr2/R/store_api.R @@ -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, diff --git a/samples/client/petstore/R-httr2/R/user_api.R b/samples/client/petstore/R-httr2/R/user_api.R index d4cf98b1a664..9d69e9009ce5 100644 --- a/samples/client/petstore/R-httr2/R/user_api.R +++ b/samples/client/petstore/R-httr2/R/user_api.R @@ -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, diff --git a/samples/client/petstore/R-httr2/tests/testthat/test_petstore.R b/samples/client/petstore/R-httr2/tests/testthat/test_petstore.R index 066af44c17d4..9b94ebe64a35 100644 --- a/samples/client/petstore/R-httr2/tests/testthat/test_petstore.R +++ b/samples/client/petstore/R-httr2/tests/testthat/test_petstore.R @@ -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) }), diff --git a/samples/client/petstore/R/R/api_client.R b/samples/client/petstore/R/R/api_client.R index 7dc091948a8c..870cb82c45ce 100644 --- a/samples/client/petstore/R/R/api_client.R +++ b/samples/client/petstore/R/R/api_client.R @@ -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 } diff --git a/samples/client/petstore/R/R/fake_api.R b/samples/client/petstore/R/R/fake_api.R index 160863cea57f..52b3987f1089 100644 --- a/samples/client/petstore/R/R/fake_api.R +++ b/samples/client/petstore/R/R/fake_api.R @@ -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, diff --git a/samples/client/petstore/R/R/pet_api.R b/samples/client/petstore/R/R/pet_api.R index 27d1770ece1f..cd03160159b5 100644 --- a/samples/client/petstore/R/R/pet_api.R +++ b/samples/client/petstore/R/R/pet_api.R @@ -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, diff --git a/samples/client/petstore/R/R/store_api.R b/samples/client/petstore/R/R/store_api.R index 120a3fcce4bf..101a4118b228 100644 --- a/samples/client/petstore/R/R/store_api.R +++ b/samples/client/petstore/R/R/store_api.R @@ -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, diff --git a/samples/client/petstore/R/R/user_api.R b/samples/client/petstore/R/R/user_api.R index 8178f2c7bf62..3dc9b914ff6b 100644 --- a/samples/client/petstore/R/R/user_api.R +++ b/samples/client/petstore/R/R/user_api.R @@ -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, diff --git a/samples/client/petstore/R/tests/testthat/test_petstore.R b/samples/client/petstore/R/tests/testthat/test_petstore.R index 2bbb7e3f0000..903993395dde 100644 --- a/samples/client/petstore/R/tests/testthat/test_petstore.R +++ b/samples/client/petstore/R/tests/testthat/test_petstore.R @@ -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") -#})