Class: Webspicy::Resource::Service::TestCase

Inherits:
Object
  • Object
show all
Defined in:
lib/webspicy/resource/service/test_case.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(raw) ⇒ TestCase

Returns a new instance of TestCase.



6
7
8
# File 'lib/webspicy/resource/service/test_case.rb', line 6

def initialize(raw)
  @raw = raw
end

Instance Attribute Details

#serviceObject

Returns the value of attribute service.



9
10
11
# File 'lib/webspicy/resource/service/test_case.rb', line 9

def service
  @service
end

Class Method Details

.info(raw) ⇒ Object



15
16
17
# File 'lib/webspicy/resource/service/test_case.rb', line 15

def self.info(raw)
  new(raw)
end

Instance Method Details

#assertObject



84
85
86
# File 'lib/webspicy/resource/service/test_case.rb', line 84

def assert
  @raw[:assert] || []
end

#bodyObject



44
45
46
# File 'lib/webspicy/resource/service/test_case.rb', line 44

def body
  @raw[:body]
end

#descriptionObject



19
20
21
# File 'lib/webspicy/resource/service/test_case.rb', line 19

def description
  @raw[:description]
end

#dress_paramsObject Also known as: dress_params?



35
36
37
# File 'lib/webspicy/resource/service/test_case.rb', line 35

def dress_params
  @raw.fetch(:dress_params){ true }
end

#expectedObject



56
57
58
# File 'lib/webspicy/resource/service/test_case.rb', line 56

def expected
  @raw[:expected] || {}
end

#expected_content_typeObject



60
61
62
# File 'lib/webspicy/resource/service/test_case.rb', line 60

def expected_content_type
  expected.fetch(:content_type){ 'application/json' }
end

#expected_errorObject



68
69
70
# File 'lib/webspicy/resource/service/test_case.rb', line 68

def expected_error
  expected[:error]
end

#expected_headersObject



76
77
78
# File 'lib/webspicy/resource/service/test_case.rb', line 76

def expected_headers
  expected[:headers] || {}
end

#expected_statusObject



64
65
66
# File 'lib/webspicy/resource/service/test_case.rb', line 64

def expected_status
  expected[:status]
end

#file_uploadObject



48
49
50
# File 'lib/webspicy/resource/service/test_case.rb', line 48

def file_upload
  @raw[:file_upload]
end

#has_assertions?Boolean

Returns:

  • (Boolean)


88
89
90
# File 'lib/webspicy/resource/service/test_case.rb', line 88

def has_assertions?
  !assert.empty?
end

#has_expected_error?Boolean

Returns:

  • (Boolean)


72
73
74
# File 'lib/webspicy/resource/service/test_case.rb', line 72

def has_expected_error?
  !expected_error.nil?
end

#has_expected_headers?Boolean

Returns:

  • (Boolean)


80
81
82
# File 'lib/webspicy/resource/service/test_case.rb', line 80

def has_expected_headers?
  !expected_headers.empty?
end

#headersObject



27
28
29
# File 'lib/webspicy/resource/service/test_case.rb', line 27

def headers
  @raw[:headers] ||= {}
end

#instrument(client) ⇒ Object



96
97
98
99
100
101
102
103
# File 'lib/webspicy/resource/service/test_case.rb', line 96

def instrument(client)
  service.preconditions.each do |pre|
    pre.instrument(self, client)
  end
  service.postconditions.each do |post|
    post.instrument(self, client) if post.respond_to?(:instrument)
  end
end

#located_file_uploadObject



52
53
54
# File 'lib/webspicy/resource/service/test_case.rb', line 52

def located_file_upload
  file_upload ? file_upload.locate(resource) : nil
end

#metadataObject



31
32
33
# File 'lib/webspicy/resource/service/test_case.rb', line 31

def 
  @raw[:metadata] ||= {}
end

#paramsObject



40
41
42
# File 'lib/webspicy/resource/service/test_case.rb', line 40

def params
  @raw[:params] || {}
end

#resourceObject



11
12
13
# File 'lib/webspicy/resource/service/test_case.rb', line 11

def resource
  service.resource
end

#seedsObject



23
24
25
# File 'lib/webspicy/resource/service/test_case.rb', line 23

def seeds
  @raw[:seeds]
end

#to_infoObject



92
93
94
# File 'lib/webspicy/resource/service/test_case.rb', line 92

def to_info
  @raw
end

#to_sObject



105
106
107
# File 'lib/webspicy/resource/service/test_case.rb', line 105

def to_s
  description
end