summaryrefslogtreecommitdiff
path: root/app/graphql/types/ci/test_suite_type.rb
blob: 7d4c01da81b457531f2372cfb12081447720e209 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# frozen_string_literal: true

module Types
  module Ci
    # rubocop: disable Graphql/AuthorizeTypes
    class TestSuiteType < BaseObject
      graphql_name 'TestSuite'
      description 'Test suite in a pipeline test report.'

      connection_type_class(Types::CountableConnectionType)

      field :name, GraphQL::STRING_TYPE, null: true,
        description: 'Name of the test suite.'

      field :total_time, GraphQL::FLOAT_TYPE, null: true,
        description: 'Total duration of the tests in the test suite.'

      field :total_count, GraphQL::INT_TYPE, null: true,
        description: 'Total number of the test cases in the test suite.'

      field :success_count, GraphQL::INT_TYPE, null: true,
        description: 'Total number of test cases that succeeded in the test suite.'

      field :failed_count, GraphQL::INT_TYPE, null: true,
        description: 'Total number of test cases that failed in the test suite.'

      field :skipped_count, GraphQL::INT_TYPE, null: true,
        description: 'Total number of test cases that were skipped in the test suite.'

      field :error_count, GraphQL::INT_TYPE, null: true,
        description: 'Total number of test cases that had an error.'

      field :suite_error, GraphQL::STRING_TYPE, null: true,
        description: 'Test suite error message.'

      field :test_cases, Types::Ci::TestCaseType.connection_type, null: true,
        description: 'Test cases in the test suite.'
    end
    # rubocop: enable Graphql/AuthorizeTypes
  end
end