From fb3d6268126a3f7a2248ba617b462c058bdb02e1 Mon Sep 17 00:00:00 2001 From: Dmitrii Gridnev Date: Tue, 25 Aug 2026 14:16:08 +0300 Subject: [PATCH] chore: update API clients to latest specification --- changelog.md | 4 +++ pom.xml | 2 +- qase-api-client/docs/ResultsApi.md | 2 +- qase-api-client/pom.xml | 2 +- .../io/qase/client/v1/api/ResultsApi.java | 6 ++-- qase-api-v2-client/docs/ResultExecution.md | 1 + qase-api-v2-client/docs/ResultsApi.md | 1 + qase-api-v2-client/pom.xml | 2 +- .../io/qase/client/v2/api/ResultsApi.java | 4 +++ .../client/v2/models/ResultExecution.java | 33 +++++++++++++++++-- qase-cucumber-v3-reporter/pom.xml | 2 +- qase-cucumber-v4-reporter/pom.xml | 2 +- qase-cucumber-v5-reporter/pom.xml | 2 +- qase-cucumber-v6-reporter/pom.xml | 2 +- qase-cucumber-v7-reporter/pom.xml | 2 +- qase-java-commons/pom.xml | 2 +- qase-junit4-reporter/pom.xml | 2 +- qase-junit5-reporter/pom.xml | 2 +- qase-testng-reporter/pom.xml | 2 +- 19 files changed, 57 insertions(+), 18 deletions(-) diff --git a/changelog.md b/changelog.md index ebd0a5cd..08e1e332 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,7 @@ +# qase-java 4.1.61 + +- Updated API clients to the latest specification + # qase-java 4.1.60 ## Bug fixes diff --git a/pom.xml b/pom.xml index 79621dce..91223ef5 100644 --- a/pom.xml +++ b/pom.xml @@ -7,7 +7,7 @@ io.qase qase-java pom - 4.1.60 + 4.1.61 qase-java-commons qase-api-client diff --git a/qase-api-client/docs/ResultsApi.md b/qase-api-client/docs/ResultsApi.md index d25e5295..50386e28 100644 --- a/qase-api-client/docs/ResultsApi.md +++ b/qase-api-client/docs/ResultsApi.md @@ -97,7 +97,7 @@ public class Example { Bulk create test run result -This method allows to create a lot of test run result at once. If you try to send more than 2,000 results in a single bulk request, you will receive an error with code 413 - Payload Too Large. If there is no free space left in your team account, when attempting to upload an attachment, e.g., through reporters, you will receive an error with code 507 - Insufficient Storage. +This method allows to create a lot of test run result at once. If you try to send more than 200 results in a single bulk request, you will receive an error with code 413 - Payload Too Large. If there is no free space left in your team account, when attempting to upload an attachment, e.g., through reporters, you will receive an error with code 507 - Insufficient Storage. ### Example ```java diff --git a/qase-api-client/pom.xml b/qase-api-client/pom.xml index e25a19e0..b02bd962 100644 --- a/qase-api-client/pom.xml +++ b/qase-api-client/pom.xml @@ -5,7 +5,7 @@ qase-java io.qase - 4.1.60 + 4.1.61 4.0.0 diff --git a/qase-api-client/src/main/java/io/qase/client/v1/api/ResultsApi.java b/qase-api-client/src/main/java/io/qase/client/v1/api/ResultsApi.java index c3785b1b..379f1909 100644 --- a/qase-api-client/src/main/java/io/qase/client/v1/api/ResultsApi.java +++ b/qase-api-client/src/main/java/io/qase/client/v1/api/ResultsApi.java @@ -342,7 +342,7 @@ private okhttp3.Call createResultBulkValidateBeforeCall(@javax.annotation.Nonnul /** * Bulk create test run result - * This method allows to create a lot of test run result at once. If you try to send more than 2,000 results in a single bulk request, you will receive an error with code 413 - Payload Too Large. If there is no free space left in your team account, when attempting to upload an attachment, e.g., through reporters, you will receive an error with code 507 - Insufficient Storage. + * This method allows to create a lot of test run result at once. If you try to send more than 200 results in a single bulk request, you will receive an error with code 413 - Payload Too Large. If there is no free space left in your team account, when attempting to upload an attachment, e.g., through reporters, you will receive an error with code 507 - Insufficient Storage. * @param code Code of project, where to search entities. (required) * @param id Identifier. (required) * @param resultCreateBulk (required) @@ -369,7 +369,7 @@ public BaseResponse createResultBulk(@javax.annotation.Nonnull String code, @jav /** * Bulk create test run result - * This method allows to create a lot of test run result at once. If you try to send more than 2,000 results in a single bulk request, you will receive an error with code 413 - Payload Too Large. If there is no free space left in your team account, when attempting to upload an attachment, e.g., through reporters, you will receive an error with code 507 - Insufficient Storage. + * This method allows to create a lot of test run result at once. If you try to send more than 200 results in a single bulk request, you will receive an error with code 413 - Payload Too Large. If there is no free space left in your team account, when attempting to upload an attachment, e.g., through reporters, you will receive an error with code 507 - Insufficient Storage. * @param code Code of project, where to search entities. (required) * @param id Identifier. (required) * @param resultCreateBulk (required) @@ -397,7 +397,7 @@ public ApiResponse createResultBulkWithHttpInfo(@javax.annotation. /** * Bulk create test run result (asynchronously) - * This method allows to create a lot of test run result at once. If you try to send more than 2,000 results in a single bulk request, you will receive an error with code 413 - Payload Too Large. If there is no free space left in your team account, when attempting to upload an attachment, e.g., through reporters, you will receive an error with code 507 - Insufficient Storage. + * This method allows to create a lot of test run result at once. If you try to send more than 200 results in a single bulk request, you will receive an error with code 413 - Payload Too Large. If there is no free space left in your team account, when attempting to upload an attachment, e.g., through reporters, you will receive an error with code 507 - Insufficient Storage. * @param code Code of project, where to search entities. (required) * @param id Identifier. (required) * @param resultCreateBulk (required) diff --git a/qase-api-v2-client/docs/ResultExecution.md b/qase-api-v2-client/docs/ResultExecution.md index d8e236b3..4cab311b 100644 --- a/qase-api-v2-client/docs/ResultExecution.md +++ b/qase-api-v2-client/docs/ResultExecution.md @@ -12,6 +12,7 @@ |**status** | **String** | Can have the following values passed, failed, blocked, skipped, invalid + custom statuses | | |**duration** | **Long** | Duration of the test execution in milliseconds. | [optional] | |**stacktrace** | **String** | | [optional] | +|**errorContext** | **String** | Free-form failure context captured by the reporter. For Playwright this is the content of error-context.md (test info, error details, page snapshot), so it may include rendered page content. Stored verbatim so it can be copied as raw text. Values longer than 262144 characters are silently truncated by Qase and the request still succeeds. Write-only — not returned by the result read endpoints. | [optional] | |**thread** | **String** | | [optional] | diff --git a/qase-api-v2-client/docs/ResultsApi.md b/qase-api-v2-client/docs/ResultsApi.md index 8feaa19e..5d58cc02 100644 --- a/qase-api-v2-client/docs/ResultsApi.md +++ b/qase-api-v2-client/docs/ResultsApi.md @@ -162,5 +162,6 @@ public class Example { | **401** | Unauthorized | - | | **403** | Forbidden | - | | **404** | Not Found | - | +| **413** | Payload Too Large. Returned when the request contains more than 200 results, or when the combined length of `execution.error_context` across the batch exceeds 4194304 characters. In both cases the whole batch is rejected — no results are created. | - | | **422** | Unprocessable Entity | - | diff --git a/qase-api-v2-client/pom.xml b/qase-api-v2-client/pom.xml index 51a2009b..9c514893 100644 --- a/qase-api-v2-client/pom.xml +++ b/qase-api-v2-client/pom.xml @@ -6,7 +6,7 @@ io.qase qase-java - 4.1.60 + 4.1.61 qase-api-v2-client diff --git a/qase-api-v2-client/src/main/java/io/qase/client/v2/api/ResultsApi.java b/qase-api-v2-client/src/main/java/io/qase/client/v2/api/ResultsApi.java index 1d5787a6..25daa6b9 100644 --- a/qase-api-v2-client/src/main/java/io/qase/client/v2/api/ResultsApi.java +++ b/qase-api-v2-client/src/main/java/io/qase/client/v2/api/ResultsApi.java @@ -259,6 +259,7 @@ public okhttp3.Call createResultV2Async(@javax.annotation.Nonnull String project 401 Unauthorized - 403 Forbidden - 404 Not Found - + 413 Payload Too Large. Returned when the request contains more than 200 results, or when the combined length of `execution.error_context` across the batch exceeds 4194304 characters. In both cases the whole batch is rejected — no results are created. - 422 Unprocessable Entity - */ @@ -347,6 +348,7 @@ private okhttp3.Call createResultsV2ValidateBeforeCall(@javax.annotation.Nonnull 401 Unauthorized - 403 Forbidden - 404 Not Found - + 413 Payload Too Large. Returned when the request contains more than 200 results, or when the combined length of `execution.error_context` across the batch exceeds 4194304 characters. In both cases the whole batch is rejected — no results are created. - 422 Unprocessable Entity - */ @@ -372,6 +374,7 @@ public ResultCreateBulkResponse createResultsV2(@javax.annotation.Nonnull String 401 Unauthorized - 403 Forbidden - 404 Not Found - + 413 Payload Too Large. Returned when the request contains more than 200 results, or when the combined length of `execution.error_context` across the batch exceeds 4194304 characters. In both cases the whole batch is rejected — no results are created. - 422 Unprocessable Entity - */ @@ -399,6 +402,7 @@ public ApiResponse createResultsV2WithHttpInfo(@javax. 401 Unauthorized - 403 Forbidden - 404 Not Found - + 413 Payload Too Large. Returned when the request contains more than 200 results, or when the combined length of `execution.error_context` across the batch exceeds 4194304 characters. In both cases the whole batch is rejected — no results are created. - 422 Unprocessable Entity - */ diff --git a/qase-api-v2-client/src/main/java/io/qase/client/v2/models/ResultExecution.java b/qase-api-v2-client/src/main/java/io/qase/client/v2/models/ResultExecution.java index 6d6a11c8..2e8b8a54 100644 --- a/qase-api-v2-client/src/main/java/io/qase/client/v2/models/ResultExecution.java +++ b/qase-api-v2-client/src/main/java/io/qase/client/v2/models/ResultExecution.java @@ -76,6 +76,11 @@ public class ResultExecution { @javax.annotation.Nullable private String stacktrace; + public static final String SERIALIZED_NAME_ERROR_CONTEXT = "error_context"; + @SerializedName(SERIALIZED_NAME_ERROR_CONTEXT) + @javax.annotation.Nullable + private String errorContext; + public static final String SERIALIZED_NAME_THREAD = "thread"; @SerializedName(SERIALIZED_NAME_THREAD) @javax.annotation.Nullable @@ -179,6 +184,25 @@ public void setStacktrace(@javax.annotation.Nullable String stacktrace) { } + public ResultExecution errorContext(@javax.annotation.Nullable String errorContext) { + this.errorContext = errorContext; + return this; + } + + /** + * Free-form failure context captured by the reporter. For Playwright this is the content of error-context.md (test info, error details, page snapshot), so it may include rendered page content. Stored verbatim so it can be copied as raw text. Values longer than 262144 characters are silently truncated by Qase and the request still succeeds. Write-only — not returned by the result read endpoints. + * @return errorContext + */ + @javax.annotation.Nullable + public String getErrorContext() { + return errorContext; + } + + public void setErrorContext(@javax.annotation.Nullable String errorContext) { + this.errorContext = errorContext; + } + + public ResultExecution thread(@javax.annotation.Nullable String thread) { this.thread = thread; return this; @@ -257,6 +281,7 @@ public boolean equals(Object o) { Objects.equals(this.status, resultExecution.status) && Objects.equals(this.duration, resultExecution.duration) && Objects.equals(this.stacktrace, resultExecution.stacktrace) && + Objects.equals(this.errorContext, resultExecution.errorContext) && Objects.equals(this.thread, resultExecution.thread)&& Objects.equals(this.additionalProperties, resultExecution.additionalProperties); } @@ -267,7 +292,7 @@ private static boolean equalsNullable(JsonNullable a, JsonNullable b) @Override public int hashCode() { - return Objects.hash(startTime, endTime, status, duration, stacktrace, thread, additionalProperties); + return Objects.hash(startTime, endTime, status, duration, stacktrace, errorContext, thread, additionalProperties); } private static int hashCodeNullable(JsonNullable a) { @@ -286,6 +311,7 @@ public String toString() { sb.append(" status: ").append(toIndentedString(status)).append("\n"); sb.append(" duration: ").append(toIndentedString(duration)).append("\n"); sb.append(" stacktrace: ").append(toIndentedString(stacktrace)).append("\n"); + sb.append(" errorContext: ").append(toIndentedString(errorContext)).append("\n"); sb.append(" thread: ").append(toIndentedString(thread)).append("\n"); sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).append("\n"); sb.append("}"); @@ -309,7 +335,7 @@ private String toIndentedString(Object o) { static { // a set of all properties/fields (JSON key names) - openapiFields = new HashSet(Arrays.asList("start_time", "end_time", "status", "duration", "stacktrace", "thread")); + openapiFields = new HashSet(Arrays.asList("start_time", "end_time", "status", "duration", "stacktrace", "error_context", "thread")); // a set of required properties/fields (JSON key names) openapiRequiredFields = new HashSet(Arrays.asList("status")); @@ -341,6 +367,9 @@ public static void validateJsonElement(JsonElement jsonElement) throws IOExcepti if ((jsonObj.get("stacktrace") != null && !jsonObj.get("stacktrace").isJsonNull()) && !jsonObj.get("stacktrace").isJsonPrimitive()) { throw new IllegalArgumentException(String.format(java.util.Locale.ROOT, "Expected the field `stacktrace` to be a primitive type in the JSON string but got `%s`", jsonObj.get("stacktrace").toString())); } + if ((jsonObj.get("error_context") != null && !jsonObj.get("error_context").isJsonNull()) && !jsonObj.get("error_context").isJsonPrimitive()) { + throw new IllegalArgumentException(String.format(java.util.Locale.ROOT, "Expected the field `error_context` to be a primitive type in the JSON string but got `%s`", jsonObj.get("error_context").toString())); + } if ((jsonObj.get("thread") != null && !jsonObj.get("thread").isJsonNull()) && !jsonObj.get("thread").isJsonPrimitive()) { throw new IllegalArgumentException(String.format(java.util.Locale.ROOT, "Expected the field `thread` to be a primitive type in the JSON string but got `%s`", jsonObj.get("thread").toString())); } diff --git a/qase-cucumber-v3-reporter/pom.xml b/qase-cucumber-v3-reporter/pom.xml index 754d1b35..062c4c86 100644 --- a/qase-cucumber-v3-reporter/pom.xml +++ b/qase-cucumber-v3-reporter/pom.xml @@ -5,7 +5,7 @@ qase-java io.qase - 4.1.60 + 4.1.61 4.0.0 diff --git a/qase-cucumber-v4-reporter/pom.xml b/qase-cucumber-v4-reporter/pom.xml index c9458eb3..af5cd74d 100644 --- a/qase-cucumber-v4-reporter/pom.xml +++ b/qase-cucumber-v4-reporter/pom.xml @@ -5,7 +5,7 @@ qase-java io.qase - 4.1.60 + 4.1.61 4.0.0 diff --git a/qase-cucumber-v5-reporter/pom.xml b/qase-cucumber-v5-reporter/pom.xml index 02f15c19..d1282cb5 100644 --- a/qase-cucumber-v5-reporter/pom.xml +++ b/qase-cucumber-v5-reporter/pom.xml @@ -5,7 +5,7 @@ qase-java io.qase - 4.1.60 + 4.1.61 4.0.0 diff --git a/qase-cucumber-v6-reporter/pom.xml b/qase-cucumber-v6-reporter/pom.xml index 81dfe227..0bbbc901 100644 --- a/qase-cucumber-v6-reporter/pom.xml +++ b/qase-cucumber-v6-reporter/pom.xml @@ -5,7 +5,7 @@ qase-java io.qase - 4.1.60 + 4.1.61 4.0.0 diff --git a/qase-cucumber-v7-reporter/pom.xml b/qase-cucumber-v7-reporter/pom.xml index 8b00b355..fd7fe2ce 100644 --- a/qase-cucumber-v7-reporter/pom.xml +++ b/qase-cucumber-v7-reporter/pom.xml @@ -5,7 +5,7 @@ qase-java io.qase - 4.1.60 + 4.1.61 4.0.0 diff --git a/qase-java-commons/pom.xml b/qase-java-commons/pom.xml index 36a6df13..e78f5618 100644 --- a/qase-java-commons/pom.xml +++ b/qase-java-commons/pom.xml @@ -6,7 +6,7 @@ io.qase qase-java - 4.1.60 + 4.1.61 qase-java-commons diff --git a/qase-junit4-reporter/pom.xml b/qase-junit4-reporter/pom.xml index b91509e3..67f09994 100644 --- a/qase-junit4-reporter/pom.xml +++ b/qase-junit4-reporter/pom.xml @@ -5,7 +5,7 @@ qase-java io.qase - 4.1.60 + 4.1.61 4.0.0 diff --git a/qase-junit5-reporter/pom.xml b/qase-junit5-reporter/pom.xml index 53ccc6d2..0ef5e9bb 100644 --- a/qase-junit5-reporter/pom.xml +++ b/qase-junit5-reporter/pom.xml @@ -5,7 +5,7 @@ qase-java io.qase - 4.1.60 + 4.1.61 4.0.0 diff --git a/qase-testng-reporter/pom.xml b/qase-testng-reporter/pom.xml index 601bae70..5812268a 100644 --- a/qase-testng-reporter/pom.xml +++ b/qase-testng-reporter/pom.xml @@ -5,7 +5,7 @@ qase-java io.qase - 4.1.60 + 4.1.61 4.0.0