Skip to content

chore(cts): reuse method template #3385

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 11 commits into from
Jul 19, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,8 @@ public class ClientTestData {
class Step {

public String type;
public String object;
public String path;
public String method;
public Map<String, Object> parameters;
public Map<String, Object> requestOptions;
public Expected expected;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ public void run(Map<String, CodegenModel> models, Map<String, CodegenOperation>
CodegenOperation ope = null;
if (step.type.equals("createClient")) {
stepOut.put("stepTemplate", "tests/client/createClient.mustache");
stepOut.put("isCreateClient", true); // TODO: remove once dart and kotlin are converted
stepOut.put("isCreateClient", true); // TODO: remove once kotlin is converted

boolean hasCustomHosts = step.parameters != null && step.parameters.containsKey("customHosts");

Expand All @@ -88,30 +88,23 @@ public void run(Map<String, CodegenModel> models, Map<String, CodegenOperation>
}
stepOut.put("gzipEncoding", gzipEncoding);
} else if (step.type.equals("method")) {
ope = operations.get(step.path);
ope = operations.get(step.method);
if (ope == null) {
throw new CTSException("Cannot find operation for method: " + step.path, test.testName);
throw new CTSException("Cannot find operation for method: " + step.method, test.testName);
}
stepOut.put("stepTemplate", "tests/client/method.mustache");
stepOut.put("isMethod", true); // TODO: remove once kotlin is converted
stepOut.put("hasOperationParams", ope.hasParams);
stepOut.put("hasParams", ope.hasParams);

// set on testOut because we need to wrap everything for java.
testOut.put("isHelper", (boolean) ope.vendorExtensions.getOrDefault("x-helper", false));
testOut.put("isAsync", (boolean) ope.vendorExtensions.getOrDefault("x-asynchronous-helper", true)); // default to true because most api calls are asynchronous
}

stepOut.put("object", step.object);
stepOut.put("path", step.path);
stepOut.put("method", step.method);

if (step.requestOptions != null) {
Map<String, Object> requestOptions = new HashMap<>();
paramsType.enhanceParameters(step.requestOptions, requestOptions);
stepOut.put("requestOptions", requestOptions);
}

if (step.path != null && CUSTOM_METHODS.contains(step.path)) {
stepOut.put("isCustom", true);
if (step.method != null && CUSTOM_METHODS.contains(step.method)) {
stepOut.put("isCustomRequest", true);
}
paramsType.enhanceParameters(step.parameters, stepOut, ope);

Expand Down Expand Up @@ -152,9 +145,9 @@ public void run(Map<String, CodegenModel> models, Map<String, CodegenOperation>
if (step.expected.error != null) {
stepOut.put("isError", true);
stepOut.put("expectedError", step.expected.error);
if (language.equals("go") && step.path != null) {
if (language.equals("go") && step.method != null) {
// hack for go that use PascalCase, but just in the operationID
stepOut.put("expectedError", step.expected.error.replace(step.path, Helpers.toPascalCase(step.path)));
stepOut.put("expectedError", step.expected.error.replace(step.method, Helpers.toPascalCase(step.method)));
}
} else if (step.expected.match != null) {
Map<String, Object> matchMap = new HashMap<>();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -182,8 +182,8 @@ public void run(Map<String, CodegenModel> models, Map<String, CodegenOperation>
}

test.put("request", req.request);
test.put("hasParameters", req.parameters.size() != 0);
test.put("hasOperationParams", ope.hasParams);
test.put("isAsync", true);
test.put("hasParams", ope.hasParams);
test.put("isHelper", isHelper);

if (req.requestOptions != null) {
Expand Down
2 changes: 1 addition & 1 deletion scripts/cts/runCts.ts
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ async function runCtsOne(
break;
case 'swift':
await run(
`swift test -Xswiftc -suppress-warnings -v --parallel ${filter((f) => `--filter ${f}.*`)}`,
`swift test -Xswiftc -suppress-warnings --parallel ${filter((f) => `--filter ${f}.*`)}`,
{
cwd,
language,
Expand Down
2 changes: 1 addition & 1 deletion scripts/cts/testServer/timeout.ts
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ export function assertValidTimeouts(expectedCount: number): void {
expect(state.duration[0] * 2).to.be.closeTo(state.duration[1], 200);
break;
case 'Swift':
expect(state.duration[0]).to.be.closeTo(state.duration[1], 500);
expect(state.duration[0]).to.be.closeTo(state.duration[1], 800);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
expect(state.duration[0]).to.be.closeTo(state.duration[1], 800);
expect(state.duration[0]).to.be.closeTo(state.duration[1], 9000);

let's preshot

break;
default:
// the delay should be the same, because the `retryCount` is per host instead of global
Expand Down
10 changes: 1 addition & 9 deletions templates/csharp/snippets/method.mustache
Original file line number Diff line number Diff line change
Expand Up @@ -23,15 +23,7 @@ public class Snippet{{client}}
var client = new {{client}}(new {{clientPrefix}}Config("YOUR_APP_ID", "YOUR_API_KEY"{{#hasRegionalHost}},"YOUR_APP_ID_REGION"{{/hasRegionalHost}}));

// Call the API
var response = await client.{{#lambda.pascalcase}}{{method}}{{/lambda.pascalcase}}Async{{#isGeneric}}<Object>{{/isGeneric}}({{#parametersWithDataType}}{{> tests/generateParams}}{{^-last}},{{/-last}}{{/parametersWithDataType}}{{#hasRequestOptions}}, new RequestOptionBuilder()
{{#requestOptions.queryParameters.parametersWithDataType}}
.AddExtraQueryParameters("{{{key}}}", {{> tests/requests/requestOptionsParams}} )
{{/requestOptions.queryParameters.parametersWithDataType}}
{{#requestOptions.headers.parametersWithDataType}}
.AddExtraHeader("{{{key}}}", "{{{value}}}")
{{/requestOptions.headers.parametersWithDataType}}
.Build()
{{/hasRequestOptions}});
var response = {{> tests/method}};
// SEPARATOR<
}

Expand Down
9 changes: 1 addition & 8 deletions templates/csharp/tests/client/method.mustache
Original file line number Diff line number Diff line change
@@ -1,9 +1,2 @@
{{^useEchoRequester}}var res = {{/useEchoRequester}}{{#isAsync}}await {{/isAsync}}client.{{#lambda.pascalcase}}{{#path}}.{{.}}{{/path}}{{/lambda.pascalcase}}{{#isAsync}}Async{{/isAsync}}{{#isGeneric}}<Object>{{/isGeneric}}({{#parametersWithDataType}}{{> tests/generateParams}}{{^-last}},{{/-last}}{{/parametersWithDataType}}{{#hasRequestOptions}}, new RequestOptions(){
{{#requestOptions.queryParameters}}
QueryParameters = new Dictionary<string, object>(){ {{#parametersWithDataType}} {"{{{key}}}", {{> tests/requests/requestOptionsParams}} } {{^-last}},{{/-last}}{{/parametersWithDataType}} },
{{/requestOptions.queryParameters}}
{{#requestOptions.headers}}
Headers = new Dictionary<string, string>(){ {{#parametersWithDataType}} {"{{{key}}}", "{{{value}}}" } {{^-last}},{{/-last}}{{/parametersWithDataType}} },
{{/requestOptions.headers}}
}{{/hasRequestOptions}});
{{^useEchoRequester}}var res = {{/useEchoRequester}}{{> tests/method}};
{{#useEchoRequester}}EchoResponse result = _echo.LastResponse;{{/useEchoRequester}}
13 changes: 3 additions & 10 deletions templates/csharp/tests/e2e/e2e.mustache
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ namespace Algolia.Search.e2e;

public class {{client}}RequestTestsE2E
{
private readonly {{client}} _client;
private readonly {{client}} client;

public {{client}}RequestTestsE2E()
{
Expand All @@ -32,7 +32,7 @@ private readonly {{client}} _client;
throw new Exception("please provide an `{{e2eApiKey}}` env var for e2e tests");
}

_client = new {{client}}(new {{clientPrefix}}Config(appId, apiKey{{#hasRegionalHost}},"{{defaultRegion}}"{{/hasRegionalHost}}));
client = new {{client}}(new {{clientPrefix}}Config(appId, apiKey{{#hasRegionalHost}},"{{defaultRegion}}"{{/hasRegionalHost}}));
}

[Fact]
Expand All @@ -47,14 +47,7 @@ private readonly {{client}} _client;
public async Task {{#lambda.pascalcase}}{{method}}Test{{testIndex}}{{/lambda.pascalcase}}()
{
try {
var resp = await _client.{{#lambda.pascalcase}}{{method}}{{/lambda.pascalcase}}Async{{#isGeneric}}<Hit>{{/isGeneric}}({{#parametersWithDataType}}{{> tests/generateParams}}{{^-last}},{{/-last}}{{/parametersWithDataType}}{{#hasRequestOptions}}, new RequestOptions(){
{{#requestOptions.queryParameters}}
QueryParameters = new Dictionary<string, object>(){ {{#parametersWithDataType}} {"{{{key}}}", {{> tests/requests/requestOptionsParams}} } {{^-last}},{{/-last}}{{/parametersWithDataType}} },
{{/requestOptions.queryParameters}}
{{#requestOptions.headers}}
Headers = new Dictionary<string, string>(){ {{#parametersWithDataType}} {"{{{key}}}", "{{{value}}}" } {{^-last}},{{/-last}}{{/parametersWithDataType}} },
{{/requestOptions.headers}}
}{{/hasRequestOptions}});
var resp = {{> tests/method}};
{{#response}}
{{#statusCode}}
// Check status code {{statusCode}}
Expand Down
9 changes: 9 additions & 0 deletions templates/csharp/tests/method.mustache
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{{#isAsync}}await {{/isAsync}}client.{{#lambda.pascalcase}}{{method}}{{/lambda.pascalcase}}{{#isAsync}}Async{{/isAsync}}{{#isGeneric}}<Hit>{{/isGeneric}}({{#parametersWithDataType}}{{> tests/generateParams}}{{^-last}},{{/-last}}{{/parametersWithDataType}}{{#hasRequestOptions}}, new RequestOptionBuilder()
{{#requestOptions.queryParameters.parametersWithDataType}}
.AddExtraQueryParameters("{{{key}}}", {{> tests/requests/requestOptionsParams}} )
{{/requestOptions.queryParameters.parametersWithDataType}}
{{#requestOptions.headers.parametersWithDataType}}
.AddExtraHeader("{{{key}}}", "{{{value}}}")
{{/requestOptions.headers.parametersWithDataType}}
.Build()
{{/hasRequestOptions}})
14 changes: 3 additions & 11 deletions templates/csharp/tests/requests/requests.mustache
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,13 @@ namespace Algolia.Search.requests;

public class {{client}}RequestTests
{
private readonly {{client}} _client;
private readonly {{client}} client;
private readonly EchoHttpRequester _echo;

public {{client}}RequestTests()
{
_echo = new EchoHttpRequester();
_client = new {{client}}(new {{clientPrefix}}Config("appId", "apiKey"{{#hasRegionalHost}},"{{defaultRegion}}"{{/hasRegionalHost}}), _echo);
client = new {{client}}(new {{clientPrefix}}Config("appId", "apiKey"{{#hasRegionalHost}},"{{defaultRegion}}"{{/hasRegionalHost}}), _echo);
}

[Fact]
Expand All @@ -34,15 +34,7 @@ private readonly {{client}} _client;
[Fact(DisplayName = "{{{testName}}}")]
public async Task {{#lambda.pascalcase}}{{method}}Test{{testIndex}}{{/lambda.pascalcase}}()
{
await _client.{{#lambda.pascalcase}}{{method}}{{/lambda.pascalcase}}Async{{#isGeneric}}<Hit>{{/isGeneric}}({{#parametersWithDataType}}{{> tests/generateParams}}{{^-last}},{{/-last}}{{/parametersWithDataType}}{{#hasRequestOptions}}, new RequestOptionBuilder()
{{#requestOptions.queryParameters.parametersWithDataType}}
.AddExtraQueryParameters("{{{key}}}", {{> tests/requests/requestOptionsParams}} )
{{/requestOptions.queryParameters.parametersWithDataType}}
{{#requestOptions.headers.parametersWithDataType}}
.AddExtraHeader("{{{key}}}", "{{{value}}}")
{{/requestOptions.headers.parametersWithDataType}}
.Build()
{{/hasRequestOptions}});
{{> tests/method}};

var req = _echo.LastResponse;
{{#request}}
Expand Down
2 changes: 1 addition & 1 deletion templates/dart/tests/client/method.mustache
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
try {
final res = await client.{{path}}(
final res = await client.{{method}}(
{{#parametersWithDataType}}
{{> tests/request_param}}
{{/parametersWithDataType}}
Expand Down
6 changes: 1 addition & 5 deletions templates/go/snippets/method.mustache
Original file line number Diff line number Diff line change
Expand Up @@ -24,11 +24,7 @@ func SnippetFor{{#lambda.titlecase}}{{method}}{{/lambda.titlecase}}Of{{#lambda.p
}

// Call the API
{{#hasResponsePayload}}response, err :={{/hasResponsePayload}}{{^hasResponsePayload}}err ={{/hasResponsePayload}} client.{{#lambda.titlecase}}{{method}}{{/lambda.titlecase}}({{#hasOperationParams}}client.NewApi{{#lambda.titlecase}}{{method}}{{/lambda.titlecase}}Request(
{{#parametersWithDataType}}{{#required}}{{> tests/generateParams}},{{/required}}{{/parametersWithDataType}}
){{#parametersWithDataType}}{{^required}}.With{{#lambda.pascalcase}}{{{key}}}{{/lambda.pascalcase}}({{> tests/generateParams}}){{/required}}{{/parametersWithDataType}}{{/hasOperationParams}}{{#requestOptions}}{{#hasOperationParams}},{{/hasOperationParams}}
{{#queryParameters.parametersWithDataType}}{{clientPrefix}}.WithQueryParam("{{{key}}}", {{> tests/generateInnerParams}}),{{/queryParameters.parametersWithDataType}}{{#headers.parametersWithDataType}}{{clientPrefix}}.WithHeaderParam("{{{key}}}", {{> tests/generateInnerParams}}),{{/headers.parametersWithDataType}}
{{/requestOptions}})
{{#hasResponsePayload}}response, err :={{/hasResponsePayload}}{{^hasResponsePayload}}err ={{/hasResponsePayload}} {{> tests/method}}
if err != nil {
// handle the eventual error
panic(err)
Expand Down
6 changes: 1 addition & 5 deletions templates/go/tests/client/method.mustache
Original file line number Diff line number Diff line change
@@ -1,5 +1 @@
{{^useEchoRequester}}res, err := {{/useEchoRequester}}{{#useEchoRequester}}_, err = {{/useEchoRequester}}client.{{#lambda.titlecase}}{{path}}{{/lambda.titlecase}}({{^isHelper}}client.NewApi{{#lambda.titlecase}}{{path}}{{/lambda.titlecase}}Request({{/isHelper}}
{{#parametersWithDataType}}{{#required}}{{> tests/generateParams}},{{/required}}{{/parametersWithDataType}}
{{^isHelper}}){{#parametersWithDataType}}{{^required}}.With{{#lambda.pascalcase}}{{{key}}}{{/lambda.pascalcase}}({{> tests/generateParams}}){{/required}}{{/parametersWithDataType}}{{/isHelper}}{{#isHelper}}{{#parametersWithDataType}}{{^required}}{{> tests/generateParams}},{{/required}}{{/parametersWithDataType}}{{/isHelper}}{{#requestOptions}}{{#hasOperationParams}},{{/hasOperationParams}}
{{#queryParameters.parametersWithDataType}}{{clientPrefix}}.WithQueryParam("{{{key}}}", {{> tests/generateInnerParams}}),{{/queryParameters.parametersWithDataType}}{{#headers.parametersWithDataType}}{{clientPrefix}}.WithHeaderParam("{{{key}}}", {{> tests/generateInnerParams}}),{{/headers.parametersWithDataType}}
{{/requestOptions}})
{{^useEchoRequester}}res, err := {{/useEchoRequester}}{{#useEchoRequester}}_, err = {{/useEchoRequester}}{{> tests/method}}
6 changes: 1 addition & 5 deletions templates/go/tests/e2e/e2e.mustache
Original file line number Diff line number Diff line change
Expand Up @@ -33,11 +33,7 @@ func Test{{#lambda.titlecase}}{{clientPrefix}}{{/lambda.titlecase}}E2E_{{#lambda
{{#tests}}
t.Run("{{{testName}}}", func(t *testing.T) {
client := createE2E{{#lambda.titlecase}}{{clientPrefix}}{{/lambda.titlecase}}Client(t)
res, err := client.{{#lambda.titlecase}}{{method}}{{/lambda.titlecase}}({{#hasOperationParams}}client.NewApi{{#lambda.titlecase}}{{method}}{{/lambda.titlecase}}Request(
{{#parametersWithDataType}}{{#required}}{{> tests/generateParams}},{{/required}}{{/parametersWithDataType}}
){{#parametersWithDataType}}{{^required}}.With{{#lambda.pascalcase}}{{{key}}}{{/lambda.pascalcase}}({{> tests/generateParams}}){{/required}}{{/parametersWithDataType}}{{/hasOperationParams}}{{#requestOptions}}{{#hasOperationParams}},{{/hasOperationParams}}
{{#queryParameters.parametersWithDataType}}{{clientPrefix}}.WithQueryParam("{{{key}}}", {{> tests/generateInnerParams}}),{{/queryParameters.parametersWithDataType}}{{#headers.parametersWithDataType}}{{clientPrefix}}.WithHeaderParam("{{{key}}}", {{> tests/generateInnerParams}}),{{/headers.parametersWithDataType}}
{{/requestOptions}})
res, err := {{> tests/method}}
require.NoError(t, err)
_ = res

Expand Down
5 changes: 5 additions & 0 deletions templates/go/tests/method.mustache
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
client.{{#lambda.titlecase}}{{method}}{{/lambda.titlecase}}({{#hasParams}}{{^isHelper}}client.NewApi{{#lambda.titlecase}}{{method}}{{/lambda.titlecase}}Request({{/isHelper}}
{{#parametersWithDataType}}{{#required}}{{> tests/generateParams}},{{/required}}{{/parametersWithDataType}}
{{^isHelper}}){{#parametersWithDataType}}{{^required}}.With{{#lambda.pascalcase}}{{{key}}}{{/lambda.pascalcase}}({{> tests/generateParams}}){{/required}}{{/parametersWithDataType}}{{/isHelper}}{{#isHelper}}{{#parametersWithDataType}}{{^required}}{{> tests/generateParams}},{{/required}}{{/parametersWithDataType}}{{/isHelper}}{{/hasParams}}{{#requestOptions}}{{#hasParams}},{{/hasParams}}
{{#queryParameters.parametersWithDataType}}{{clientPrefix}}.WithQueryParam("{{{key}}}", {{> tests/generateInnerParams}}),{{/queryParameters.parametersWithDataType}}{{#headers.parametersWithDataType}}{{clientPrefix}}.WithHeaderParam("{{{key}}}", {{> tests/generateInnerParams}}),{{/headers.parametersWithDataType}}
{{/requestOptions}})
6 changes: 1 addition & 5 deletions templates/go/tests/requests/requests.mustache
Original file line number Diff line number Diff line change
Expand Up @@ -40,11 +40,7 @@ func Test{{#lambda.titlecase}}{{clientPrefix}}{{/lambda.titlecase}}_{{#lambda.ti

{{#tests}}
t.Run("{{{testName}}}", func(t *testing.T) {
{{#hasResponsePayload}}_, {{/hasResponsePayload}}err := client.{{#lambda.titlecase}}{{method}}{{/lambda.titlecase}}({{#hasOperationParams}}client.NewApi{{#lambda.titlecase}}{{method}}{{/lambda.titlecase}}Request(
{{#parametersWithDataType}}{{#required}}{{> tests/generateParams}},{{/required}}{{/parametersWithDataType}}
){{#parametersWithDataType}}{{^required}}.With{{#lambda.pascalcase}}{{{key}}}{{/lambda.pascalcase}}({{> tests/generateParams}}){{/required}}{{/parametersWithDataType}}{{/hasOperationParams}}{{#requestOptions}}{{#hasOperationParams}},{{/hasOperationParams}}
{{#queryParameters.parametersWithDataType}}{{clientPrefix}}.WithQueryParam("{{{key}}}", {{> tests/generateInnerParams}}),{{/queryParameters.parametersWithDataType}}{{#headers.parametersWithDataType}}{{clientPrefix}}.WithHeaderParam("{{{key}}}", {{> tests/generateInnerParams}}),{{/headers.parametersWithDataType}}
{{/requestOptions}})
{{#hasResponsePayload}}_, {{/hasResponsePayload}}err := {{> tests/method}}
require.NoError(t, err)

{{#request}}
Expand Down
9 changes: 1 addition & 8 deletions templates/java/snippets/method.mustache
Original file line number Diff line number Diff line change
Expand Up @@ -18,14 +18,7 @@ class Snippet{{client}} {
{{client}} client = new {{client}}("YOUR_APP_ID", "YOUR_API_KEY"{{#hasRegionalHost}}, "YOUR_APP_ID_REGION"{{/hasRegionalHost}});

// Call the API
client.{{method}}({{#parametersWithDataType}}{{> tests/generateParams}}{{^-last}},{{/-last}}{{/parametersWithDataType}}{{#isGeneric}}, Hit.class{{/isGeneric}}{{#hasRequestOptions}}, new RequestOptions()
{{#requestOptions.queryParameters.parametersWithDataType}}
.addExtraQueryParameters("{{{key}}}", {{> tests/generateInnerParams}})
{{/requestOptions.queryParameters.parametersWithDataType}}
{{#requestOptions.headers.parametersWithDataType}}
.addExtraHeader("{{{key}}}", "{{{value}}}")
{{/requestOptions.headers.parametersWithDataType}}
{{/hasRequestOptions}});
{{> tests/method}};
// SEPARATOR<
}

Expand Down
2 changes: 1 addition & 1 deletion templates/java/tests/client/method.mustache
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
{{^useEchoRequester}}var res = {{/useEchoRequester}}client{{#path}}.{{.}}{{/path}}({{#parametersWithDataType}}{{> tests/generateParams}}{{^-last}},{{/-last}}{{/parametersWithDataType}});
{{^useEchoRequester}}var res = {{/useEchoRequester}}{{> tests/method}};
{{#useEchoRequester}}EchoResponse result = echo.getLastResponse();{{/useEchoRequester}}
9 changes: 1 addition & 8 deletions templates/java/tests/e2e/e2e.mustache
Original file line number Diff line number Diff line change
Expand Up @@ -41,14 +41,7 @@ class {{client}}RequestsTestsE2E {
@Test
@DisplayName("{{{testName}}}")
void {{method}}Test{{testIndex}}() {
var res = client.{{method}}({{#parametersWithDataType}}{{> tests/generateParams}}{{^-last}},{{/-last}}{{/parametersWithDataType}}{{#isGeneric}}, Hit.class{{/isGeneric}}{{#hasRequestOptions}}, new RequestOptions()
{{#requestOptions.queryParameters.parametersWithDataType}}
.addExtraQueryParameters("{{{key}}}", {{> tests/generateInnerParams}})
{{/requestOptions.queryParameters.parametersWithDataType}}
{{#requestOptions.headers.parametersWithDataType}}
.addExtraHeader("{{{key}}}", "{{{value}}}")
{{/requestOptions.headers.parametersWithDataType}}
{{/hasRequestOptions}});
var res = {{> tests/method}};
{{#response}}
{{#body}}
assertDoesNotThrow(() -> JSONAssert.assertEquals("{{#lambda.escapeQuotes}}{{{body}}}{{/lambda.escapeQuotes}}", json.writeValueAsString(res), JSONCompareMode.LENIENT));
Expand Down
Loading
Loading