From f74426f2d5fa1af3b6b56419a38b5ab4f5e5f6cf Mon Sep 17 00:00:00 2001 From: DenserMeerkat <95911940+DenserMeerkat@users.noreply.github.com> Date: Wed, 27 Dec 2023 21:57:26 +0530 Subject: [PATCH] fix: renamed and moved tests --- test/codegen/curl_codegen_test.dart | 67 +++-- test/codegen/dart_dio_codegen_test.dart | 223 ++++++++-------- test/codegen/dart_http_codegen_test.dart | 227 ++++++++-------- test/codegen/har_codegen_test.dart | 159 ++++++------ test/codegen/js_axios_codegen_test.dart | 211 ++++++++------- test/codegen/js_fetch_codegen_test.dart | 235 +++++++++-------- test/codegen/kotlin_okhttp_codegen_test.dart | 222 ++++++++-------- test/codegen/nodejs_axios_codegen_test.dart | 227 ++++++++-------- test/codegen/nodejs_fetch_codegen_test.dart | 243 +++++++++--------- .../python_http_client_codegen_test.dart | 179 +++++++------ .../codegen/python_requests_codegen_test.dart | 157 ++++++----- test/request_models.dart | 176 ++++++------- 12 files changed, 1140 insertions(+), 1186 deletions(-) diff --git a/test/codegen/curl_codegen_test.dart b/test/codegen/curl_codegen_test.dart index 73bc8e85..e9bb7f60 100644 --- a/test/codegen/curl_codegen_test.dart +++ b/test/codegen/curl_codegen_test.dart @@ -54,6 +54,37 @@ void main() { --header 'User-Agent: Test Agent'"""; expect(curlCodeGen.getCode(requestModelGet8, "https"), expectedCode); }); + + test('GET 9', () { + const expectedCode = + r"""curl --url 'https://api.foss42.com/humanize/social?num=8700000&add_space=true'"""; + expect(curlCodeGen.getCode(requestModelGet9, "https"), expectedCode); + }); + + test('GET 10', () { + const expectedCode = + r"""curl --url 'https://api.foss42.com/humanize/social' \ + --header 'User-Agent: Test Agent'"""; + expect( + curlCodeGen.getCode( + requestModelGet10, + "https", + ), + expectedCode); + }); + + test('GET 11', () { + const expectedCode = + r"""curl --url 'https://api.foss42.com/humanize/social?num=8700000&digits=3' \ + --header 'User-Agent: Test Agent'"""; + expect(curlCodeGen.getCode(requestModelGet11, "https"), expectedCode); + }); + + test('GET 12', () { + const expectedCode = + r"""curl --url 'https://api.foss42.com/humanize/social'"""; + expect(curlCodeGen.getCode(requestModelGet12, "https"), expectedCode); + }); }); group('HEAD Request', () { @@ -145,40 +176,4 @@ void main() { expect(curlCodeGen.getCode(requestModelDelete2, "https"), expectedCode); }); }); - - group('Request with enabled Rows', () { - test('Enabled Params', () { - const expectedCode = - r"""curl --url 'https://api.foss42.com/humanize/social?num=8700000&add_space=true'"""; - expect(curlCodeGen.getCode(requestModelEnabledParams, "https"), - expectedCode); - }); - - test('Enabled Headers', () { - const expectedCode = - r"""curl --url 'https://api.foss42.com/humanize/social' \ - --header 'User-Agent: Test Agent'"""; - expect( - curlCodeGen.getCode( - requestModelEnabledHeaders, - "https", - ), - expectedCode); - }); - - test('Enabled Headers and Params', () { - const expectedCode = - r"""curl --url 'https://api.foss42.com/humanize/social?num=8700000&digits=3' \ - --header 'User-Agent: Test Agent'"""; - expect( - curlCodeGen.getCode(requestModelEnabledRows, "https"), expectedCode); - }); - - test('Disabled Headders and Params', () { - const expectedCode = - r"""curl --url 'https://api.foss42.com/humanize/social'"""; - expect( - curlCodeGen.getCode(requestModelDisabledRows, "https"), expectedCode); - }); - }); } diff --git a/test/codegen/dart_dio_codegen_test.dart b/test/codegen/dart_dio_codegen_test.dart index fba58e8c..30b371fd 100644 --- a/test/codegen/dart_dio_codegen_test.dart +++ b/test/codegen/dart_dio_codegen_test.dart @@ -208,6 +208,115 @@ void main() async { """; expect(dartDioCodeGen.getCode(requestModelGet8, "https"), expectedCode); }); + + test('GET 9', () { + const expectedCode = r"""import 'package:dio/dio.dart' as dio; + +void main() async { + try { + final queryParams = { + 'num': '8700000', + 'add_space': 'true', + }; + final response = await dio.Dio.get( + 'https://api.foss42.com/humanize/social', + queryParameters: queryParams, + ); + print(response.statusCode); + print(response.data); + } on DioException catch (e, s) { + print(e.response?.statusCode); + print(e.response?.data); + print(s); + } catch (e, s) { + print(e); + print(s); + } +} +"""; + expect(dartDioCodeGen.getCode(requestModelGet9, "https"), expectedCode); + }); + + test('GET 10', () { + const expectedCode = r"""import 'package:dio/dio.dart' as dio; + +void main() async { + try { + final headers = {'User-Agent': 'Test Agent'}; + final response = await dio.Dio.get( + 'https://api.foss42.com/humanize/social', + options: Options(headers: headers), + ); + print(response.statusCode); + print(response.data); + } on DioException catch (e, s) { + print(e.response?.statusCode); + print(e.response?.data); + print(s); + } catch (e, s) { + print(e); + print(s); + } +} +"""; + expect( + dartDioCodeGen.getCode( + requestModelGet10, + "https", + ), + expectedCode); + }); + + test('GET 11', () { + const expectedCode = r"""import 'package:dio/dio.dart' as dio; + +void main() async { + try { + final queryParams = { + 'num': '8700000', + 'digits': '3', + }; + final headers = {'User-Agent': 'Test Agent'}; + final response = await dio.Dio.get( + 'https://api.foss42.com/humanize/social', + queryParameters: queryParams, + options: Options(headers: headers), + ); + print(response.statusCode); + print(response.data); + } on DioException catch (e, s) { + print(e.response?.statusCode); + print(e.response?.data); + print(s); + } catch (e, s) { + print(e); + print(s); + } +} +"""; + expect(dartDioCodeGen.getCode(requestModelGet11, "https"), expectedCode); + }); + + test('GET 12', () { + const expectedCode = r"""import 'package:dio/dio.dart' as dio; + +void main() async { + try { + final response = await dio.Dio.get('https://api.foss42.com/humanize/social'); + print(response.statusCode); + print(response.data); + } on DioException catch (e, s) { + print(e.response?.statusCode); + print(e.response?.data); + print(s); + } catch (e, s) { + print(e); + print(s); + } +} +"""; + expect(dartDioCodeGen.getCode(requestModelGet12, "https"), expectedCode); + }); }); group('HEAD Request', () { @@ -456,118 +565,4 @@ void main() async { dartDioCodeGen.getCode(requestModelDelete2, "https"), expectedCode); }); }); - - group('Request with enabled Rows', () { - test('Enabled Params', () { - const expectedCode = r"""import 'package:dio/dio.dart' as dio; - -void main() async { - try { - final queryParams = { - 'num': '8700000', - 'add_space': 'true', - }; - final response = await dio.Dio.get( - 'https://api.foss42.com/humanize/social', - queryParameters: queryParams, - ); - print(response.statusCode); - print(response.data); - } on DioException catch (e, s) { - print(e.response?.statusCode); - print(e.response?.data); - print(s); - } catch (e, s) { - print(e); - print(s); - } -} -"""; - expect(dartDioCodeGen.getCode(requestModelEnabledParams, "https"), - expectedCode); - }); - - test('Enabled Headers', () { - const expectedCode = r"""import 'package:dio/dio.dart' as dio; - -void main() async { - try { - final headers = {'User-Agent': 'Test Agent'}; - final response = await dio.Dio.get( - 'https://api.foss42.com/humanize/social', - options: Options(headers: headers), - ); - print(response.statusCode); - print(response.data); - } on DioException catch (e, s) { - print(e.response?.statusCode); - print(e.response?.data); - print(s); - } catch (e, s) { - print(e); - print(s); - } -} -"""; - expect( - dartDioCodeGen.getCode( - requestModelEnabledHeaders, - "https", - ), - expectedCode); - }); - - test('Enabled Headers and Params', () { - const expectedCode = r"""import 'package:dio/dio.dart' as dio; - -void main() async { - try { - final queryParams = { - 'num': '8700000', - 'digits': '3', - }; - final headers = {'User-Agent': 'Test Agent'}; - final response = await dio.Dio.get( - 'https://api.foss42.com/humanize/social', - queryParameters: queryParams, - options: Options(headers: headers), - ); - print(response.statusCode); - print(response.data); - } on DioException catch (e, s) { - print(e.response?.statusCode); - print(e.response?.data); - print(s); - } catch (e, s) { - print(e); - print(s); - } -} -"""; - expect(dartDioCodeGen.getCode(requestModelEnabledRows, "https"), - expectedCode); - }); - - test('Disabled Headders and Params', () { - const expectedCode = r"""import 'package:dio/dio.dart' as dio; - -void main() async { - try { - final response = await dio.Dio.get('https://api.foss42.com/humanize/social'); - print(response.statusCode); - print(response.data); - } on DioException catch (e, s) { - print(e.response?.statusCode); - print(e.response?.data); - print(s); - } catch (e, s) { - print(e); - print(s); - } -} -"""; - expect(dartDioCodeGen.getCode(requestModelDisabledRows, "https"), - expectedCode); - }); - }); } diff --git a/test/codegen/dart_http_codegen_test.dart b/test/codegen/dart_http_codegen_test.dart index faa1f6bf..55ab070a 100644 --- a/test/codegen/dart_http_codegen_test.dart +++ b/test/codegen/dart_http_codegen_test.dart @@ -213,6 +213,117 @@ void main() async { """; expect(dartHttpCodeGen.getCode(requestModelGet8, "https"), expectedCode); }); + + test('GET 9', () { + const expectedCode = r"""import 'package:http/http.dart' as http; + +void main() async { + var uri = Uri.parse('https://api.foss42.com/humanize/social'); + + var queryParams = { + 'num': '8700000', + 'add_space': 'true', + }; + uri = uri.replace(queryParameters: queryParams); + + final response = await http.get(uri); + + int statusCode = response.statusCode; + if (statusCode >= 200 && statusCode < 300) { + print('Status Code: $statusCode'); + print('Response Body: ${response.body}'); + } else { + print('Error Status Code: $statusCode'); + print('Error Response Body: ${response.body}'); + } +} +"""; + expect(dartHttpCodeGen.getCode(requestModelGet9, "https"), expectedCode); + }); + + test('GET 10', () { + const expectedCode = r"""import 'package:http/http.dart' as http; + +void main() async { + var uri = Uri.parse('https://api.foss42.com/humanize/social'); + + var headers = {'User-Agent': 'Test Agent'}; + + final response = await http.get( + uri, + headers: headers, + ); + + int statusCode = response.statusCode; + if (statusCode >= 200 && statusCode < 300) { + print('Status Code: $statusCode'); + print('Response Body: ${response.body}'); + } else { + print('Error Status Code: $statusCode'); + print('Error Response Body: ${response.body}'); + } +} +"""; + expect( + dartHttpCodeGen.getCode( + requestModelGet10, + "https", + ), + expectedCode); + }); + + test('GET 11', () { + const expectedCode = r"""import 'package:http/http.dart' as http; + +void main() async { + var uri = Uri.parse('https://api.foss42.com/humanize/social'); + + var queryParams = { + 'num': '8700000', + 'digits': '3', + }; + uri = uri.replace(queryParameters: queryParams); + + var headers = {'User-Agent': 'Test Agent'}; + + final response = await http.get( + uri, + headers: headers, + ); + + int statusCode = response.statusCode; + if (statusCode >= 200 && statusCode < 300) { + print('Status Code: $statusCode'); + print('Response Body: ${response.body}'); + } else { + print('Error Status Code: $statusCode'); + print('Error Response Body: ${response.body}'); + } +} +"""; + expect(dartHttpCodeGen.getCode(requestModelGet11, "https"), expectedCode); + }); + + test('GET 12', () { + const expectedCode = r"""import 'package:http/http.dart' as http; + +void main() async { + var uri = Uri.parse('https://api.foss42.com/humanize/social'); + + final response = await http.get(uri); + + int statusCode = response.statusCode; + if (statusCode >= 200 && statusCode < 300) { + print('Status Code: $statusCode'); + print('Response Body: ${response.body}'); + } else { + print('Error Status Code: $statusCode'); + print('Error Response Body: ${response.body}'); + } +} +"""; + expect(dartHttpCodeGen.getCode(requestModelGet12, "https"), expectedCode); + }); }); group('HEAD Request', () { @@ -482,120 +593,4 @@ void main() async { dartHttpCodeGen.getCode(requestModelDelete2, "https"), expectedCode); }); }); - - group('Request with enabled Rows', () { - test('Enabled Params', () { - const expectedCode = r"""import 'package:http/http.dart' as http; - -void main() async { - var uri = Uri.parse('https://api.foss42.com/humanize/social'); - - var queryParams = { - 'num': '8700000', - 'add_space': 'true', - }; - uri = uri.replace(queryParameters: queryParams); - - final response = await http.get(uri); - - int statusCode = response.statusCode; - if (statusCode >= 200 && statusCode < 300) { - print('Status Code: $statusCode'); - print('Response Body: ${response.body}'); - } else { - print('Error Status Code: $statusCode'); - print('Error Response Body: ${response.body}'); - } -} -"""; - expect(dartHttpCodeGen.getCode(requestModelEnabledParams, "https"), - expectedCode); - }); - - test('Enabled Headers', () { - const expectedCode = r"""import 'package:http/http.dart' as http; - -void main() async { - var uri = Uri.parse('https://api.foss42.com/humanize/social'); - - var headers = {'User-Agent': 'Test Agent'}; - - final response = await http.get( - uri, - headers: headers, - ); - - int statusCode = response.statusCode; - if (statusCode >= 200 && statusCode < 300) { - print('Status Code: $statusCode'); - print('Response Body: ${response.body}'); - } else { - print('Error Status Code: $statusCode'); - print('Error Response Body: ${response.body}'); - } -} -"""; - expect( - dartHttpCodeGen.getCode( - requestModelEnabledHeaders, - "https", - ), - expectedCode); - }); - - test('Enabled Headers and Params', () { - const expectedCode = r"""import 'package:http/http.dart' as http; - -void main() async { - var uri = Uri.parse('https://api.foss42.com/humanize/social'); - - var queryParams = { - 'num': '8700000', - 'digits': '3', - }; - uri = uri.replace(queryParameters: queryParams); - - var headers = {'User-Agent': 'Test Agent'}; - - final response = await http.get( - uri, - headers: headers, - ); - - int statusCode = response.statusCode; - if (statusCode >= 200 && statusCode < 300) { - print('Status Code: $statusCode'); - print('Response Body: ${response.body}'); - } else { - print('Error Status Code: $statusCode'); - print('Error Response Body: ${response.body}'); - } -} -"""; - expect(dartHttpCodeGen.getCode(requestModelEnabledRows, "https"), - expectedCode); - }); - - test('Disabled Headders and Params', () { - const expectedCode = r"""import 'package:http/http.dart' as http; - -void main() async { - var uri = Uri.parse('https://api.foss42.com/humanize/social'); - - final response = await http.get(uri); - - int statusCode = response.statusCode; - if (statusCode >= 200 && statusCode < 300) { - print('Status Code: $statusCode'); - print('Response Body: ${response.body}'); - } else { - print('Error Status Code: $statusCode'); - print('Error Response Body: ${response.body}'); - } -} -"""; - expect(dartHttpCodeGen.getCode(requestModelDisabledRows, "https"), - expectedCode); - }); - }); } diff --git a/test/codegen/har_codegen_test.dart b/test/codegen/har_codegen_test.dart index e3c89961..8e6b7bb0 100644 --- a/test/codegen/har_codegen_test.dart +++ b/test/codegen/har_codegen_test.dart @@ -149,6 +149,83 @@ void main() { }"""; expect(harCodeGen.getCode(requestModelGet8, "https"), expectedCode); }); + + test('GET 9', () { + const expectedCode = r"""{ + "method": "GET", + "url": "https://api.foss42.com/humanize/social?num=8700000&add_space=true", + "httpVersion": "HTTP/1.1", + "queryString": [ + { + "name": "num", + "value": "8700000" + }, + { + "name": "add_space", + "value": "true" + } + ], + "headers": [] +}"""; + expect(harCodeGen.getCode(requestModelGet9, "https"), expectedCode); + }); + + test('GET 10', () { + const expectedCode = r"""{ + "method": "GET", + "url": "https://api.foss42.com/humanize/social", + "httpVersion": "HTTP/1.1", + "queryString": [], + "headers": [ + { + "name": "User-Agent", + "value": "Test Agent" + } + ] +}"""; + expect( + harCodeGen.getCode( + requestModelGet10, + "https", + ), + expectedCode); + }); + + test('GET 11', () { + const expectedCode = r"""{ + "method": "GET", + "url": "https://api.foss42.com/humanize/social?num=8700000&digits=3", + "httpVersion": "HTTP/1.1", + "queryString": [ + { + "name": "num", + "value": "8700000" + }, + { + "name": "digits", + "value": "3" + } + ], + "headers": [ + { + "name": "User-Agent", + "value": "Test Agent" + } + ] +}"""; + expect(harCodeGen.getCode(requestModelGet11, "https"), expectedCode); + }); + + test('GET 12', () { + const expectedCode = r"""{ + "method": "GET", + "url": "https://api.foss42.com/humanize/social", + "httpVersion": "HTTP/1.1", + "queryString": [], + "headers": [] +}"""; + expect(harCodeGen.getCode(requestModelGet12, "https"), expectedCode); + }); }); group('HEAD Request', () { @@ -317,86 +394,4 @@ void main() { expect(harCodeGen.getCode(requestModelDelete2, "https"), expectedCode); }); }); - - group('Request with enabled Rows', () { - test('Enabled Params', () { - const expectedCode = r"""{ - "method": "GET", - "url": "https://api.foss42.com/humanize/social?num=8700000&add_space=true", - "httpVersion": "HTTP/1.1", - "queryString": [ - { - "name": "num", - "value": "8700000" - }, - { - "name": "add_space", - "value": "true" - } - ], - "headers": [] -}"""; - expect( - harCodeGen.getCode(requestModelEnabledParams, "https"), expectedCode); - }); - - test('Enabled Headers', () { - const expectedCode = r"""{ - "method": "GET", - "url": "https://api.foss42.com/humanize/social", - "httpVersion": "HTTP/1.1", - "queryString": [], - "headers": [ - { - "name": "User-Agent", - "value": "Test Agent" - } - ] -}"""; - expect( - harCodeGen.getCode( - requestModelEnabledHeaders, - "https", - ), - expectedCode); - }); - - test('Enabled Headers and Params', () { - const expectedCode = r"""{ - "method": "GET", - "url": "https://api.foss42.com/humanize/social?num=8700000&digits=3", - "httpVersion": "HTTP/1.1", - "queryString": [ - { - "name": "num", - "value": "8700000" - }, - { - "name": "digits", - "value": "3" - } - ], - "headers": [ - { - "name": "User-Agent", - "value": "Test Agent" - } - ] -}"""; - expect( - harCodeGen.getCode(requestModelEnabledRows, "https"), expectedCode); - }); - - test('Disabled Headders and Params', () { - const expectedCode = r"""{ - "method": "GET", - "url": "https://api.foss42.com/humanize/social", - "httpVersion": "HTTP/1.1", - "queryString": [], - "headers": [] -}"""; - expect( - harCodeGen.getCode(requestModelDisabledRows, "https"), expectedCode); - }); - }); } diff --git a/test/codegen/js_axios_codegen_test.dart b/test/codegen/js_axios_codegen_test.dart index 49dce93b..9498da1c 100644 --- a/test/codegen/js_axios_codegen_test.dart +++ b/test/codegen/js_axios_codegen_test.dart @@ -201,6 +201,109 @@ axios(config) """; expect(axiosCodeGen.getCode(requestModelGet8, "https"), expectedCode); }); + + test('GET 9', () { + const expectedCode = r"""let config = { + url: 'https://api.foss42.com/humanize/social', + method: 'get', + params: { + "num": "8700000", + "add_space": "true" + } +}; + +axios(config) + .then(function (response) { + // handle success + console.log(response.status); + console.log(response.data); + }) + .catch(function (error) { + // handle error + console.log(error.response.status); + console.log(error); + }); +"""; + expect(axiosCodeGen.getCode(requestModelGet9, "https"), expectedCode); + }); + + test('GET 10', () { + const expectedCode = r"""let config = { + url: 'https://api.foss42.com/humanize/social', + method: 'get', + headers: { + "User-Agent": "Test Agent" + } +}; + +axios(config) + .then(function (response) { + // handle success + console.log(response.status); + console.log(response.data); + }) + .catch(function (error) { + // handle error + console.log(error.response.status); + console.log(error); + }); +"""; + expect( + axiosCodeGen.getCode( + requestModelGet10, + "https", + ), + expectedCode); + }); + + test('GET 11', () { + const expectedCode = r"""let config = { + url: 'https://api.foss42.com/humanize/social', + method: 'get', + params: { + "num": "8700000", + "digits": "3" + }, + headers: { + "User-Agent": "Test Agent" + } +}; + +axios(config) + .then(function (response) { + // handle success + console.log(response.status); + console.log(response.data); + }) + .catch(function (error) { + // handle error + console.log(error.response.status); + console.log(error); + }); +"""; + expect(axiosCodeGen.getCode(requestModelGet11, "https"), expectedCode); + }); + + test('GET 12', () { + const expectedCode = r"""let config = { + url: 'https://api.foss42.com/humanize/social', + method: 'get' +}; + +axios(config) + .then(function (response) { + // handle success + console.log(response.status); + console.log(response.data); + }) + .catch(function (error) { + // handle error + console.log(error.response.status); + console.log(error); + }); +"""; + expect(axiosCodeGen.getCode(requestModelGet12, "https"), expectedCode); + }); }); group('HEAD Request', () { @@ -426,112 +529,4 @@ axios(config) expect(axiosCodeGen.getCode(requestModelDelete2, "https"), expectedCode); }); }); - - group('Request with enabled Rows', () { - test('Enabled Params', () { - const expectedCode = r"""let config = { - url: 'https://api.foss42.com/humanize/social', - method: 'get', - params: { - "num": "8700000", - "add_space": "true" - } -}; - -axios(config) - .then(function (response) { - // handle success - console.log(response.status); - console.log(response.data); - }) - .catch(function (error) { - // handle error - console.log(error.response.status); - console.log(error); - }); -"""; - expect(axiosCodeGen.getCode(requestModelEnabledParams, "https"), - expectedCode); - }); - - test('Enabled Headers', () { - const expectedCode = r"""let config = { - url: 'https://api.foss42.com/humanize/social', - method: 'get', - headers: { - "User-Agent": "Test Agent" - } -}; - -axios(config) - .then(function (response) { - // handle success - console.log(response.status); - console.log(response.data); - }) - .catch(function (error) { - // handle error - console.log(error.response.status); - console.log(error); - }); -"""; - expect( - axiosCodeGen.getCode( - requestModelEnabledHeaders, - "https", - ), - expectedCode); - }); - - test('Enabled Headers and Params', () { - const expectedCode = r"""let config = { - url: 'https://api.foss42.com/humanize/social', - method: 'get', - params: { - "num": "8700000", - "digits": "3" - }, - headers: { - "User-Agent": "Test Agent" - } -}; - -axios(config) - .then(function (response) { - // handle success - console.log(response.status); - console.log(response.data); - }) - .catch(function (error) { - // handle error - console.log(error.response.status); - console.log(error); - }); -"""; - expect( - axiosCodeGen.getCode(requestModelEnabledRows, "https"), expectedCode); - }); - - test('Disabled Headders and Params', () { - const expectedCode = r"""let config = { - url: 'https://api.foss42.com/humanize/social', - method: 'get' -}; - -axios(config) - .then(function (response) { - // handle success - console.log(response.status); - console.log(response.data); - }) - .catch(function (error) { - // handle error - console.log(error.response.status); - console.log(error); - }); -"""; - expect(axiosCodeGen.getCode(requestModelDisabledRows, "https"), - expectedCode); - }); - }); } diff --git a/test/codegen/js_fetch_codegen_test.dart b/test/codegen/js_fetch_codegen_test.dart index 9153c789..43d053f9 100644 --- a/test/codegen/js_fetch_codegen_test.dart +++ b/test/codegen/js_fetch_codegen_test.dart @@ -220,6 +220,121 @@ fetch(url, options) """; expect(fetchCodeGen.getCode(requestModelGet8, "https"), expectedCode); }); + + test('GET 9', () { + const expectedCode = + r"""let url = 'https://api.foss42.com/humanize/social?num=8700000&add_space=true'; + +let options = { + method: 'GET' +}; + +let status; +fetch(url, options) + .then(res => { + status = res.status; + return res.json() + }) + .then(body => { + console.log(status); + console.log(body); + }) + .catch(err => { + console.log(status); + console.error('error:' + err); + }); +"""; + expect(fetchCodeGen.getCode(requestModelGet9, "https"), expectedCode); + }); + + test('GET 10', () { + const expectedCode = + r"""let url = 'https://api.foss42.com/humanize/social'; + +let options = { + method: 'GET', + headers: { + "User-Agent": "Test Agent" + } +}; + +let status; +fetch(url, options) + .then(res => { + status = res.status; + return res.json() + }) + .then(body => { + console.log(status); + console.log(body); + }) + .catch(err => { + console.log(status); + console.error('error:' + err); + }); +"""; + expect( + fetchCodeGen.getCode( + requestModelGet10, + "https", + ), + expectedCode); + }); + + test('GET 11', () { + const expectedCode = + r"""let url = 'https://api.foss42.com/humanize/social?num=8700000&digits=3'; + +let options = { + method: 'GET', + headers: { + "User-Agent": "Test Agent" + } +}; + +let status; +fetch(url, options) + .then(res => { + status = res.status; + return res.json() + }) + .then(body => { + console.log(status); + console.log(body); + }) + .catch(err => { + console.log(status); + console.error('error:' + err); + }); +"""; + expect(fetchCodeGen.getCode(requestModelGet11, "https"), expectedCode); + }); + + test('GET 12', () { + const expectedCode = + r"""let url = 'https://api.foss42.com/humanize/social'; + +let options = { + method: 'GET' +}; + +let status; +fetch(url, options) + .then(res => { + status = res.status; + return res.json() + }) + .then(body => { + console.log(status); + console.log(body); + }) + .catch(err => { + console.log(status); + console.error('error:' + err); + }); +"""; + expect(fetchCodeGen.getCode(requestModelGet12, "https"), expectedCode); + }); }); group('HEAD Request', () { @@ -487,124 +602,4 @@ fetch(url, options) expect(fetchCodeGen.getCode(requestModelDelete2, "https"), expectedCode); }); }); - - group('Request with enabled Rows', () { - test('Enabled Params', () { - const expectedCode = - r"""let url = 'https://api.foss42.com/humanize/social?num=8700000&add_space=true'; - -let options = { - method: 'GET' -}; - -let status; -fetch(url, options) - .then(res => { - status = res.status; - return res.json() - }) - .then(body => { - console.log(status); - console.log(body); - }) - .catch(err => { - console.log(status); - console.error('error:' + err); - }); -"""; - expect(fetchCodeGen.getCode(requestModelEnabledParams, "https"), - expectedCode); - }); - - test('Enabled Headers', () { - const expectedCode = - r"""let url = 'https://api.foss42.com/humanize/social'; - -let options = { - method: 'GET', - headers: { - "User-Agent": "Test Agent" - } -}; - -let status; -fetch(url, options) - .then(res => { - status = res.status; - return res.json() - }) - .then(body => { - console.log(status); - console.log(body); - }) - .catch(err => { - console.log(status); - console.error('error:' + err); - }); -"""; - expect( - fetchCodeGen.getCode( - requestModelEnabledHeaders, - "https", - ), - expectedCode); - }); - - test('Enabled Headers and Params', () { - const expectedCode = - r"""let url = 'https://api.foss42.com/humanize/social?num=8700000&digits=3'; - -let options = { - method: 'GET', - headers: { - "User-Agent": "Test Agent" - } -}; - -let status; -fetch(url, options) - .then(res => { - status = res.status; - return res.json() - }) - .then(body => { - console.log(status); - console.log(body); - }) - .catch(err => { - console.log(status); - console.error('error:' + err); - }); -"""; - expect( - fetchCodeGen.getCode(requestModelEnabledRows, "https"), expectedCode); - }); - - test('Disabled Headders and Params', () { - const expectedCode = - r"""let url = 'https://api.foss42.com/humanize/social'; - -let options = { - method: 'GET' -}; - -let status; -fetch(url, options) - .then(res => { - status = res.status; - return res.json() - }) - .then(body => { - console.log(status); - console.log(body); - }) - .catch(err => { - console.log(status); - console.error('error:' + err); - }); -"""; - expect(fetchCodeGen.getCode(requestModelDisabledRows, "https"), - expectedCode); - }); - }); } diff --git a/test/codegen/kotlin_okhttp_codegen_test.dart b/test/codegen/kotlin_okhttp_codegen_test.dart index d20177f9..4f3220fa 100644 --- a/test/codegen/kotlin_okhttp_codegen_test.dart +++ b/test/codegen/kotlin_okhttp_codegen_test.dart @@ -219,6 +219,116 @@ fun main() { expect( kotlinOkHttpCodeGen.getCode(requestModelGet8, "https"), expectedCode); }); + + test('GET 9', () { + const expectedCode = r"""import okhttp3.OkHttpClient +import okhttp3.Request +import okhttp3.HttpUrl.Companion.toHttpUrl + +fun main() { + val client = OkHttpClient() + + val url = "https://api.foss42.com/humanize/social".toHttpUrl().newBuilder() + .addQueryParameter("num", "8700000") + .addQueryParameter("add_space", "true") + .build() + + val request = Request.Builder() + .url(url) + .get() + .build() + + val response = client.newCall(request).execute() + + println(response.code) + println(response.body?.string()) +} +"""; + expect( + kotlinOkHttpCodeGen.getCode(requestModelGet9, "https"), expectedCode); + }); + + test('GET 10', () { + const expectedCode = r"""import okhttp3.OkHttpClient +import okhttp3.Request + +fun main() { + val client = OkHttpClient() + + val url = "https://api.foss42.com/humanize/social" + + val request = Request.Builder() + .url(url) + .addHeader("User-Agent", "Test Agent") + .get() + .build() + + val response = client.newCall(request).execute() + + println(response.code) + println(response.body?.string()) +} +"""; + expect( + kotlinOkHttpCodeGen.getCode( + requestModelGet10, + "https", + ), + expectedCode); + }); + + test('GET 11', () { + const expectedCode = r"""import okhttp3.OkHttpClient +import okhttp3.Request +import okhttp3.HttpUrl.Companion.toHttpUrl + +fun main() { + val client = OkHttpClient() + + val url = "https://api.foss42.com/humanize/social".toHttpUrl().newBuilder() + .addQueryParameter("num", "8700000") + .addQueryParameter("digits", "3") + .build() + + val request = Request.Builder() + .url(url) + .addHeader("User-Agent", "Test Agent") + .get() + .build() + + val response = client.newCall(request).execute() + + println(response.code) + println(response.body?.string()) +} +"""; + expect(kotlinOkHttpCodeGen.getCode(requestModelGet11, "https"), + expectedCode); + }); + + test('GET 12', () { + const expectedCode = r"""import okhttp3.OkHttpClient +import okhttp3.Request + +fun main() { + val client = OkHttpClient() + + val url = "https://api.foss42.com/humanize/social" + + val request = Request.Builder() + .url(url) + .get() + .build() + + val response = client.newCall(request).execute() + + println(response.code) + println(response.body?.string()) +} +"""; + expect(kotlinOkHttpCodeGen.getCode(requestModelGet12, "https"), + expectedCode); + }); }); group('HEAD Request', () { @@ -498,116 +608,4 @@ fun main() { expectedCode); }); }); - - group('Request with enabled Rows', () { - test('Enabled Params', () { - const expectedCode = r"""import okhttp3.OkHttpClient -import okhttp3.Request -import okhttp3.HttpUrl.Companion.toHttpUrl - -fun main() { - val client = OkHttpClient() - - val url = "https://api.foss42.com/humanize/social".toHttpUrl().newBuilder() - .addQueryParameter("num", "8700000") - .addQueryParameter("add_space", "true") - .build() - - val request = Request.Builder() - .url(url) - .get() - .build() - - val response = client.newCall(request).execute() - - println(response.code) - println(response.body?.string()) -} -"""; - expect(kotlinOkHttpCodeGen.getCode(requestModelEnabledParams, "https"), - expectedCode); - }); - - test('Enabled Headers', () { - const expectedCode = r"""import okhttp3.OkHttpClient -import okhttp3.Request - -fun main() { - val client = OkHttpClient() - - val url = "https://api.foss42.com/humanize/social" - - val request = Request.Builder() - .url(url) - .addHeader("User-Agent", "Test Agent") - .get() - .build() - - val response = client.newCall(request).execute() - - println(response.code) - println(response.body?.string()) -} -"""; - expect( - kotlinOkHttpCodeGen.getCode( - requestModelEnabledHeaders, - "https", - ), - expectedCode); - }); - - test('Enabled Headers and Params', () { - const expectedCode = r"""import okhttp3.OkHttpClient -import okhttp3.Request -import okhttp3.HttpUrl.Companion.toHttpUrl - -fun main() { - val client = OkHttpClient() - - val url = "https://api.foss42.com/humanize/social".toHttpUrl().newBuilder() - .addQueryParameter("num", "8700000") - .addQueryParameter("digits", "3") - .build() - - val request = Request.Builder() - .url(url) - .addHeader("User-Agent", "Test Agent") - .get() - .build() - - val response = client.newCall(request).execute() - - println(response.code) - println(response.body?.string()) -} -"""; - expect(kotlinOkHttpCodeGen.getCode(requestModelEnabledRows, "https"), - expectedCode); - }); - - test('Disabled Headders and Params', () { - const expectedCode = r"""import okhttp3.OkHttpClient -import okhttp3.Request - -fun main() { - val client = OkHttpClient() - - val url = "https://api.foss42.com/humanize/social" - - val request = Request.Builder() - .url(url) - .get() - .build() - - val response = client.newCall(request).execute() - - println(response.code) - println(response.body?.string()) -} -"""; - expect(kotlinOkHttpCodeGen.getCode(requestModelDisabledRows, "https"), - expectedCode); - }); - }); } diff --git a/test/codegen/nodejs_axios_codegen_test.dart b/test/codegen/nodejs_axios_codegen_test.dart index b39d571e..519f5ab5 100644 --- a/test/codegen/nodejs_axios_codegen_test.dart +++ b/test/codegen/nodejs_axios_codegen_test.dart @@ -217,6 +217,117 @@ axios(config) """; expect(axiosCodeGen.getCode(requestModelGet8, "https"), expectedCode); }); + + test('GET 9', () { + const expectedCode = r"""import axios from 'axios'; + +let config = { + url: 'https://api.foss42.com/humanize/social', + method: 'get', + params: { + "num": "8700000", + "add_space": "true" + } +}; + +axios(config) + .then(function (response) { + // handle success + console.log(response.status); + console.log(response.data); + }) + .catch(function (error) { + // handle error + console.log(error.response.status); + console.log(error); + }); +"""; + expect(axiosCodeGen.getCode(requestModelGet9, "https"), expectedCode); + }); + + test('GET 10', () { + const expectedCode = r"""import axios from 'axios'; + +let config = { + url: 'https://api.foss42.com/humanize/social', + method: 'get', + headers: { + "User-Agent": "Test Agent" + } +}; + +axios(config) + .then(function (response) { + // handle success + console.log(response.status); + console.log(response.data); + }) + .catch(function (error) { + // handle error + console.log(error.response.status); + console.log(error); + }); +"""; + expect( + axiosCodeGen.getCode( + requestModelGet10, + "https", + ), + expectedCode); + }); + + test('GET 11', () { + const expectedCode = r"""import axios from 'axios'; + +let config = { + url: 'https://api.foss42.com/humanize/social', + method: 'get', + params: { + "num": "8700000", + "digits": "3" + }, + headers: { + "User-Agent": "Test Agent" + } +}; + +axios(config) + .then(function (response) { + // handle success + console.log(response.status); + console.log(response.data); + }) + .catch(function (error) { + // handle error + console.log(error.response.status); + console.log(error); + }); +"""; + expect(axiosCodeGen.getCode(requestModelGet11, "https"), expectedCode); + }); + + test('GET 12', () { + const expectedCode = r"""import axios from 'axios'; + +let config = { + url: 'https://api.foss42.com/humanize/social', + method: 'get' +}; + +axios(config) + .then(function (response) { + // handle success + console.log(response.status); + console.log(response.data); + }) + .catch(function (error) { + // handle error + console.log(error.response.status); + console.log(error); + }); +"""; + expect(axiosCodeGen.getCode(requestModelGet12, "https"), expectedCode); + }); }); group('HEAD Request', () { @@ -460,120 +571,4 @@ axios(config) expect(axiosCodeGen.getCode(requestModelDelete2, "https"), expectedCode); }); }); - - group('Request with enabled Rows', () { - test('Enabled Params', () { - const expectedCode = r"""import axios from 'axios'; - -let config = { - url: 'https://api.foss42.com/humanize/social', - method: 'get', - params: { - "num": "8700000", - "add_space": "true" - } -}; - -axios(config) - .then(function (response) { - // handle success - console.log(response.status); - console.log(response.data); - }) - .catch(function (error) { - // handle error - console.log(error.response.status); - console.log(error); - }); -"""; - expect(axiosCodeGen.getCode(requestModelEnabledParams, "https"), - expectedCode); - }); - - test('Enabled Headers', () { - const expectedCode = r"""import axios from 'axios'; - -let config = { - url: 'https://api.foss42.com/humanize/social', - method: 'get', - headers: { - "User-Agent": "Test Agent" - } -}; - -axios(config) - .then(function (response) { - // handle success - console.log(response.status); - console.log(response.data); - }) - .catch(function (error) { - // handle error - console.log(error.response.status); - console.log(error); - }); -"""; - expect( - axiosCodeGen.getCode( - requestModelEnabledHeaders, - "https", - ), - expectedCode); - }); - - test('Enabled Headers and Params', () { - const expectedCode = r"""import axios from 'axios'; - -let config = { - url: 'https://api.foss42.com/humanize/social', - method: 'get', - params: { - "num": "8700000", - "digits": "3" - }, - headers: { - "User-Agent": "Test Agent" - } -}; - -axios(config) - .then(function (response) { - // handle success - console.log(response.status); - console.log(response.data); - }) - .catch(function (error) { - // handle error - console.log(error.response.status); - console.log(error); - }); -"""; - expect( - axiosCodeGen.getCode(requestModelEnabledRows, "https"), expectedCode); - }); - - test('Disabled Headders and Params', () { - const expectedCode = r"""import axios from 'axios'; - -let config = { - url: 'https://api.foss42.com/humanize/social', - method: 'get' -}; - -axios(config) - .then(function (response) { - // handle success - console.log(response.status); - console.log(response.data); - }) - .catch(function (error) { - // handle error - console.log(error.response.status); - console.log(error); - }); -"""; - expect(axiosCodeGen.getCode(requestModelDisabledRows, "https"), - expectedCode); - }); - }); } diff --git a/test/codegen/nodejs_fetch_codegen_test.dart b/test/codegen/nodejs_fetch_codegen_test.dart index d6bfbe29..c06ceee5 100644 --- a/test/codegen/nodejs_fetch_codegen_test.dart +++ b/test/codegen/nodejs_fetch_codegen_test.dart @@ -230,6 +230,125 @@ fetch(url, options) """; expect(fetchCodeGen.getCode(requestModelGet8, "https"), expectedCode); }); + + test('GET 9', () { + const expectedCode = r"""import fetch from 'node-fetch'; + +let url = 'https://api.foss42.com/humanize/social?num=8700000&add_space=true'; + +let options = { + method: 'GET' +}; + +let status; +fetch(url, options) + .then(res => { + status = res.status; + return res.json() + }) + .then(body => { + console.log(status); + console.log(body); + }) + .catch(err => { + console.log(status); + console.error('error:' + err); + }); +"""; + expect(fetchCodeGen.getCode(requestModelGet9, "https"), expectedCode); + }); + + test('GET 10', () { + const expectedCode = r"""import fetch from 'node-fetch'; + +let url = 'https://api.foss42.com/humanize/social'; + +let options = { + method: 'GET', + headers: { + "User-Agent": "Test Agent" + } +}; + +let status; +fetch(url, options) + .then(res => { + status = res.status; + return res.json() + }) + .then(body => { + console.log(status); + console.log(body); + }) + .catch(err => { + console.log(status); + console.error('error:' + err); + }); +"""; + expect( + fetchCodeGen.getCode( + requestModelGet10, + "https", + ), + expectedCode); + }); + + test('GET 11', () { + const expectedCode = r"""import fetch from 'node-fetch'; + +let url = 'https://api.foss42.com/humanize/social?num=8700000&digits=3'; + +let options = { + method: 'GET', + headers: { + "User-Agent": "Test Agent" + } +}; + +let status; +fetch(url, options) + .then(res => { + status = res.status; + return res.json() + }) + .then(body => { + console.log(status); + console.log(body); + }) + .catch(err => { + console.log(status); + console.error('error:' + err); + }); +"""; + expect(fetchCodeGen.getCode(requestModelGet11, "https"), expectedCode); + }); + + test('GET 12', () { + const expectedCode = r"""import fetch from 'node-fetch'; + +let url = 'https://api.foss42.com/humanize/social'; + +let options = { + method: 'GET' +}; + +let status; +fetch(url, options) + .then(res => { + status = res.status; + return res.json() + }) + .then(body => { + console.log(status); + console.log(body); + }) + .catch(err => { + console.log(status); + console.error('error:' + err); + }); +"""; + expect(fetchCodeGen.getCode(requestModelGet12, "https"), expectedCode); + }); }); group('HEAD Request', () { @@ -515,128 +634,4 @@ fetch(url, options) expect(fetchCodeGen.getCode(requestModelDelete2, "https"), expectedCode); }); }); - - group('Request with enabled Rows', () { - test('Enabled Params', () { - const expectedCode = r"""import fetch from 'node-fetch'; - -let url = 'https://api.foss42.com/humanize/social?num=8700000&add_space=true'; - -let options = { - method: 'GET' -}; - -let status; -fetch(url, options) - .then(res => { - status = res.status; - return res.json() - }) - .then(body => { - console.log(status); - console.log(body); - }) - .catch(err => { - console.log(status); - console.error('error:' + err); - }); -"""; - expect(fetchCodeGen.getCode(requestModelEnabledParams, "https"), - expectedCode); - }); - - test('Enabled Headers', () { - const expectedCode = r"""import fetch from 'node-fetch'; - -let url = 'https://api.foss42.com/humanize/social'; - -let options = { - method: 'GET', - headers: { - "User-Agent": "Test Agent" - } -}; - -let status; -fetch(url, options) - .then(res => { - status = res.status; - return res.json() - }) - .then(body => { - console.log(status); - console.log(body); - }) - .catch(err => { - console.log(status); - console.error('error:' + err); - }); -"""; - expect( - fetchCodeGen.getCode( - requestModelEnabledHeaders, - "https", - ), - expectedCode); - }); - - test('Enabled Headers and Params', () { - const expectedCode = r"""import fetch from 'node-fetch'; - -let url = 'https://api.foss42.com/humanize/social?num=8700000&digits=3'; - -let options = { - method: 'GET', - headers: { - "User-Agent": "Test Agent" - } -}; - -let status; -fetch(url, options) - .then(res => { - status = res.status; - return res.json() - }) - .then(body => { - console.log(status); - console.log(body); - }) - .catch(err => { - console.log(status); - console.error('error:' + err); - }); -"""; - expect( - fetchCodeGen.getCode(requestModelEnabledRows, "https"), expectedCode); - }); - - test('Disabled Headders and Params', () { - const expectedCode = r"""import fetch from 'node-fetch'; - -let url = 'https://api.foss42.com/humanize/social'; - -let options = { - method: 'GET' -}; - -let status; -fetch(url, options) - .then(res => { - status = res.status; - return res.json() - }) - .then(body => { - console.log(status); - console.log(body); - }) - .catch(err => { - console.log(status); - console.error('error:' + err); - }); -"""; - expect(fetchCodeGen.getCode(requestModelDisabledRows, "https"), - expectedCode); - }); - }); } diff --git a/test/codegen/python_http_client_codegen_test.dart b/test/codegen/python_http_client_codegen_test.dart index c97777c7..c617305c 100644 --- a/test/codegen/python_http_client_codegen_test.dart +++ b/test/codegen/python_http_client_codegen_test.dart @@ -174,6 +174,94 @@ print(data.decode("utf-8")) expect(pythonHttpClientCodeGen.getCode(requestModelGet8, "https"), expectedCode); }); + + test('GET 9', () { + const expectedCode = r"""import http.client +from urllib.parse import urlencode + +queryParams = { + "num": "8700000", + "add_space": "true" + } +queryParamsStr = '?' + urlencode(queryParams) + +conn = http.client.HTTPSConnection("api.foss42.com") +conn.request("GET", "/humanize/social" + queryParamsStr) + +res = conn.getresponse() +data = res.read() + +print(data.decode("utf-8")) +"""; + expect(pythonHttpClientCodeGen.getCode(requestModelGet9, "https"), + expectedCode); + }); + + test('GET 10', () { + const expectedCode = r"""import http.client + +headers = { + "User-Agent": "Test Agent" + } + +conn = http.client.HTTPSConnection("api.foss42.com") +conn.request("GET", "/humanize/social", + headers= headers) + +res = conn.getresponse() +data = res.read() + +print(data.decode("utf-8")) +"""; + expect( + pythonHttpClientCodeGen.getCode( + requestModelGet10, + "https", + ), + expectedCode); + }); + + test('GET 11', () { + const expectedCode = r"""import http.client +from urllib.parse import urlencode + +queryParams = { + "num": "8700000", + "digits": "3" + } +queryParamsStr = '?' + urlencode(queryParams) + +headers = { + "User-Agent": "Test Agent" + } + +conn = http.client.HTTPSConnection("api.foss42.com") +conn.request("GET", "/humanize/social" + queryParamsStr, + headers= headers) + +res = conn.getresponse() +data = res.read() + +print(data.decode("utf-8")) +"""; + expect(pythonHttpClientCodeGen.getCode(requestModelGet11, "https"), + expectedCode); + }); + + test('GET 12', () { + const expectedCode = r"""import http.client + +conn = http.client.HTTPSConnection("api.foss42.com") +conn.request("GET", "/humanize/social") + +res = conn.getresponse() +data = res.read() + +print(data.decode("utf-8")) +"""; + expect(pythonHttpClientCodeGen.getCode(requestModelGet12, "https"), + expectedCode); + }); }); group('HEAD Request', () { @@ -384,95 +472,4 @@ print(data.decode("utf-8")) expectedCode); }); }); - - group('Request with enabled Rows', () { - test('Enabled Params', () { - const expectedCode = r"""import http.client -from urllib.parse import urlencode - -queryParams = { - "num": "8700000", - "add_space": "true" - } -queryParamsStr = '?' + urlencode(queryParams) - -conn = http.client.HTTPSConnection("api.foss42.com") -conn.request("GET", "/humanize/social" + queryParamsStr) - -res = conn.getresponse() -data = res.read() - -print(data.decode("utf-8")) -"""; - expect( - pythonHttpClientCodeGen.getCode(requestModelEnabledParams, "https"), - expectedCode); - }); - - test('Enabled Headers', () { - const expectedCode = r"""import http.client - -headers = { - "User-Agent": "Test Agent" - } - -conn = http.client.HTTPSConnection("api.foss42.com") -conn.request("GET", "/humanize/social", - headers= headers) - -res = conn.getresponse() -data = res.read() - -print(data.decode("utf-8")) -"""; - expect( - pythonHttpClientCodeGen.getCode( - requestModelEnabledHeaders, - "https", - ), - expectedCode); - }); - - test('Enabled Headers and Params', () { - const expectedCode = r"""import http.client -from urllib.parse import urlencode - -queryParams = { - "num": "8700000", - "digits": "3" - } -queryParamsStr = '?' + urlencode(queryParams) - -headers = { - "User-Agent": "Test Agent" - } - -conn = http.client.HTTPSConnection("api.foss42.com") -conn.request("GET", "/humanize/social" + queryParamsStr, - headers= headers) - -res = conn.getresponse() -data = res.read() - -print(data.decode("utf-8")) -"""; - expect(pythonHttpClientCodeGen.getCode(requestModelEnabledRows, "https"), - expectedCode); - }); - - test('Disabled Headders and Params', () { - const expectedCode = r"""import http.client - -conn = http.client.HTTPSConnection("api.foss42.com") -conn.request("GET", "/humanize/social") - -res = conn.getresponse() -data = res.read() - -print(data.decode("utf-8")) -"""; - expect(pythonHttpClientCodeGen.getCode(requestModelDisabledRows, "https"), - expectedCode); - }); - }); } diff --git a/test/codegen/python_requests_codegen_test.dart b/test/codegen/python_requests_codegen_test.dart index aaeb6c45..1387accf 100644 --- a/test/codegen/python_requests_codegen_test.dart +++ b/test/codegen/python_requests_codegen_test.dart @@ -153,6 +153,84 @@ print('Response Body:', response.text) expect(pythonRequestsCodeGen.getCode(requestModelGet8, "https"), expectedCode); }); + + test('GET 9', () { + const expectedCode = r"""import requests + +url = 'https://api.foss42.com/humanize/social' + +params = { + "num": "8700000", + "add_space": "true" + } + +response = requests.get(url, params=params) + +print('Status Code:', response.status_code) +print('Response Body:', response.text) +"""; + expect(pythonRequestsCodeGen.getCode(requestModelGet9, "https"), + expectedCode); + }); + + test('GET 10', () { + const expectedCode = r"""import requests + +url = 'https://api.foss42.com/humanize/social' + +headers = { + "User-Agent": "Test Agent" + } + +response = requests.get(url, headers=headers) + +print('Status Code:', response.status_code) +print('Response Body:', response.text) +"""; + expect( + pythonRequestsCodeGen.getCode( + requestModelGet10, + "https", + ), + expectedCode); + }); + + test('GET 11', () { + const expectedCode = r"""import requests + +url = 'https://api.foss42.com/humanize/social' + +params = { + "num": "8700000", + "digits": "3" + } + +headers = { + "User-Agent": "Test Agent" + } + +response = requests.get(url, params=params, headers=headers) + +print('Status Code:', response.status_code) +print('Response Body:', response.text) +"""; + expect(pythonRequestsCodeGen.getCode(requestModelGet11, "https"), + expectedCode); + }); + + test('GET 12', () { + const expectedCode = r"""import requests + +url = 'https://api.foss42.com/humanize/social' + +response = requests.get(url) + +print('Status Code:', response.status_code) +print('Response Body:', response.text) +"""; + expect(pythonRequestsCodeGen.getCode(requestModelGet12, "https"), + expectedCode); + }); }); group('HEAD Request', () { @@ -325,83 +403,4 @@ print('Response Body:', response.text) expectedCode); }); }); - group('Request with enabled Rows', () { - test('Enabled Params', () { - const expectedCode = r"""import requests - -url = 'https://api.foss42.com/humanize/social' - -params = { - "num": "8700000", - "add_space": "true" - } - -response = requests.get(url, params=params) - -print('Status Code:', response.status_code) -print('Response Body:', response.text) -"""; - expect(pythonRequestsCodeGen.getCode(requestModelEnabledParams, "https"), - expectedCode); - }); - - test('Enabled Headers', () { - const expectedCode = r"""import requests - -url = 'https://api.foss42.com/humanize/social' - -headers = { - "User-Agent": "Test Agent" - } - -response = requests.get(url, headers=headers) - -print('Status Code:', response.status_code) -print('Response Body:', response.text) -"""; - expect( - pythonRequestsCodeGen.getCode( - requestModelEnabledHeaders, - "https", - ), - expectedCode); - }); - - test('Enabled Headers and Params', () { - const expectedCode = r"""import requests - -url = 'https://api.foss42.com/humanize/social' - -params = { - "num": "8700000", - "digits": "3" - } - -headers = { - "User-Agent": "Test Agent" - } - -response = requests.get(url, params=params, headers=headers) - -print('Status Code:', response.status_code) -print('Response Body:', response.text) -"""; - expect(pythonRequestsCodeGen.getCode(requestModelEnabledRows, "https"), - expectedCode); - }); - - test('Disabled Headders and Params', () { - const expectedCode = r"""import requests - -url = 'https://api.foss42.com/humanize/social' - -response = requests.get(url) - -print('Status Code:', response.status_code) -print('Response Body:', response.text) -"""; - expect(pythonRequestsCodeGen.getCode(requestModelDisabledRows, "https"), - expectedCode); - }); - }); } diff --git a/test/request_models.dart b/test/request_models.dart index b51acaa3..adf7e0e8 100644 --- a/test/request_models.dart +++ b/test/request_models.dart @@ -90,6 +90,94 @@ const requestModelGet8 = RequestModel( ], ); +/// GET request model with some params enabled +const requestModelGet9 = RequestModel( + id: 'enabledParams', + url: 'https://api.foss42.com/humanize/social', + method: HTTPVerb.get, + requestParams: [ + NameValueModel(name: 'num', value: '8700000'), + NameValueModel(name: 'digits', value: '3'), + NameValueModel(name: 'system', value: 'SS'), + NameValueModel(name: 'add_space', value: 'true'), + ], + isParamEnabledList: [ + true, + false, + false, + true, + ], +); + +/// GET Request model with some headers enabled +const requestModelGet10 = RequestModel( + id: 'enabledParams', + url: 'https://api.foss42.com/humanize/social', + method: HTTPVerb.get, + requestHeaders: [ + NameValueModel(name: 'User-Agent', value: 'Test Agent'), + NameValueModel(name: 'Content-Type', value: 'application/json'), + ], + isHeaderEnabledList: [ + true, + false, + ], +); + +/// GET Request model with some headers & URL parameters enabled +const requestModelGet11 = RequestModel( + id: 'enabledRows', + url: 'https://api.foss42.com/humanize/social', + method: HTTPVerb.get, + requestParams: [ + NameValueModel(name: 'num', value: '8700000'), + NameValueModel(name: 'digits', value: '3'), + NameValueModel(name: 'system', value: 'SS'), + NameValueModel(name: 'add_space', value: 'true'), + ], + requestHeaders: [ + NameValueModel(name: 'User-Agent', value: 'Test Agent'), + NameValueModel(name: 'Content-Type', value: 'application/json'), + ], + isParamEnabledList: [ + true, + true, + false, + false, + ], + isHeaderEnabledList: [ + true, + false, + ], +); + +/// Request model with all headers & URL parameters disabled +const requestModelGet12 = RequestModel( + id: 'disabledRows', + url: 'https://api.foss42.com/humanize/social', + method: HTTPVerb.get, + requestParams: [ + NameValueModel(name: 'num', value: '8700000'), + NameValueModel(name: 'digits', value: '3'), + NameValueModel(name: 'system', value: 'SS'), + NameValueModel(name: 'add_space', value: 'true'), + ], + requestHeaders: [ + NameValueModel(name: 'User-Agent', value: 'Test Agent'), + NameValueModel(name: 'Content-Type', value: 'application/json'), + ], + isParamEnabledList: [ + false, + false, + false, + false, + ], + isHeaderEnabledList: [ + false, + false, + ], +); + /// Basic HEAD request model const requestModelHead1 = RequestModel( id: 'head1', @@ -180,91 +268,3 @@ const requestModelDelete2 = RequestModel( }""", requestBodyContentType: ContentType.json, ); - -/// Request model with enabled params -const requestModelEnabledParams = RequestModel( - id: 'enabledParams', - url: 'https://api.foss42.com/humanize/social', - method: HTTPVerb.get, - requestParams: [ - NameValueModel(name: 'num', value: '8700000'), - NameValueModel(name: 'digits', value: '3'), - NameValueModel(name: 'system', value: 'SS'), - NameValueModel(name: 'add_space', value: 'true'), - ], - isParamEnabledList: [ - true, - false, - false, - true, - ], -); - -/// Request model with enabled headers -const requestModelEnabledHeaders = RequestModel( - id: 'enabledParams', - url: 'https://api.foss42.com/humanize/social', - method: HTTPVerb.get, - requestHeaders: [ - NameValueModel(name: 'User-Agent', value: 'Test Agent'), - NameValueModel(name: 'Content-Type', value: 'application/json'), - ], - isHeaderEnabledList: [ - true, - false, - ], -); - -/// Request model with enabled rows -const requestModelEnabledRows = RequestModel( - id: 'enabledRows', - url: 'https://api.foss42.com/humanize/social', - method: HTTPVerb.get, - requestParams: [ - NameValueModel(name: 'num', value: '8700000'), - NameValueModel(name: 'digits', value: '3'), - NameValueModel(name: 'system', value: 'SS'), - NameValueModel(name: 'add_space', value: 'true'), - ], - requestHeaders: [ - NameValueModel(name: 'User-Agent', value: 'Test Agent'), - NameValueModel(name: 'Content-Type', value: 'application/json'), - ], - isParamEnabledList: [ - true, - true, - false, - false, - ], - isHeaderEnabledList: [ - true, - false, - ], -); - -/// Request model with disabled rows -const requestModelDisabledRows = RequestModel( - id: 'disabledRows', - url: 'https://api.foss42.com/humanize/social', - method: HTTPVerb.get, - requestParams: [ - NameValueModel(name: 'num', value: '8700000'), - NameValueModel(name: 'digits', value: '3'), - NameValueModel(name: 'system', value: 'SS'), - NameValueModel(name: 'add_space', value: 'true'), - ], - requestHeaders: [ - NameValueModel(name: 'User-Agent', value: 'Test Agent'), - NameValueModel(name: 'Content-Type', value: 'application/json'), - ], - isParamEnabledList: [ - false, - false, - false, - false, - ], - isHeaderEnabledList: [ - false, - false, - ], -);