Skip to content
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
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "0.9.1"
".": "0.10.0"
}
6 changes: 3 additions & 3 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
configured_endpoints: 24
openapi_spec_hash: c97a5263afcc72ca5a47bc5a87683a78
config_hash: f0743196c68fb84cbd06a95f134702b3
configured_endpoints: 25
openapi_spec_hash: 4eff18b3478c98a9b257ac27fdeb6b49
config_hash: b415187e3925c414fb2597cdd0a11859
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# Changelog

## 0.10.0 (2026-01-09)

Full Changelog: [v0.9.1...v0.10.0](https://github.com/openlayer-ai/openlayer-ruby/compare/v0.9.1...v0.10.0)

### Features

* **closes OPEN-8532:** expose 'tests/{id}/results' endpoint ([9283aa5](https://github.com/openlayer-ai/openlayer-ruby/commit/9283aa5daa8dc74f26a2e17c754824f4bdc57f97))

## 0.9.1 (2026-01-08)

Full Changelog: [v0.9.0...v0.9.1](https://github.com/openlayer-ai/openlayer-ruby/compare/v0.9.0...v0.9.1)
Expand Down
2 changes: 1 addition & 1 deletion Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ GIT
PATH
remote: .
specs:
openlayer (0.9.1)
openlayer (0.10.0)
connection_pool

GEM
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ To use this gem, install via Bundler by adding the following to your application
<!-- x-release-please-start-version -->

```ruby
gem "openlayer", "~> 0.9.1"
gem "openlayer", "~> 0.10.0"
```

<!-- x-release-please-end -->
Expand Down
2 changes: 2 additions & 0 deletions lib/openlayer.rb
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,8 @@
require_relative "openlayer/models/storage/presigned_url_create_response"
require_relative "openlayer/models/test_evaluate_params"
require_relative "openlayer/models/test_evaluate_response"
require_relative "openlayer/models/test_list_results_params"
require_relative "openlayer/models/test_list_results_response"
require_relative "openlayer/models/workspace_retrieve_params"
require_relative "openlayer/models/workspace_retrieve_response"
require_relative "openlayer/models/workspaces/api_key_create_params"
Expand Down
2 changes: 2 additions & 0 deletions lib/openlayer/models.rb
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,8 @@ module Openlayer

TestEvaluateParams = Openlayer::Models::TestEvaluateParams

TestListResultsParams = Openlayer::Models::TestListResultsParams

WorkspaceRetrieveParams = Openlayer::Models::WorkspaceRetrieveParams

Workspaces = Openlayer::Models::Workspaces
Expand Down
287 changes: 286 additions & 1 deletion lib/openlayer/models/commits/test_result_list_response.rb
Original file line number Diff line number Diff line change
Expand Up @@ -27,11 +27,33 @@ class Item < Openlayer::Internal::Type::BaseModel
# @return [String, nil]
required :status_message, String, api_name: :statusMessage, nil?: true

# @!attribute expected_values
#
# @return [Array<Openlayer::Models::Commits::TestResultListResponse::Item::ExpectedValue>, nil]
optional :expected_values,
-> { Openlayer::Internal::Type::ArrayOf[Openlayer::Models::Commits::TestResultListResponse::Item::ExpectedValue] },
api_name: :expectedValues

# @!attribute goal
#
# @return [Openlayer::Models::Commits::TestResultListResponse::Item::Goal, nil]
optional :goal, -> { Openlayer::Models::Commits::TestResultListResponse::Item::Goal }

# @!attribute rows
# The URL to the rows of the test result.
#
# @return [String, nil]
optional :rows, String

# @!attribute rows_body
# The body of the rows request.
#
# @return [Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody, nil]
optional :rows_body,
-> { Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody },
api_name: :rowsBody,
nil?: true

response_only do
# @!attribute id
# Project version (commit) id.
Expand Down Expand Up @@ -82,7 +104,7 @@ class Item < Openlayer::Internal::Type::BaseModel
optional :goal_id, String, api_name: :goalId, nil?: true
end

# @!method initialize(id:, date_created:, date_data_ends:, date_data_starts:, date_updated:, inference_pipeline_id:, project_version_id:, status:, status_message:, goal: nil, goal_id: nil)
# @!method initialize(id:, date_created:, date_data_ends:, date_data_starts:, date_updated:, inference_pipeline_id:, project_version_id:, status:, status_message:, expected_values: nil, goal: nil, goal_id: nil, rows: nil, rows_body: nil)
# @param id [String] Project version (commit) id.
#
# @param date_created [Time] The creation date.
Expand All @@ -101,9 +123,15 @@ class Item < Openlayer::Internal::Type::BaseModel
#
# @param status_message [String, nil] The status message.
#
# @param expected_values [Array<Openlayer::Models::Commits::TestResultListResponse::Item::ExpectedValue>]
#
# @param goal [Openlayer::Models::Commits::TestResultListResponse::Item::Goal]
#
# @param goal_id [String, nil] The test id.
#
# @param rows [String] The URL to the rows of the test result.
#
# @param rows_body [Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody, nil] The body of the rows request.

# The status of the test.
#
Expand All @@ -121,6 +149,33 @@ module Status
# @return [Array<Symbol>]
end

class ExpectedValue < Openlayer::Internal::Type::BaseModel
# @!attribute lower_threshold
# the lower threshold for the expected value
#
# @return [Float, nil]
optional :lower_threshold, Float, api_name: :lowerThreshold, nil?: true

# @!attribute measurement
# One of the `measurement` values in the test's thresholds
#
# @return [String, nil]
optional :measurement, String

# @!attribute upper_threshold
# The upper threshold for the expected value
#
# @return [Float, nil]
optional :upper_threshold, Float, api_name: :upperThreshold, nil?: true

# @!method initialize(lower_threshold: nil, measurement: nil, upper_threshold: nil)
# @param lower_threshold [Float, nil] the lower threshold for the expected value
#
# @param measurement [String] One of the `measurement` values in the test's thresholds
#
# @param upper_threshold [Float, nil] The upper threshold for the expected value
end

# @see Openlayer::Models::Commits::TestResultListResponse::Item#goal
class Goal < Openlayer::Internal::Type::BaseModel
# @!attribute description
Expand Down Expand Up @@ -559,6 +614,236 @@ module Type
# @return [Array<Symbol>]
end
end

# @see Openlayer::Models::Commits::TestResultListResponse::Item#rows_body
class RowsBody < Openlayer::Internal::Type::BaseModel
# @!attribute column_filters
#
# @return [Array<Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::SetColumnFilter, Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::NumericColumnFilter, Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::StringColumnFilter>, nil]
optional :column_filters,
-> { Openlayer::Internal::Type::ArrayOf[union: Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter] },
api_name: :columnFilters,
nil?: true

# @!attribute exclude_row_id_list
#
# @return [Array<Integer>, nil]
optional :exclude_row_id_list,
Openlayer::Internal::Type::ArrayOf[Integer],
api_name: :excludeRowIdList,
nil?: true

# @!attribute not_search_query_and
#
# @return [Array<String>, nil]
optional :not_search_query_and,
Openlayer::Internal::Type::ArrayOf[String],
api_name: :notSearchQueryAnd,
nil?: true

# @!attribute not_search_query_or
#
# @return [Array<String>, nil]
optional :not_search_query_or,
Openlayer::Internal::Type::ArrayOf[String],
api_name: :notSearchQueryOr,
nil?: true

# @!attribute row_id_list
#
# @return [Array<Integer>, nil]
optional :row_id_list,
Openlayer::Internal::Type::ArrayOf[Integer],
api_name: :rowIdList,
nil?: true

# @!attribute search_query_and
#
# @return [Array<String>, nil]
optional :search_query_and,
Openlayer::Internal::Type::ArrayOf[String],
api_name: :searchQueryAnd,
nil?: true

# @!attribute search_query_or
#
# @return [Array<String>, nil]
optional :search_query_or,
Openlayer::Internal::Type::ArrayOf[String],
api_name: :searchQueryOr,
nil?: true

# @!method initialize(column_filters: nil, exclude_row_id_list: nil, not_search_query_and: nil, not_search_query_or: nil, row_id_list: nil, search_query_and: nil, search_query_or: nil)
# The body of the rows request.
#
# @param column_filters [Array<Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::SetColumnFilter, Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::NumericColumnFilter, Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::StringColumnFilter>, nil]
# @param exclude_row_id_list [Array<Integer>, nil]
# @param not_search_query_and [Array<String>, nil]
# @param not_search_query_or [Array<String>, nil]
# @param row_id_list [Array<Integer>, nil]
# @param search_query_and [Array<String>, nil]
# @param search_query_or [Array<String>, nil]

module ColumnFilter
extend Openlayer::Internal::Type::Union

variant -> { Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::SetColumnFilter }

variant -> { Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::NumericColumnFilter }

variant -> { Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::StringColumnFilter }

class SetColumnFilter < Openlayer::Internal::Type::BaseModel
# @!attribute measurement
# The name of the column.
#
# @return [String]
required :measurement, String

# @!attribute operator
#
# @return [Symbol, Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::SetColumnFilter::Operator]
required :operator,
enum: -> { Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::SetColumnFilter::Operator }

# @!attribute value
#
# @return [Array<String, Float>]
required :value,
-> do
Openlayer::Internal::Type::ArrayOf[
union: Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::SetColumnFilter::Value
]
end

# @!method initialize(measurement:, operator:, value:)
# @param measurement [String] The name of the column.
#
# @param operator [Symbol, Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::SetColumnFilter::Operator]
#
# @param value [Array<String, Float>]

# @see Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::SetColumnFilter#operator
module Operator
extend Openlayer::Internal::Type::Enum

CONTAINS_NONE = :contains_none
CONTAINS_ANY = :contains_any
CONTAINS_ALL = :contains_all
ONE_OF = :one_of
NONE_OF = :none_of

# @!method self.values
# @return [Array<Symbol>]
end

module Value
extend Openlayer::Internal::Type::Union

variant String

variant Float

# @!method self.variants
# @return [Array(String, Float)]
end
end

class NumericColumnFilter < Openlayer::Internal::Type::BaseModel
# @!attribute measurement
# The name of the column.
#
# @return [String]
required :measurement, String

# @!attribute operator
#
# @return [Symbol, Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::NumericColumnFilter::Operator]
required :operator,
enum: -> { Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::NumericColumnFilter::Operator }

# @!attribute value
#
# @return [Float, nil]
required :value, Float, nil?: true

# @!method initialize(measurement:, operator:, value:)
# @param measurement [String] The name of the column.
#
# @param operator [Symbol, Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::NumericColumnFilter::Operator]
#
# @param value [Float, nil]

# @see Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::NumericColumnFilter#operator
module Operator
extend Openlayer::Internal::Type::Enum

GREATER = :>
GREATER_OR_EQUALS = :">="
IS = :is
LESS = :<
LESS_OR_EQUALS = :"<="
NOT_EQUALS = :"!="

# @!method self.values
# @return [Array<Symbol>]
end
end

class StringColumnFilter < Openlayer::Internal::Type::BaseModel
# @!attribute measurement
# The name of the column.
#
# @return [String]
required :measurement, String

# @!attribute operator
#
# @return [Symbol, Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::StringColumnFilter::Operator]
required :operator,
enum: -> { Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::StringColumnFilter::Operator }

# @!attribute value
#
# @return [String, Boolean]
required :value,
union: -> { Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::StringColumnFilter::Value }

# @!method initialize(measurement:, operator:, value:)
# @param measurement [String] The name of the column.
#
# @param operator [Symbol, Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::StringColumnFilter::Operator]
#
# @param value [String, Boolean]

# @see Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::StringColumnFilter#operator
module Operator
extend Openlayer::Internal::Type::Enum

IS = :is
NOT_EQUALS = :"!="

# @!method self.values
# @return [Array<Symbol>]
end

# @see Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::StringColumnFilter#value
module Value
extend Openlayer::Internal::Type::Union

variant String

variant Openlayer::Internal::Type::Boolean

# @!method self.variants
# @return [Array(String, Boolean)]
end
end

# @!method self.variants
# @return [Array(Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::SetColumnFilter, Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::NumericColumnFilter, Openlayer::Models::Commits::TestResultListResponse::Item::RowsBody::ColumnFilter::StringColumnFilter)]
end
end
end
end
end
Expand Down
Loading