kalibro_gatekeeper_client 0.0.1.rc1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (165) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +19 -0
  3. data/.ruby-gemset +1 -0
  4. data/.ruby-version +1 -0
  5. data/.travis.yml +29 -0
  6. data/AUTHORS +4 -0
  7. data/COPYING +674 -0
  8. data/COPYING.LESSER +165 -0
  9. data/Gemfile +4 -0
  10. data/README.md +77 -0
  11. data/Rakefile +6 -0
  12. data/cucumber.yml +1 -0
  13. data/features/base_tool/all_names.feature +8 -0
  14. data/features/base_tool/find_by_name.feature +12 -0
  15. data/features/configuration/all.feature +10 -0
  16. data/features/metric_configuration/find.feature +18 -0
  17. data/features/metric_configuration/metric_configurations_of.feature +18 -0
  18. data/features/metric_result/descendant_results.feature +19 -0
  19. data/features/metric_result/history_of.feature +20 -0
  20. data/features/metric_result/metric_results_of.feature +19 -0
  21. data/features/module_result/children.feature +18 -0
  22. data/features/module_result/find.feature +15 -0
  23. data/features/module_result/history_of.feature +11 -0
  24. data/features/processing/first_processing_after.feature +18 -0
  25. data/features/processing/first_processing_of.feature +18 -0
  26. data/features/processing/has_processing.feature +18 -0
  27. data/features/processing/has_processing_after.feature +18 -0
  28. data/features/processing/has_processing_before.feature +18 -0
  29. data/features/processing/has_ready_processing.feature +18 -0
  30. data/features/processing/last_processing_before.feature +18 -0
  31. data/features/processing/last_processing_of.feature +18 -0
  32. data/features/processing/last_processing_state_of.feature +18 -0
  33. data/features/processing/last_ready_processing_of.feature +18 -0
  34. data/features/processing/processing_of.feature +32 -0
  35. data/features/processing/processing_with_date_of.feature +32 -0
  36. data/features/project/all.feature +10 -0
  37. data/features/project/creation.feature +9 -0
  38. data/features/project/destroy.feature +10 -0
  39. data/features/project/exists.feature +9 -0
  40. data/features/project/find.feature +10 -0
  41. data/features/range/all.feature +14 -0
  42. data/features/range/exists.feature +13 -0
  43. data/features/range/find.feature +14 -0
  44. data/features/range/ranges_of.feature +22 -0
  45. data/features/range/save.feature +14 -0
  46. data/features/reading/all.feature +13 -0
  47. data/features/reading/exists.feature +13 -0
  48. data/features/reading/find.feature +11 -0
  49. data/features/reading/readings_of.feature +11 -0
  50. data/features/reading_group/all.feature +10 -0
  51. data/features/repository/all.feature +14 -0
  52. data/features/repository/cancel_processing.feature +14 -0
  53. data/features/repository/exists.feature +14 -0
  54. data/features/repository/find.feature +14 -0
  55. data/features/repository/of.feature +15 -0
  56. data/features/repository/process.feature +16 -0
  57. data/features/repository/types.feature +9 -0
  58. data/features/step_definitions/base_tool_steps.rb +28 -0
  59. data/features/step_definitions/configuration_steps.rb +11 -0
  60. data/features/step_definitions/metric_configuration_steps.rb +52 -0
  61. data/features/step_definitions/metric_result_steps.rb +29 -0
  62. data/features/step_definitions/metric_steps.rb +3 -0
  63. data/features/step_definitions/module_result_steps.rb +30 -0
  64. data/features/step_definitions/processing_steps.rb +91 -0
  65. data/features/step_definitions/project_steps.rb +48 -0
  66. data/features/step_definitions/range_steps.rb +68 -0
  67. data/features/step_definitions/reading_group_steps.rb +19 -0
  68. data/features/step_definitions/reading_steps.rb +39 -0
  69. data/features/step_definitions/repository_steps.rb +61 -0
  70. data/features/support/env.rb +25 -0
  71. data/features/support/kalibro_cucumber_helpers.yml.sample +10 -0
  72. data/kalibro_gatekeeper_client.gemspec +49 -0
  73. data/lib/kalibro_gatekeeper_client/entities/base_tool.rb +55 -0
  74. data/lib/kalibro_gatekeeper_client/entities/configuration.rb +34 -0
  75. data/lib/kalibro_gatekeeper_client/entities/date_metric_result.rb +39 -0
  76. data/lib/kalibro_gatekeeper_client/entities/date_module_result.rb +39 -0
  77. data/lib/kalibro_gatekeeper_client/entities/metric.rb +21 -0
  78. data/lib/kalibro_gatekeeper_client/entities/metric_configuration.rb +76 -0
  79. data/lib/kalibro_gatekeeper_client/entities/metric_configuration_snapshot.rb +57 -0
  80. data/lib/kalibro_gatekeeper_client/entities/metric_result.rb +72 -0
  81. data/lib/kalibro_gatekeeper_client/entities/model.rb +174 -0
  82. data/lib/kalibro_gatekeeper_client/entities/module.rb +27 -0
  83. data/lib/kalibro_gatekeeper_client/entities/module_result.rb +75 -0
  84. data/lib/kalibro_gatekeeper_client/entities/process_time.rb +31 -0
  85. data/lib/kalibro_gatekeeper_client/entities/processing.rb +113 -0
  86. data/lib/kalibro_gatekeeper_client/entities/project.rb +35 -0
  87. data/lib/kalibro_gatekeeper_client/entities/range.rb +100 -0
  88. data/lib/kalibro_gatekeeper_client/entities/range_snapshot.rb +37 -0
  89. data/lib/kalibro_gatekeeper_client/entities/reading.rb +67 -0
  90. data/lib/kalibro_gatekeeper_client/entities/reading_group.rb +44 -0
  91. data/lib/kalibro_gatekeeper_client/entities/repository.rb +89 -0
  92. data/lib/kalibro_gatekeeper_client/entities/repository_observer.rb +50 -0
  93. data/lib/kalibro_gatekeeper_client/entities/stack_trace_element.rb +31 -0
  94. data/lib/kalibro_gatekeeper_client/entities/throwable.rb +42 -0
  95. data/lib/kalibro_gatekeeper_client/entities.rb +37 -0
  96. data/lib/kalibro_gatekeeper_client/errors/record_not_found.rb +22 -0
  97. data/lib/kalibro_gatekeeper_client/errors/standard.rb +24 -0
  98. data/lib/kalibro_gatekeeper_client/errors.rb +18 -0
  99. data/lib/kalibro_gatekeeper_client/helpers/aggregation_options.rb +25 -0
  100. data/lib/kalibro_gatekeeper_client/helpers/hash_converters.rb +48 -0
  101. data/lib/kalibro_gatekeeper_client/helpers/request_methods.rb +47 -0
  102. data/lib/kalibro_gatekeeper_client/helpers/xml_converters.rb +20 -0
  103. data/lib/kalibro_gatekeeper_client/kalibro_cucumber_helpers/configuration.rb +39 -0
  104. data/lib/kalibro_gatekeeper_client/kalibro_cucumber_helpers/hooks.rb +56 -0
  105. data/lib/kalibro_gatekeeper_client/kalibro_cucumber_helpers/scripts/delete_all_kalibro_entries.sh +23 -0
  106. data/lib/kalibro_gatekeeper_client/kalibro_cucumber_helpers/scripts/prepare_kalibro_query_file.sh +38 -0
  107. data/lib/kalibro_gatekeeper_client/kalibro_cucumber_helpers/scripts/put_kalibro_on_test_mode.sh +39 -0
  108. data/lib/kalibro_gatekeeper_client/kalibro_cucumber_helpers/scripts/return_kalibro_from_test_mode.sh +26 -0
  109. data/lib/kalibro_gatekeeper_client/kalibro_cucumber_helpers.rb +40 -0
  110. data/lib/kalibro_gatekeeper_client/version.rb +19 -0
  111. data/lib/kalibro_gatekeeper_client.rb +61 -0
  112. data/lib/rake/test_task.rb +57 -0
  113. data/spec/entities/base_tool_spec.rb +168 -0
  114. data/spec/entities/configuration_spec.rb +61 -0
  115. data/spec/entities/date_metric_result_spec.rb +62 -0
  116. data/spec/entities/date_module_result_spec.rb +61 -0
  117. data/spec/entities/metric_configuration_snapshot_spec.rb +107 -0
  118. data/spec/entities/metric_configuration_spec.rb +173 -0
  119. data/spec/entities/metric_result_spec.rb +188 -0
  120. data/spec/entities/metric_spec.rb +47 -0
  121. data/spec/entities/model_spec.rb +322 -0
  122. data/spec/entities/module_result_spec.rb +163 -0
  123. data/spec/entities/process_time_spec.rb +33 -0
  124. data/spec/entities/processing_spec.rb +334 -0
  125. data/spec/entities/project_spec.rb +68 -0
  126. data/spec/entities/range_snapshot_spec.rb +50 -0
  127. data/spec/entities/range_spec.rb +225 -0
  128. data/spec/entities/reading_group_spec.rb +90 -0
  129. data/spec/entities/reading_spec.rb +148 -0
  130. data/spec/entities/repository_observer_spec.rb +123 -0
  131. data/spec/entities/repository_spec.rb +191 -0
  132. data/spec/entities/stack_trace_element_spec.rb +26 -0
  133. data/spec/entities/throwable_spec.rb +51 -0
  134. data/spec/factories/base_tools.rb +31 -0
  135. data/spec/factories/configurations.rb +29 -0
  136. data/spec/factories/date_metric_results.rb +28 -0
  137. data/spec/factories/date_module_results.rb +22 -0
  138. data/spec/factories/metric_configurations.rb +28 -0
  139. data/spec/factories/metric_configurations_snapshot.rb +26 -0
  140. data/spec/factories/metric_results.rb +24 -0
  141. data/spec/factories/metrics.rb +35 -0
  142. data/spec/factories/models.rb +20 -0
  143. data/spec/factories/module_results.rb +33 -0
  144. data/spec/factories/modules.rb +22 -0
  145. data/spec/factories/process_times.rb +27 -0
  146. data/spec/factories/processings.rb +25 -0
  147. data/spec/factories/projects.rb +29 -0
  148. data/spec/factories/ranges.rb +35 -0
  149. data/spec/factories/ranges_snapshot.rb +26 -0
  150. data/spec/factories/reading_groups.rb +23 -0
  151. data/spec/factories/readings.rb +25 -0
  152. data/spec/factories/repositories.rb +34 -0
  153. data/spec/factories/repository_observers.rb +24 -0
  154. data/spec/factories/stack_trace_elements.rb +24 -0
  155. data/spec/factories/throwables.rb +23 -0
  156. data/spec/helpers/aggregation_options_spec.rb +31 -0
  157. data/spec/helpers/hash_converters_spec.rb +111 -0
  158. data/spec/helpers/xml_converters_spec.rb +64 -0
  159. data/spec/kalibro_entities_spec.rb +108 -0
  160. data/spec/savon/fixtures/config.yml +1 -0
  161. data/spec/savon/fixtures/invalid_config.yml +2 -0
  162. data/spec/savon/fixtures/project/does_not_exists.xml +1 -0
  163. data/spec/savon/savon_test_helper.rb +14 -0
  164. data/spec/spec_helper.rb +56 -0
  165. metadata +466 -0
@@ -0,0 +1,111 @@
1
+ # This file is part of KalibroGatekeeperClient
2
+ # Copyright (C) 2013 it's respectives authors (please see the AUTHORS file)
3
+ #
4
+ # This program is free software: you can redistribute it and/or modify
5
+ # it under the terms of the GNU General Public License as published by
6
+ # the Free Software Foundation, either version 3 of the License, or
7
+ # (at your option) any later version.
8
+ #
9
+ # This program is distributed in the hope that it will be useful,
10
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
+ # GNU General Public License for more details.
13
+
14
+ # You should have received a copy of the GNU General Public License
15
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
16
+
17
+ require 'spec_helper'
18
+ require 'kalibro_gatekeeper_client/helpers/hash_converters'
19
+
20
+ include HashConverters
21
+
22
+ describe HashConverters do
23
+ describe 'date_with_miliseconds' do
24
+ context 'with 21/12/1995 (first Ruby publication)' do
25
+ it 'should return 1995-12-21T00:00:00.0/1+00:00' do
26
+ date_with_milliseconds(DateTime.parse("21/12/1995")).should eq("1995-12-21T00:00:00.0/1+00:00")
27
+ end
28
+ end
29
+ end
30
+
31
+ describe 'convert_to_hash' do
32
+ context 'with a nil value' do
33
+ it 'should return nil' do
34
+ convert_to_hash(nil).should be_nil
35
+ end
36
+ end
37
+
38
+ context 'with an Array' do
39
+ before :each do
40
+ @array = []
41
+ @element1 = :kalibro
42
+
43
+ @array << @element1
44
+ end
45
+
46
+ it 'should return the Array wth its elements converted' do
47
+ convert_to_hash(@array)[0].should eq(@element1.to_s)
48
+ end
49
+ end
50
+
51
+ context 'with a Model' do
52
+ before :each do
53
+ @model = KalibroGatekeeperClient::Entities::Model.new
54
+ end
55
+
56
+ it "should return the Model's Hash" do
57
+ convert_to_hash(@model).should eq(@model.to_hash)
58
+ end
59
+ end
60
+
61
+ context 'with a DateTime' do
62
+ before :each do
63
+ @date = DateTime.parse("21/12/1995")
64
+ end
65
+
66
+ it 'should return th date with miliseconds' do
67
+ convert_to_hash(@date).should eq(date_with_milliseconds(@date))
68
+ end
69
+ end
70
+
71
+ context 'with an + infinite Float' do
72
+ it 'should return INF' do
73
+ convert_to_hash(1.0/0.0).should eq('INF')
74
+ end
75
+ end
76
+
77
+ context 'with an - infinite Float' do
78
+ it 'should return -INF' do
79
+ convert_to_hash(-1.0/0.0).should eq('-INF')
80
+ end
81
+ end
82
+ end
83
+
84
+ describe 'field_to_hash' do
85
+ context 'with a nil field value' do
86
+ before do
87
+ @model = KalibroGatekeeperClient::Entities::Model.new
88
+ @model.expects(:send).with(:field_getter).returns(nil)
89
+ end
90
+
91
+ it 'should return an instance of Hash' do
92
+ @model.field_to_hash(:field_getter).should be_a(Hash)
93
+ end
94
+
95
+ it 'should return an empty Hash' do
96
+ @model.field_to_hash(:field_getter).should eq({})
97
+ end
98
+ end
99
+
100
+ context 'with a Float field value' do
101
+ before do
102
+ @model = KalibroGatekeeperClient::Entities::Model.new
103
+ @model.expects(:send).with(:field_getter).returns(1.0)
104
+ end
105
+
106
+ it 'should return an instance of Hash' do
107
+ @model.field_to_hash(:field_getter).should be_a(Hash)
108
+ end
109
+ end
110
+ end
111
+ end
@@ -0,0 +1,64 @@
1
+ # This file is part of KalibroGatekeeperClient
2
+ # Copyright (C) 2013 it's respectives authors (please see the AUTHORS file)
3
+ #
4
+ # This program is free software: you can redistribute it and/or modify
5
+ # it under the terms of the GNU General Public License as published by
6
+ # the Free Software Foundation, either version 3 of the License, or
7
+ # (at your option) any later version.
8
+ #
9
+ # This program is distributed in the hope that it will be useful,
10
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
+ # GNU General Public License for more details.
13
+
14
+ # You should have received a copy of the GNU General Public License
15
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
16
+
17
+ require 'spec_helper'
18
+ require 'kalibro_gatekeeper_client/helpers/xml_converters'
19
+
20
+ include XMLConverters
21
+
22
+ describe XMLConverters do
23
+ describe 'xml_instance_class_name' do
24
+ before { @model = KalibroGatekeeperClient::Entities::Model.new }
25
+
26
+ it 'should return modelXml' do
27
+ xml_instance_class_name(@model).should eq('modelXml')
28
+ end
29
+ end
30
+
31
+ describe 'get_xml' do
32
+ context 'with an object that is not an instance of Model' do
33
+ before { @object = "kalibro" }
34
+
35
+ it 'should return a Hash' do
36
+ get_xml("field", @object).should be_a(Hash)
37
+ end
38
+
39
+ it 'should return an empty Hash' do
40
+ get_xml("field", @object).should eq({})
41
+ end
42
+ end
43
+
44
+ context 'with an instance of Model' do
45
+ before { @object = KalibroGatekeeperClient::Entities::Model.new }
46
+
47
+ it 'should return a Hash' do
48
+ get_xml("field", @object).should be_a(Hash)
49
+ end
50
+
51
+ it 'should return the XML Hash' do
52
+ field_xml_hash = {:attributes! =>
53
+ {:field =>
54
+ {"xmlns:xsi" => "http://www.w3.org/2001/XMLSchema-instance",
55
+ "xsi:type"=>"kalibro:modelXml"
56
+ }
57
+ }
58
+ }
59
+
60
+ get_xml("field", @object).should eq(field_xml_hash)
61
+ end
62
+ end
63
+ end
64
+ end
@@ -0,0 +1,108 @@
1
+ # This file is part of KalibroGatekeeperClient
2
+ # Copyright (C) 2013 it's respectives authors (please see the AUTHORS file)
3
+ #
4
+ # This program is free software: you can redistribute it and/or modify
5
+ # it under the terms of the GNU General Public License as published by
6
+ # the Free Software Foundation, either version 3 of the License, or
7
+ # (at your option) any later version.
8
+ #
9
+ # This program is distributed in the hope that it will be useful,
10
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
+ # GNU General Public License for more details.
13
+
14
+ # You should have received a copy of the GNU General Public License
15
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
16
+
17
+ require 'spec_helper'
18
+
19
+ describe KalibroGatekeeperClient do
20
+
21
+ context 'configuration' do
22
+ #FIXME: there should be a better way to keep the default values
23
+ let(:config) {{address: "http://localhost:8081"}}
24
+
25
+ describe 'config' do
26
+ it 'should return the default configuration' do
27
+ KalibroGatekeeperClient.config.should eq({
28
+ address: "http://localhost:8081"
29
+ })
30
+ end
31
+ end
32
+
33
+ describe 'configure' do
34
+ after(:all) {KalibroGatekeeperClient.configure(config)}
35
+
36
+ it 'should set the address' do
37
+ KalibroGatekeeperClient.configure({address: 'http://test.test'})
38
+ KalibroGatekeeperClient.config.should eq({address: 'http://test.test'})
39
+ end
40
+ end
41
+
42
+ describe 'configure_with' do
43
+ context 'with an existent YAML' do
44
+ after(:all) {KalibroGatekeeperClient.configure(config)}
45
+
46
+ it 'should set the config' do
47
+ KalibroGatekeeperClient.configure_with('spec/savon/fixtures/config.yml')
48
+
49
+ KalibroGatekeeperClient.config.should eq({address: 'http://test1.test1'})
50
+ end
51
+ end
52
+
53
+ context 'with an inexistent YAML' do
54
+ before :each do
55
+ @logger = Logger.new(File::NULL)
56
+ KalibroGatekeeperClient.expects(:logger).returns(@logger)
57
+ end
58
+
59
+ it 'should keep the defaults' do
60
+ KalibroGatekeeperClient.configure_with('spec/savon/fixtures/inexistent_file.yml')
61
+ KalibroGatekeeperClient.config.should eq({address: "http://localhost:8081"})
62
+ end
63
+
64
+ it 'should log an warning' do
65
+ @logger.expects(:warn).with("YAML configuration file couldn't be found. Using defaults.")
66
+
67
+ KalibroGatekeeperClient.configure_with('spec/savon/fixtures/inexistent_file.yml')
68
+ end
69
+ end
70
+
71
+ context 'with an invalid YAML' do
72
+ before :each do
73
+ @logger = Logger.new(File::NULL)
74
+ KalibroGatekeeperClient.expects(:logger).returns(@logger)
75
+ end
76
+
77
+ it 'should keep the defaults' do
78
+ KalibroGatekeeperClient.configure_with('spec/savon/fixtures/invalid_config.yml')
79
+ KalibroGatekeeperClient.config.should eq({address: "http://localhost:8081"})
80
+ end
81
+
82
+ it 'should log an warning' do
83
+ @logger.expects(:warn).with("YAML configuration file contains invalid syntax. Using defaults.")
84
+
85
+ KalibroGatekeeperClient.configure_with('spec/savon/fixtures/invalid_config.yml')
86
+ end
87
+ end
88
+ end
89
+ end
90
+
91
+ context 'Logger' do
92
+ describe 'logger' do
93
+ it 'should return the default logger' do
94
+ KalibroGatekeeperClient.logger.should be_a(Logger)
95
+ end
96
+ end
97
+
98
+ describe 'logger=' do
99
+ it 'should set the logger' do
100
+ logger = Logger.new(STDOUT)
101
+
102
+ KalibroGatekeeperClient.logger = logger
103
+
104
+ KalibroGatekeeperClient.logger.should eq(logger)
105
+ end
106
+ end
107
+ end
108
+ end
@@ -0,0 +1 @@
1
+ address: http://test1.test1
@@ -0,0 +1,2 @@
1
+ ç
2
+ test:
@@ -0,0 +1 @@
1
+ <?xml version="1.0" ?><S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"><S:Body><ns2:projectExistsResponse xmlns:ns2="http://service.kalibro.org/"><exists>false</exists></ns2:projectExistsResponse></S:Body></S:Envelope>
@@ -0,0 +1,14 @@
1
+ module SavonTestHelper
2
+ HttpMock = Struct.new(:code, :headers, :body) do
3
+ def error?
4
+ false
5
+ end
6
+ end
7
+
8
+ def mock_savon_response(xml_response, code = 200, headers = {})
9
+ http = HttpMock.new(code, headers, xml_response)
10
+ savon_local_options = Savon::LocalOptions.new
11
+ savon_global_options = Savon::GlobalOptions.new
12
+ savon_response = Savon::Response.new(http, savon_global_options, savon_local_options)
13
+ end
14
+ end
@@ -0,0 +1,56 @@
1
+ # This file is part of KalibroGatekeeperClient
2
+ # Copyright (C) 2013 it's respectives authors (please see the AUTHORS file)
3
+ #
4
+ # This program is free software: you can redistribute it and/or modify
5
+ # it under the terms of the GNU General Public License as published by
6
+ # the Free Software Foundation, either version 3 of the License, or
7
+ # (at your option) any later version.
8
+ #
9
+ # This program is distributed in the hope that it will be useful,
10
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
+ # GNU General Public License for more details.
13
+
14
+ # You should have received a copy of the GNU General Public License
15
+ # along with this program. If not, see <http://www.gnu.org/licenses/>.
16
+
17
+ require 'mocha/api'
18
+
19
+ # Test coverage report
20
+ require 'simplecov'
21
+ require 'coveralls'
22
+
23
+ SimpleCov.start do
24
+ formatter SimpleCov::Formatter::MultiFormatter[
25
+ Coveralls::SimpleCov::Formatter,
26
+ SimpleCov::Formatter::HTMLFormatter
27
+ ]
28
+ add_group "Entities", "lib/kalibro_gatekeeper_client/entities"
29
+ add_group "Errors", "lib/kalibro_gatekeeper_client/errors"
30
+ add_group "Helpers", "lib/kalibro_gatekeeper_client/helpers"
31
+ add_group "Cucumber Helpers", "lib/kalibro_gatekeeper_client/kalibro_cucumber_helpers"
32
+
33
+ add_filter "/spec/"
34
+ add_filter "/features/"
35
+
36
+ coverage_dir 'coverage/rspec'
37
+ end
38
+
39
+ require 'kalibro_gatekeeper_client'
40
+
41
+ require 'factory_girl'
42
+ FactoryGirl.find_definitions
43
+
44
+ RSpec.configure do |config|
45
+ # Mock Framework
46
+ config.mock_with :mocha
47
+
48
+ # Run specs in random order to surface order dependencies. If you find an
49
+ # order dependency and want to debug it, you can fix the order by providing
50
+ # the seed, which is printed after each run.
51
+ # --seed 1234
52
+ config.order = "random"
53
+
54
+ # Colors
55
+ config.color_enabled = true
56
+ end