api-tester 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 4c2d7d376e7fabf9e5d3b6d3dcfc46fed51769c4
4
- data.tar.gz: bec8bec10284f71f2ac319a341cce60f305ed04f
3
+ metadata.gz: 173ab496b5c0a3a43c1e445cabc382335b475730
4
+ data.tar.gz: 52325c92e2e3296593dd4f281098b3b84b417f92
5
5
  SHA512:
6
- metadata.gz: 51849f3cbee0fe669116ec6bd9b1d9ff2c19a4e345d9f9ea2c1fc47e059bf00283a95dcbf5c754bd81ae9697c4db01f17067532d238a58bc85702d0e8e0f176e
7
- data.tar.gz: 1fdc1be1f412a64596c58b2c652a69b63b822d18c8b51f889097317375418a14ec7ee0fcd3de40a23454e85f604ce593203e320f2c4af97b0390ceda8b39154e
6
+ metadata.gz: c7accb0f928261574018b33e9d1fca93dd41a919bb8ce888a4c3e26add1cb2f8e3fab0532c125e5e9a43c8cacabef1b696ecdf06cb456013b660e31ca712531e
7
+ data.tar.gz: aac95b14b2c0170d5c4841a846e8ba7b54fc36f3ab763ca1d64f8a949af69daeb59bff2e58c41c371ab3f3a0687871348c345c4a9dfb63b044cbdf3afee54d26
data/README.md CHANGED
@@ -51,7 +51,7 @@ required)
51
51
  Add this line to your application's Gemfile (Note: specify your version due to gem's currently volatile nature):
52
52
 
53
53
  ```ruby
54
- gem 'api-tester', '0.0.2'
54
+ gem 'api-tester', '0.0.3'
55
55
  ```
56
56
 
57
57
  And then execute:
@@ -122,8 +122,8 @@ class InfoCreator < TestHelper
122
122
  end
123
123
  end
124
124
 
125
- tester = ApiTester.new(endpoint)
126
- tester.test_helper = InfoCreator.new
125
+ endpoint = Endpoint.new "Endpoint Name", "www.endpoint-url.com"
126
+ endpoint.test_helper = InfoCreator.new
127
127
  expect(tester.go).to be true
128
128
  ```
129
129
 
@@ -38,7 +38,6 @@ class ApiTester
38
38
 
39
39
  def go
40
40
  self.modules.sort_by{ |mod| mod.order }.each do |mod|
41
- mod.test_helper = self.test_helper
42
41
  mod.go self.definition, self.report
43
42
  end
44
43
 
@@ -4,6 +4,7 @@ class Endpoint
4
4
  attr_accessor :url
5
5
  attr_accessor :methods
6
6
  attr_accessor :name
7
+ attr_accessor :test_helper
7
8
  attr_accessor :bad_request_response
8
9
  attr_accessor :not_allowed_response
9
10
  attr_accessor :not_found_response
@@ -12,6 +13,7 @@ class Endpoint
12
13
  self.url = url
13
14
  self.name = name
14
15
  self.methods = []
16
+ self.test_helper = TestHelper.new
15
17
  self.bad_request_response = Response.new 400
16
18
  self.not_allowed_response = Response.new 415
17
19
  self.not_found_response = Response.new 404
@@ -9,7 +9,7 @@ class Format < Module
9
9
  definition.methods.each do |method|
10
10
  cases = method.request.cases
11
11
  cases.each do |format_case|
12
- response = self.call method, definition.url, format_case
12
+ response = self.call method, definition, format_case
13
13
  test = FormatTest.new response, format_case.payload, definition.bad_request_response, definition.url, method.verb
14
14
  self.report.reports.concat test.check
15
15
  end
@@ -8,7 +8,7 @@ class GoodCase < Module
8
8
 
9
9
  definition.methods.each do |method|
10
10
  default_case = BoundaryCase.new definition.url, method.request.default_payload, method.request.default_headers
11
- response = self.call method, definition.url, default_case
11
+ response = self.call method, definition, default_case
12
12
  test = GoodCaseTest.new response, definition.url, method
13
13
  self.report.reports.concat test.check
14
14
  end
@@ -3,11 +3,6 @@ require 'tester/test_helper'
3
3
 
4
4
  class Module
5
5
  attr_accessor :report
6
- attr_accessor :test_helper
7
-
8
- def initialize
9
- self.test_helper = TestHelper.new
10
- end
11
6
 
12
7
  def set_report report
13
8
  self.report = report
@@ -21,18 +16,18 @@ class Module
21
16
  5
22
17
  end
23
18
 
24
- def before
25
- self.test_helper.before
19
+ def before definition
20
+ definition.test_helper.before
26
21
  end
27
22
 
28
- def after
29
- self.test_helper.after
23
+ def after definition
24
+ definition.test_helper.after
30
25
  end
31
26
 
32
- def call method, url, format_case
33
- self.before
34
- response = method.call url, format_case.payload, format_case.headers
35
- self.after
27
+ def call method, definition, format_case
28
+ self.before definition
29
+ response = method.call definition.url, format_case.payload, format_case.headers
30
+ self.after definition
36
31
  response
37
32
  end
38
33
  end
@@ -22,7 +22,7 @@ class Typo < Module
22
22
  missing_verbs.each do |verb|
23
23
  check_method = create_api_method verb
24
24
  typo_case = BoundaryCase.new("Typo verb check #{verb}", {}, {})
25
- response = self.call check_method, definition.url, typo_case
25
+ response = self.call check_method, definition, typo_case
26
26
 
27
27
  test = TypoClass.new response, typo_case.payload, definition.not_allowed_response, url, verb
28
28
  reports = test.check
@@ -32,9 +32,10 @@ class Typo < Module
32
32
 
33
33
  def check_typo_url definition, url
34
34
  bad_url = "#{url}gibberishadsfasdf"
35
+ bad_definition = Endpoint.new "Bad URL", bad_url
35
36
  typo_case = BoundaryCase.new("Typo URL check", {}, {})
36
37
  check_method = create_api_method SupportedVerbs::GET
37
- response = self.call check_method, bad_url, typo_case
38
+ response = self.call check_method, bad_definition, typo_case
38
39
 
39
40
  test = TypoClass.new response, typo_case.payload, definition.not_found_response, bad_url, SupportedVerbs::GET
40
41
  reports = test.check
@@ -1,3 +1,3 @@
1
1
  module Tester
2
- VERSION = "0.0.3"
2
+ VERSION = "0.0.4"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: api-tester
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - arane