Class: ApiTester::EnumField

Inherits:
Field
  • Object
show all
Defined in:
lib/api-tester/definition/fields/enum_field.rb

Overview

Class for defining enumerators

Instance Attribute Summary collapse

Attributes inherited from Field

#default, #has_key, #is_seen, #name, #required

Instance Method Summary collapse

Methods inherited from Field

#display_class, #fields, #is_not_required, #is_required, #seen, #subfields?, #type

Constructor Details

#initialize(name:, acceptable_values:, default: nil, required: false) ⇒ EnumField

Returns a new instance of EnumField.



10
11
12
13
14
15
16
17
18
# File 'lib/api-tester/definition/fields/enum_field.rb', line 10

def initialize(name:, acceptable_values:, default: nil, required: false)
  if default
    super name: name, default: default, required: required
  else
    super name: name, default: acceptable_values[0], required: required
  end

  self.acceptable_values = acceptable_values
end

Instance Attribute Details

#acceptable_valuesObject

Returns the value of attribute acceptable_values.



8
9
10
# File 'lib/api-tester/definition/fields/enum_field.rb', line 8

def acceptable_values
  @acceptable_values
end

Instance Method Details

#good_casesObject



32
33
34
# File 'lib/api-tester/definition/fields/enum_field.rb', line 32

def good_cases
  acceptable_values
end

#negative_boundary_valuesObject



20
21
22
23
24
25
26
27
28
29
30
# File 'lib/api-tester/definition/fields/enum_field.rb', line 20

def negative_boundary_values
  super +
    [
      123,
      0,
      1,
      true,
      false,
      {}
    ]
end