eitil 1.2.3 → 1.3.2

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 +4 -4
  2. data/eitil_core/README.md +31 -0
  3. data/eitil_core/lib/eitil_core/string/colorize.rb +30 -0
  4. data/eitil_core/lib/eitil_core/string.rb +1 -0
  5. data/eitil_integrate/lib/eitil_integrate/application_exporter/auto_sum/drop_data.rb +3 -1
  6. data/eitil_integrate/lib/eitil_integrate/application_exporter/initialize.rb +2 -0
  7. data/eitil_integrate/lib/eitil_integrate/application_exporter/style_cells.rb +5 -0
  8. data/eitil_support/lib/eitil_support/stacktrace/audit.rb +9 -0
  9. data/eitil_wrapper/lib/eitil_wrapper/decorators/application_decorator.rb +3 -0
  10. data/eitil_wrapper/lib/eitil_wrapper/decorators/controller_decorator.rb +7 -2
  11. data/lib/eitil/version.rb +1 -1
  12. data/spec/dummy_app/Rakefile +6 -0
  13. data/spec/dummy_app/app/assets/config/manifest.js +4 -0
  14. data/spec/dummy_app/app/assets/javascripts/application.js +15 -0
  15. data/spec/dummy_app/app/assets/javascripts/cable.js +13 -0
  16. data/spec/dummy_app/app/assets/stylesheets/addresses.css +4 -0
  17. data/spec/dummy_app/app/assets/stylesheets/application.css +15 -0
  18. data/spec/dummy_app/app/assets/stylesheets/scaffold.css +80 -0
  19. data/spec/dummy_app/app/assets/stylesheets/users.css +4 -0
  20. data/spec/dummy_app/app/channels/application_cable/channel.rb +4 -0
  21. data/spec/dummy_app/app/channels/application_cable/connection.rb +4 -0
  22. data/spec/dummy_app/app/controllers/addresses_controller.rb +58 -0
  23. data/spec/dummy_app/app/controllers/application_controller.rb +5 -0
  24. data/spec/dummy_app/app/controllers/users_controller.rb +93 -0
  25. data/spec/dummy_app/app/decorators/address_decorator.rb +3 -0
  26. data/spec/dummy_app/app/decorators/application_decorator.rb +12 -0
  27. data/spec/dummy_app/app/decorators/user_decorator.rb +19 -0
  28. data/spec/dummy_app/app/helpers/addresses_helper.rb +2 -0
  29. data/spec/dummy_app/app/helpers/application_helper.rb +2 -0
  30. data/spec/dummy_app/app/helpers/users_helper.rb +2 -0
  31. data/spec/dummy_app/app/jobs/application_job.rb +2 -0
  32. data/spec/dummy_app/app/mailers/application_mailer.rb +4 -0
  33. data/spec/dummy_app/app/models/address.rb +5 -0
  34. data/spec/dummy_app/app/models/application_record.rb +8 -0
  35. data/spec/dummy_app/app/models/user.rb +30 -0
  36. data/spec/dummy_app/app/views/addresses/_form.html.erb +17 -0
  37. data/spec/dummy_app/app/views/addresses/edit.html.erb +6 -0
  38. data/spec/dummy_app/app/views/addresses/index.html.erb +25 -0
  39. data/spec/dummy_app/app/views/addresses/new.html.erb +5 -0
  40. data/spec/dummy_app/app/views/addresses/show.html.erb +4 -0
  41. data/spec/dummy_app/app/views/layouts/application.html.erb +15 -0
  42. data/spec/dummy_app/app/views/layouts/mailer.html.erb +13 -0
  43. data/spec/dummy_app/app/views/layouts/mailer.text.erb +1 -0
  44. data/spec/dummy_app/app/views/users/_form.html.erb +17 -0
  45. data/spec/dummy_app/app/views/users/edit.html.erb +6 -0
  46. data/spec/dummy_app/app/views/users/index.html.erb +25 -0
  47. data/spec/dummy_app/app/views/users/new.html.erb +5 -0
  48. data/spec/dummy_app/app/views/users/show.html.erb +4 -0
  49. data/spec/dummy_app/bin/bundle +3 -0
  50. data/spec/dummy_app/bin/rails +4 -0
  51. data/spec/dummy_app/bin/rake +4 -0
  52. data/spec/dummy_app/bin/setup +36 -0
  53. data/spec/dummy_app/bin/update +31 -0
  54. data/spec/dummy_app/bin/yarn +11 -0
  55. data/spec/dummy_app/config/application.rb +16 -0
  56. data/spec/dummy_app/config/boot.rb +5 -0
  57. data/spec/dummy_app/config/cable.yml +10 -0
  58. data/spec/dummy_app/config/database.yml +25 -0
  59. data/spec/dummy_app/config/environment.rb +11 -0
  60. data/spec/dummy_app/config/environments/development.rb +61 -0
  61. data/spec/dummy_app/config/environments/production.rb +94 -0
  62. data/spec/dummy_app/config/environments/test.rb +46 -0
  63. data/spec/dummy_app/config/initializers/application_controller_renderer.rb +8 -0
  64. data/spec/dummy_app/config/initializers/assets.rb +14 -0
  65. data/spec/dummy_app/config/initializers/backtrace_silencers.rb +7 -0
  66. data/spec/dummy_app/config/initializers/content_security_policy.rb +25 -0
  67. data/spec/dummy_app/config/initializers/cookies_serializer.rb +5 -0
  68. data/spec/dummy_app/config/initializers/filter_parameter_logging.rb +4 -0
  69. data/spec/dummy_app/config/initializers/inflections.rb +16 -0
  70. data/spec/dummy_app/config/initializers/mime_types.rb +4 -0
  71. data/spec/dummy_app/config/initializers/wrap_parameters.rb +14 -0
  72. data/spec/dummy_app/config/locales/en.yml +33 -0
  73. data/spec/dummy_app/config/puma.rb +34 -0
  74. data/spec/dummy_app/config/routes.rb +12 -0
  75. data/spec/dummy_app/config/spring.rb +6 -0
  76. data/spec/dummy_app/config/storage.yml +34 -0
  77. data/spec/dummy_app/config.ru +5 -0
  78. data/spec/dummy_app/db/development.sqlite3 +0 -0
  79. data/spec/dummy_app/db/migrate/20210907114344_create_users.rb +12 -0
  80. data/spec/dummy_app/db/migrate/20210907114557_create_addresses.rb +16 -0
  81. data/spec/dummy_app/db/migrate/20210907131339_add_multiple_columns_to_user.rb +8 -0
  82. data/spec/dummy_app/db/schema.rb +41 -0
  83. data/spec/dummy_app/db/test.sqlite3 +0 -0
  84. data/spec/dummy_app/log/decorator_log.log +42 -0
  85. data/spec/dummy_app/log/development.log +24 -0
  86. data/spec/dummy_app/log/test.log +0 -0
  87. data/spec/dummy_app/package.json +5 -0
  88. data/spec/dummy_app/public/404.html +67 -0
  89. data/spec/dummy_app/public/422.html +67 -0
  90. data/spec/dummy_app/public/500.html +66 -0
  91. data/spec/dummy_app/public/apple-touch-icon-precomposed.png +0 -0
  92. data/spec/dummy_app/public/apple-touch-icon.png +0 -0
  93. data/spec/dummy_app/public/favicon.ico +0 -0
  94. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/2j/2jWL-rhQuwDjyPsAqfz1_wB_H15Kk2ODQ2dAu-XZKx8.cache +1 -0
  95. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/6x/6x9nAtWMtOljHkcAvx9LS3_kzIpD7XoM5jqwKXqN8SU.cache +1 -0
  96. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/7f/7fMKshWzk4gJEbG0FTuuuHVOeF6BG9SoIx1X0yGN4XA.cache +1 -0
  97. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/8-/8-O-UfzZVhbu8Cty_FaH4c3xNM-Sm6U90BGLWmTPpSo.cache +1 -0
  98. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/8a/8a5JUS7sZRAe1CpAiN0iy1n_apTjx0H3rkPqGgg_HHs.cache +1 -0
  99. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/9E/9EI_Wtkx262NF6vdNPozRjkOmUgT5wcyMxwPhhok91Y.cache +1 -0
  100. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/Au/AutOawEb2V5QIxVjqKqmRFpvJ3BHEJvFMIphdZydKPY.cache +0 -0
  101. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/BZ/BZULOBoPeioJ3yr_GDNL-cF1brDPreCMd34hrDbHvX4.cache +0 -0
  102. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/CS/CSs23ds7URW15l5Z5w3b3A6CPJS5ODsgzz0mmAHULF0.cache +1 -0
  103. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/Eu/EuFZYEzbxGLRX803DDnrfKQPcMoGo5ITR-9VuBY_35Q.cache +0 -0
  104. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/FL/FLU4EKYSshHlQjgOqP6RDQ8z7GTRbHhl-2IBWvv363s.cache +0 -0
  105. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/FL/FLl0vmABYcwCTORqhZlx9KLVZvAw1Sic_8-Vs5Q7F3I.cache +0 -0
  106. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/KF/KFlEJcPYkMbf3yhDJTUJ73BpWJ8BMzjQUhpLO1CZqUk.cache +1 -0
  107. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/LN/LNUl7yichb1dUbkovvnOVoVxkVQnhwndYgJRJwoXO_k.cache +1 -0
  108. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/LU/LUq0pj8f6-F5P5ZpVil-_pBLCVTYTqa-qRzQOVFkgGg.cache +1 -0
  109. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/N7/N7Q7f6mqtpX5Lxh78v1mILszsC6Oi9hrt9E8bYTCUg8.cache +0 -0
  110. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/OJ/OJX-7cXh407miinHDx7z55OnuYnifbaiCSjus3I2ETg.cache +0 -0
  111. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/P-/P-WGZR_jmbgi7zjScSIzMbnxmPRhR0FG-sUCbx-W0jA.cache +1 -0
  112. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/Qd/QdDsJNHB1T-o6r9B1zTqkZ6nDWfFlq7i5HIqxsMqOR8.cache +1 -0
  113. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/Qv/QvPvnJIjqHAUeoUdS4dpH_JVRh4znkA7ig3VHz7onhE.cache +1 -0
  114. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/RG/RG1PrmlixwaUlG8BV0kcm_3F7OQekxsrLYjBdf403-k.cache +2 -0
  115. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/TE/TEmdPmCEnqBmIu10fP0G66B333eV_jj1DT6NEM9BY5U.cache +1 -0
  116. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/XM/XMyLLsxd032ZvSGR9P5BcOxAXuQxt_wuaTVdjeuYUeU.cache +0 -0
  117. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/Xn/XnnrCKCkM_Fa5bHMwSjQ_NTBPicUoSK3LOeYu-ZmpYo.cache +0 -0
  118. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/cj/cjpKTBCb00-jq6B1KoFGJrP4kvsl8JACc_pqZAORMlM.cache +0 -0
  119. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/ft/ftREOVuSBdqj0d189uIhUmNEThLHS0nXTyt34tl_G9g.cache +0 -0
  120. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/iD/iDTnVSbZnIij5Xm4jkwCyIXAPDn8RwaRe5Ja8YPKibw.cache +0 -0
  121. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/iU/iU5Zc6hQ2jwcmv6lE2L4aWBJHHMnS1vrh0_LHR574kw.cache +1 -0
  122. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/iZ/iZjLEYDTYhysPjIEb36PhNErZ4rRW1BniBfuH7oa1RI.cache +0 -0
  123. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/ke/keL0ZyrZtXqgSINKKBK3qFEd2fvJSrv8qgU78i1-aqY.cache +1 -0
  124. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/n_/n_xYqQYhwEMQknb3jFQnjlxxBE9TzMNHCdJ-bEyZFIw.cache +0 -0
  125. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/nx/nxTv3sKVUQZADJyM3dPaVmUA78MIsMLD_K279yN_GsI.cache +0 -0
  126. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/pa/pas5TN2JG4i2AUMntaZrRkOZ_AZhFBtsfPaUHKOSdnM.cache +0 -0
  127. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/qP/qPmv5snMrDw830S6hSICDcnIy7kVEWoFKXhGKT38lG4.cache +2 -0
  128. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/uQ/uQImR-NTBFCJ7TsnJRrKAG0zhTcX7vpg_MFvTWvWSGQ.cache +1 -0
  129. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/uo/uosY6jh1_W3cVpcoQY0hcgG2zDeTVR169am2REYxMtI.cache +0 -0
  130. data/spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/yk/ykwP8uOyoTr4wPoEUoyB6Lrx9BG_9mWl6in8AJzBGPw.cache +1 -0
  131. data/spec/dummy_app/tmp/development_secret.txt +1 -0
  132. data/spec/dummy_app/tmp/restart.txt +0 -0
  133. data/spec/eitil_core/argument_helpers/all_args_to_ivars_bang_spec.rb +1 -1
  134. data/spec/eitil_core/argument_helpers/all_args_to_ivars_spec.rb +1 -1
  135. data/spec/eitil_core/argument_helpers/all_kwargs_to_ivars_bang_spec.rb +1 -1
  136. data/spec/eitil_core/argument_helpers/all_kwargs_to_ivars_spec.rb +1 -1
  137. data/spec/eitil_core/argument_helpers/args_to_h_bang_spec.rb +1 -1
  138. data/spec/eitil_core/argument_helpers/args_to_h_spec.rb +1 -1
  139. data/spec/eitil_core/argument_helpers/args_to_ivars_bang_spec.rb +1 -1
  140. data/spec/eitil_core/argument_helpers/args_to_ivars_spec.rb +1 -1
  141. data/spec/eitil_core/array/map_strings_spec.rb +2 -2
  142. data/spec/eitil_core/array/slice_hashes_spec.rb +1 -1
  143. data/spec/eitil_core/datetime/prettify_spec.rb +1 -1
  144. data/spec/eitil_core/errors/raise_error_spec.rb +1 -1
  145. data/spec/eitil_core/float/safe_to_i_spec.rb +1 -1
  146. data/spec/eitil_core/formatters/duck_set_spec.rb +3 -3
  147. data/spec/eitil_core/formatters/sql_spec.rb +3 -3
  148. data/spec/eitil_core/hash/auto_dig_spec.rb +1 -1
  149. data/spec/eitil_core/hash/transform_string_values_spec.rb +2 -2
  150. data/spec/eitil_core/safe_executions/safe_call.rb +1 -1
  151. data/spec/eitil_core/safe_executions/safe_send.rb +1 -1
  152. data/spec/eitil_core/setters/set_ivars_spec.rb +1 -1
  153. data/spec/eitil_core/string/colorize_spec.rb +91 -0
  154. data/spec/eitil_core/string/strip_base64_header_spec.rb +1 -1
  155. data/spec/eitil_core/string/to_filename_spec.rb +1 -1
  156. data/spec/eitil_core/type_checkers/is_num_or_nan_spec.rb +1 -1
  157. data/spec/eitil_integrate/application_exporter/auto_sum_spec.rb +106 -0
  158. data/spec/eitil_integrate/application_exporter/initialize_spec.rb +28 -0
  159. data/spec/eitil_wrapper/callbacks/helper_methods_spec.rb +34 -0
  160. data/spec/eitil_wrapper/decorators/decorators_spec.rb +49 -0
  161. data/spec/eitil_wrapper/jobs/single_method_job_spec.rb +72 -0
  162. data/spec/eitil_wrapper/routes/extended_resources_spec.rb +16 -0
  163. data/spec/eitil_wrapper/scopes/default_scopes_spec.rb +154 -0
  164. data/spec/spec_helper.rb +16 -6
  165. metadata +176 -4
@@ -0,0 +1,28 @@
1
+
2
+ RSpec.describe "EitilIntegrate::RubyXL::ApplicationExporter.new" do
3
+
4
+ let(:exporter) do
5
+ EitilIntegrate::RubyXL::ApplicationExporter.new(start_date: '01-01-2020', end_date: '01-03-2020')
6
+ end
7
+
8
+ it "should convert the string arguments :start_date and :end_date into Date objects" do
9
+ expect(exporter.start_date).to be_a Date
10
+ expect(exporter.end_date).to be_a Date
11
+ end
12
+
13
+ it "should create a :date_range accessor" do
14
+ expect(exporter.date_range).to be_a Range
15
+ expect(exporter.date_range.first).to be_a Date
16
+ end
17
+
18
+ it "should create a RubyXL::Workbook and RubyXL::Worksheet" do
19
+ expect(exporter.book).to be_a RubyXL::Workbook
20
+ expect(exporter.sheet).to be_a RubyXL::Worksheet
21
+ end
22
+
23
+ it "should set the X and Y coordinates to 0" do
24
+ expect(exporter.x).to eq 0
25
+ expect(exporter.y).to eq 0
26
+ end
27
+
28
+ end
@@ -0,0 +1,34 @@
1
+
2
+ RSpec.describe "EitilWrapper::Callbacks" do
3
+
4
+ let(:callbacks) { User.instance_methods(false) }
5
+
6
+ context "for columns of datatype: boolean" do
7
+
8
+ it "should create the callback .{column_name}_became_true" do
9
+ expect(callbacks).to include(:confirmed_became_true)
10
+ end
11
+
12
+ it "should create the callback .{column_name}_becomes_true" do
13
+ expect(callbacks).to include(:confirmed_becomes_true)
14
+ end
15
+
16
+ it "should create the callback .{column_name}_to_true (works for both become and became)" do
17
+ expect(callbacks).to include(:confirmed_to_true)
18
+ end
19
+
20
+ it "should create the callback .{column_name}_became_false" do
21
+ expect(callbacks).to include(:confirmed_became_false)
22
+ end
23
+
24
+ it "should create the callback .{column_name}_becomes_false" do
25
+ expect(callbacks).to include(:confirmed_becomes_false)
26
+ end
27
+
28
+ it "should create the callback .{column_name}_to_false (works for both become and became)" do
29
+ expect(callbacks).to include(:confirmed_to_false)
30
+ end
31
+
32
+ end
33
+
34
+ end
@@ -0,0 +1,49 @@
1
+
2
+ RSpec.describe "EitilWrapper::Decorators" do
3
+
4
+ include Rack::Test::Methods
5
+
6
+ let(:user) { User.create(first_name: 'slim', last_name: 'shady') }
7
+
8
+ def body(endpoint)
9
+ @body ||= JSON.parse(get("/users/#{user.id}/#{endpoint}").body)
10
+ end
11
+
12
+ it "should respond to a request" do
13
+ response = get "/users/#{user.id}/decorator_a"
14
+ expect(response).to be_a Rack::MockResponse
15
+ end
16
+
17
+ it "should, by default, return all of a records' columns" do
18
+ response_keys = body(:decorator_a).keys.map(&:to_sym)
19
+ table_columns = [:id, :created_at, :updated_at, :first_name, :last_name, :email, :birthday, :phone, :confirmed, :last_sign_in, :age, :wage]
20
+ expect(table_columns.all? { |column| response_keys.include?(column) }).to be_truthy
21
+ end
22
+
23
+ it "should, if a specific decorator method is passed, return that method's value" do
24
+ response_keys = body(:decorator_b).keys.map(&:to_sym)
25
+ decorator_keys = [:first_name, :last_name]
26
+ expect(response_keys).to eq decorator_keys
27
+ end
28
+
29
+ it "should, if no decorator method is passed, but param['isMobile'] is present, return the :app method's value" do
30
+ response = post "/users/#{user.id}/decorator_c", { "isMobile" => true }
31
+ response_keys = JSON.parse(response.body).keys.map(&:to_sym)
32
+ decorator_keys = [:phone, :email]
33
+ expect(response_keys).to eq decorator_keys
34
+ end
35
+
36
+ it "should, if no decorator method is passed, but param['isWeb'] is present, return the :web method's value" do
37
+ response = post "/users/#{user.id}/decorator_c", { "isWeb" => true }
38
+ response_keys = JSON.parse(response.body).keys.map(&:to_sym)
39
+ decorator_keys = [:age, :wage]
40
+ expect(response_keys).to eq decorator_keys
41
+ end
42
+
43
+ it "should, if a decorator class is passed, return the value of that class' method" do
44
+ response_keys = body(:decorator_d).keys.map(&:to_sym)
45
+ decorator_keys = [:created_at, :updated_at]
46
+ expect(response_keys).to eq decorator_keys
47
+ end
48
+
49
+ end
@@ -0,0 +1,72 @@
1
+
2
+ RSpec.describe "EitilWrapper::Jobs" do
3
+
4
+ let(:user) { User.create(first_name: "Donald", last_name: "Duck") }
5
+
6
+ it "should create a new method, if the new_job (perform_later) is used for a singleton method" do
7
+ expect(User.methods).to include(:this_is_a_singleton_method_job)
8
+ end
9
+
10
+ it "should create a new method, if the new_job (perform_later) is used for an instance method" do
11
+ expect(User.instance_methods).to include(:this_is_an_instance_method_job)
12
+ end
13
+
14
+ it "should create a new method, if the new_job_now (perform_now) is used for a singleton method" do
15
+ expect(User.methods).to include(:this_is_a_singleton_method_job_now)
16
+ end
17
+
18
+ it "should create a new method, if the new_job_now (perform_now) is used for an instance method" do
19
+ expect(User.instance_methods).to include(:this_is_an_instance_method_job_now)
20
+ end
21
+
22
+ it "should allow us to perform the created singleton perform_later method" do
23
+ begin
24
+ User.this_is_a_singleton_method_job
25
+ status = 'passed'
26
+ rescue
27
+ status = 'failed'
28
+ end
29
+ expect(status).to eq 'passed'
30
+ end
31
+
32
+ it "should allow us to perform the created instance perform_later method" do
33
+ begin
34
+ user.this_is_an_instance_method_job
35
+ status = 'passed'
36
+ rescue
37
+ status = 'failed'
38
+ end
39
+ expect(status).to eq 'passed'
40
+ end
41
+
42
+ it "should allow us to perform the created singleton perform_now method" do
43
+ begin
44
+ User.this_is_a_singleton_method_job_now
45
+ status = 'passed'
46
+ rescue
47
+ status = 'failed'
48
+ end
49
+ expect(status).to eq 'passed'
50
+ end
51
+
52
+ it "should allow us to perform the created instance perform_now method" do
53
+ begin
54
+ user.this_is_an_instance_method_job_now
55
+ status = 'passed'
56
+ rescue
57
+ status = 'failed'
58
+ end
59
+ expect(status).to eq 'passed'
60
+ end
61
+
62
+ it "should accept positional arguments" do
63
+ return_value = User.this_is_a_singleton_method_job_now("positional_argument")
64
+ expect(return_value).to eq "positional_argument"
65
+ end
66
+
67
+ it "should accept keyword arguments " do
68
+ return_value = User.this_is_a_singleton_method_job_now(keyword_value: "keyword_argument")
69
+ expect(return_value).to eq "keyword_argument"
70
+ end
71
+
72
+ end
@@ -0,0 +1,16 @@
1
+
2
+ # NOT YET IMPLEMENTED, SINCE THIS PART OF EITIL IS NOT YET IN USE.
3
+ # FIRST HOOK UP INTO EITJE_API, SINCE THAT MAY CHANGE THE FUNCTIONALITY.
4
+
5
+ # RSpec.describe "EitilWrapper::Routes" do
6
+
7
+ # before do
8
+ # @pretty_routes = `cd spec/dummy_app && rails routes`
9
+ # @routes = @pretty_routes.gsub(/[ \t]+/, ' ')
10
+ # end
11
+
12
+ # it "should " do
13
+ # expect(@routes).to include('POST /users(.:format) users#create')
14
+ # end
15
+
16
+ # end
@@ -0,0 +1,154 @@
1
+
2
+ RSpec.describe "EitilWrapper::Scopes" do
3
+
4
+ let(:scopes) { User.singleton_methods(false) }
5
+
6
+ context "for columns of datatype: boolean" do
7
+
8
+ it "should create the scope .{column_name}_true" do
9
+ expect(scopes).to include(:confirmed_true)
10
+ end
11
+
12
+ it "should create the scope .{column_name}_false" do
13
+ expect(scopes).to include(:confirmed_false)
14
+ end
15
+
16
+ end
17
+
18
+ context "for columns of datatype: date" do
19
+
20
+ it "should create the scope .{column_name}_today" do
21
+ expect(scopes).to include(:birthday_today)
22
+ end
23
+
24
+ it "should create the scope .{column_name}_past" do
25
+ expect(scopes).to include(:birthday_past)
26
+ end
27
+
28
+ it "should create the scope .{column_name}_future" do
29
+ expect(scopes).to include(:birthday_future)
30
+ end
31
+
32
+ it "should create the scope .{column_name}_on_date(date)" do
33
+ expect(scopes).to include(:birthday_on_date)
34
+ end
35
+
36
+ it "should create the scope .{column_name}_before_date(date)" do
37
+ expect(scopes).to include(:birthday_before_date)
38
+ end
39
+
40
+ it "should create the scope .{column_name}_after_date(date)" do
41
+ expect(scopes).to include(:birthday_after_date)
42
+ end
43
+
44
+ it "should create the scope .{column_name}_between_dates(start_date, end_date)" do
45
+ expect(scopes).to include(:birthday_between_dates)
46
+ end
47
+
48
+ it "should create the scope .{column_name}_oldest_first" do
49
+ expect(scopes).to include(:birthday_oldest_first)
50
+ end
51
+
52
+ it "should create the scope .{column_name}_newest_first" do
53
+ expect(scopes).to include(:birthday_newest_first)
54
+ end
55
+
56
+ end
57
+
58
+ context "for columns of datatype: datetime" do
59
+
60
+ it "should create the scope .{column_name}_today" do
61
+ expect(scopes).to include(:last_sign_in_today)
62
+ end
63
+
64
+ it "should create the scope .{column_name}_past" do
65
+ expect(scopes).to include(:last_sign_in_past)
66
+ end
67
+
68
+ it "should create the scope .{column_name}_future" do
69
+ expect(scopes).to include(:last_sign_in_future)
70
+ end
71
+
72
+ it "should create the scope .{column_name}_on_date(date)" do
73
+ expect(scopes).to include(:last_sign_in_on_date)
74
+ end
75
+
76
+ it "should create the scope .{column_name}_before_date(date)" do
77
+ expect(scopes).to include(:last_sign_in_before_date)
78
+ end
79
+
80
+ it "should create the scope .{column_name}_after_date(date)" do
81
+ expect(scopes).to include(:last_sign_in_after_date)
82
+ end
83
+
84
+ it "should create the scope .{column_name}_between_dates(start_date, end_date)" do
85
+ expect(scopes).to include(:last_sign_in_between_dates)
86
+ end
87
+
88
+ it "should create the scope .{column_name}_oldest_first" do
89
+ expect(scopes).to include(:last_sign_in_oldest_first)
90
+ end
91
+
92
+ it "should create the scope .{column_name}_newest_first" do
93
+ expect(scopes).to include(:last_sign_in_newest_first)
94
+ end
95
+
96
+ end
97
+
98
+ context "for columns of datatype: integer" do
99
+
100
+ it "should create the scope .{column_name}_equal_to(number)" do
101
+ expect(scopes).to include(:age_equal_to)
102
+ end
103
+
104
+ it "should create the scope .{column_name}_lower_than(number)" do
105
+ expect(scopes).to include(:age_lower_than)
106
+ end
107
+
108
+ it "should create the scope .{column_name}_higher_than(number)" do
109
+ expect(scopes).to include(:age_higher_than)
110
+ end
111
+
112
+ it "should create the scope .{column_name}_between(min, max)" do
113
+ expect(scopes).to include(:age_between)
114
+ end
115
+
116
+ it "should create the scope .{column_name}_ascending" do
117
+ expect(scopes).to include(:age_ascending)
118
+ end
119
+
120
+ it "should create the scope .{column_name}_descending" do
121
+ expect(scopes).to include(:age_descending)
122
+ end
123
+
124
+ end
125
+
126
+ context "for columns of datatype: float" do
127
+
128
+ it "should create the scope .{column_name}_equal_to(number)" do
129
+ expect(scopes).to include(:wage_equal_to)
130
+ end
131
+
132
+ it "should create the scope .{column_name}_lower_than(number)" do
133
+ expect(scopes).to include(:wage_lower_than)
134
+ end
135
+
136
+ it "should create the scope .{column_name}_higher_than(number)" do
137
+ expect(scopes).to include(:wage_higher_than)
138
+ end
139
+
140
+ it "should create the scope .{column_name}_between(min, max)" do
141
+ expect(scopes).to include(:wage_between)
142
+ end
143
+
144
+ it "should create the scope .{column_name}_ascending" do
145
+ expect(scopes).to include(:wage_ascending)
146
+ end
147
+
148
+ it "should create the scope .{column_name}_descending" do
149
+ expect(scopes).to include(:wage_descending)
150
+ end
151
+
152
+ end
153
+
154
+ end
data/spec/spec_helper.rb CHANGED
@@ -4,19 +4,22 @@ require 'rails'
4
4
 
5
5
  require 'eitil'
6
6
 
7
- # Implement specs for other railties later on, start with eitil_core.
7
+ # Eventually implement specs for all layers.
8
8
 
9
9
  require "eitil_core/railtie"
10
+ require "eitil_integrate/railtie"
11
+ require "eitil_wrapper/railtie"
10
12
  # require "eitil_store/railtie"
11
- # require "eitil_integrate/railtie"
12
13
  # require "eitil_support/railtie"
13
- # require "eitil_wrapper/railtie"
14
14
 
15
15
  require "eitil_core"
16
+ require "eitil_integrate"
17
+ require "eitil_wrapper"
16
18
  # require "eitil_store"
17
- # require "eitil_integrate"
18
19
  # require "eitil_support"
19
- # require "eitil_wrapper"
20
+
21
+ ENV['RAILS_ENV'] ||= 'test'
22
+ require File.expand_path('dummy_app/config/environment', __dir__)
20
23
 
21
24
  RSpec.configure do |config|
22
25
 
@@ -52,4 +55,11 @@ end
52
55
  # which gives quite a lot of information about the tests, as default
53
56
  RSpec.configure do |config|
54
57
  config.formatter = :documentation
55
- end
58
+ end
59
+
60
+
61
+ # added by us, required to prevent an error in Rack::Test
62
+ def app
63
+ Rails.application
64
+ end
65
+
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eitil
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.3
4
+ version: 1.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jurriaan Schrofer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-09-06 00:00:00.000000000 Z
11
+ date: 2021-09-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -66,6 +66,20 @@ dependencies:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: pry
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
69
83
  - !ruby/object:Gem::Dependency
70
84
  name: rspec-rails
71
85
  requirement: !ruby/object:Gem::Requirement
@@ -81,7 +95,35 @@ dependencies:
81
95
  - !ruby/object:Gem::Version
82
96
  version: 5.0.2
83
97
  - !ruby/object:Gem::Dependency
84
- name: pry
98
+ name: pry-rescue
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: pry-stack_explorer
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: sqlite3
85
127
  requirement: !ruby/object:Gem::Requirement
86
128
  requirements:
87
129
  - - ">="
@@ -95,7 +137,7 @@ dependencies:
95
137
  - !ruby/object:Gem::Version
96
138
  version: '0'
97
139
  - !ruby/object:Gem::Dependency
98
- name: pry-rails
140
+ name: puma
99
141
  requirement: !ruby/object:Gem::Requirement
100
142
  requirements:
101
143
  - - ">="
@@ -179,6 +221,7 @@ files:
179
221
  - eitil_core/lib/eitil_core/setters.rb
180
222
  - eitil_core/lib/eitil_core/setters/set_ivars.rb
181
223
  - eitil_core/lib/eitil_core/string.rb
224
+ - eitil_core/lib/eitil_core/string/colorize.rb
182
225
  - eitil_core/lib/eitil_core/string/strip_base64_header.rb
183
226
  - eitil_core/lib/eitil_core/string/to_filename.rb
184
227
  - eitil_core/lib/eitil_core/type_checkers.rb
@@ -248,6 +291,127 @@ files:
248
291
  - lib/eitil/all.rb
249
292
  - lib/eitil/railtie.rb
250
293
  - lib/eitil/version.rb
294
+ - spec/dummy_app/Rakefile
295
+ - spec/dummy_app/app/assets/config/manifest.js
296
+ - spec/dummy_app/app/assets/javascripts/application.js
297
+ - spec/dummy_app/app/assets/javascripts/cable.js
298
+ - spec/dummy_app/app/assets/stylesheets/addresses.css
299
+ - spec/dummy_app/app/assets/stylesheets/application.css
300
+ - spec/dummy_app/app/assets/stylesheets/scaffold.css
301
+ - spec/dummy_app/app/assets/stylesheets/users.css
302
+ - spec/dummy_app/app/channels/application_cable/channel.rb
303
+ - spec/dummy_app/app/channels/application_cable/connection.rb
304
+ - spec/dummy_app/app/controllers/addresses_controller.rb
305
+ - spec/dummy_app/app/controllers/application_controller.rb
306
+ - spec/dummy_app/app/controllers/users_controller.rb
307
+ - spec/dummy_app/app/decorators/address_decorator.rb
308
+ - spec/dummy_app/app/decorators/application_decorator.rb
309
+ - spec/dummy_app/app/decorators/user_decorator.rb
310
+ - spec/dummy_app/app/helpers/addresses_helper.rb
311
+ - spec/dummy_app/app/helpers/application_helper.rb
312
+ - spec/dummy_app/app/helpers/users_helper.rb
313
+ - spec/dummy_app/app/jobs/application_job.rb
314
+ - spec/dummy_app/app/mailers/application_mailer.rb
315
+ - spec/dummy_app/app/models/address.rb
316
+ - spec/dummy_app/app/models/application_record.rb
317
+ - spec/dummy_app/app/models/user.rb
318
+ - spec/dummy_app/app/views/addresses/_form.html.erb
319
+ - spec/dummy_app/app/views/addresses/edit.html.erb
320
+ - spec/dummy_app/app/views/addresses/index.html.erb
321
+ - spec/dummy_app/app/views/addresses/new.html.erb
322
+ - spec/dummy_app/app/views/addresses/show.html.erb
323
+ - spec/dummy_app/app/views/layouts/application.html.erb
324
+ - spec/dummy_app/app/views/layouts/mailer.html.erb
325
+ - spec/dummy_app/app/views/layouts/mailer.text.erb
326
+ - spec/dummy_app/app/views/users/_form.html.erb
327
+ - spec/dummy_app/app/views/users/edit.html.erb
328
+ - spec/dummy_app/app/views/users/index.html.erb
329
+ - spec/dummy_app/app/views/users/new.html.erb
330
+ - spec/dummy_app/app/views/users/show.html.erb
331
+ - spec/dummy_app/bin/bundle
332
+ - spec/dummy_app/bin/rails
333
+ - spec/dummy_app/bin/rake
334
+ - spec/dummy_app/bin/setup
335
+ - spec/dummy_app/bin/update
336
+ - spec/dummy_app/bin/yarn
337
+ - spec/dummy_app/config.ru
338
+ - spec/dummy_app/config/application.rb
339
+ - spec/dummy_app/config/boot.rb
340
+ - spec/dummy_app/config/cable.yml
341
+ - spec/dummy_app/config/database.yml
342
+ - spec/dummy_app/config/environment.rb
343
+ - spec/dummy_app/config/environments/development.rb
344
+ - spec/dummy_app/config/environments/production.rb
345
+ - spec/dummy_app/config/environments/test.rb
346
+ - spec/dummy_app/config/initializers/application_controller_renderer.rb
347
+ - spec/dummy_app/config/initializers/assets.rb
348
+ - spec/dummy_app/config/initializers/backtrace_silencers.rb
349
+ - spec/dummy_app/config/initializers/content_security_policy.rb
350
+ - spec/dummy_app/config/initializers/cookies_serializer.rb
351
+ - spec/dummy_app/config/initializers/filter_parameter_logging.rb
352
+ - spec/dummy_app/config/initializers/inflections.rb
353
+ - spec/dummy_app/config/initializers/mime_types.rb
354
+ - spec/dummy_app/config/initializers/wrap_parameters.rb
355
+ - spec/dummy_app/config/locales/en.yml
356
+ - spec/dummy_app/config/puma.rb
357
+ - spec/dummy_app/config/routes.rb
358
+ - spec/dummy_app/config/spring.rb
359
+ - spec/dummy_app/config/storage.yml
360
+ - spec/dummy_app/db/development.sqlite3
361
+ - spec/dummy_app/db/migrate/20210907114344_create_users.rb
362
+ - spec/dummy_app/db/migrate/20210907114557_create_addresses.rb
363
+ - spec/dummy_app/db/migrate/20210907131339_add_multiple_columns_to_user.rb
364
+ - spec/dummy_app/db/schema.rb
365
+ - spec/dummy_app/db/test.sqlite3
366
+ - spec/dummy_app/log/decorator_log.log
367
+ - spec/dummy_app/log/development.log
368
+ - spec/dummy_app/log/test.log
369
+ - spec/dummy_app/package.json
370
+ - spec/dummy_app/public/404.html
371
+ - spec/dummy_app/public/422.html
372
+ - spec/dummy_app/public/500.html
373
+ - spec/dummy_app/public/apple-touch-icon-precomposed.png
374
+ - spec/dummy_app/public/apple-touch-icon.png
375
+ - spec/dummy_app/public/favicon.ico
376
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/2j/2jWL-rhQuwDjyPsAqfz1_wB_H15Kk2ODQ2dAu-XZKx8.cache
377
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/6x/6x9nAtWMtOljHkcAvx9LS3_kzIpD7XoM5jqwKXqN8SU.cache
378
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/7f/7fMKshWzk4gJEbG0FTuuuHVOeF6BG9SoIx1X0yGN4XA.cache
379
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/8-/8-O-UfzZVhbu8Cty_FaH4c3xNM-Sm6U90BGLWmTPpSo.cache
380
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/8a/8a5JUS7sZRAe1CpAiN0iy1n_apTjx0H3rkPqGgg_HHs.cache
381
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/9E/9EI_Wtkx262NF6vdNPozRjkOmUgT5wcyMxwPhhok91Y.cache
382
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/Au/AutOawEb2V5QIxVjqKqmRFpvJ3BHEJvFMIphdZydKPY.cache
383
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/BZ/BZULOBoPeioJ3yr_GDNL-cF1brDPreCMd34hrDbHvX4.cache
384
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/CS/CSs23ds7URW15l5Z5w3b3A6CPJS5ODsgzz0mmAHULF0.cache
385
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/Eu/EuFZYEzbxGLRX803DDnrfKQPcMoGo5ITR-9VuBY_35Q.cache
386
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/FL/FLU4EKYSshHlQjgOqP6RDQ8z7GTRbHhl-2IBWvv363s.cache
387
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/FL/FLl0vmABYcwCTORqhZlx9KLVZvAw1Sic_8-Vs5Q7F3I.cache
388
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/KF/KFlEJcPYkMbf3yhDJTUJ73BpWJ8BMzjQUhpLO1CZqUk.cache
389
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/LN/LNUl7yichb1dUbkovvnOVoVxkVQnhwndYgJRJwoXO_k.cache
390
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/LU/LUq0pj8f6-F5P5ZpVil-_pBLCVTYTqa-qRzQOVFkgGg.cache
391
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/N7/N7Q7f6mqtpX5Lxh78v1mILszsC6Oi9hrt9E8bYTCUg8.cache
392
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/OJ/OJX-7cXh407miinHDx7z55OnuYnifbaiCSjus3I2ETg.cache
393
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/P-/P-WGZR_jmbgi7zjScSIzMbnxmPRhR0FG-sUCbx-W0jA.cache
394
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/Qd/QdDsJNHB1T-o6r9B1zTqkZ6nDWfFlq7i5HIqxsMqOR8.cache
395
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/Qv/QvPvnJIjqHAUeoUdS4dpH_JVRh4znkA7ig3VHz7onhE.cache
396
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/RG/RG1PrmlixwaUlG8BV0kcm_3F7OQekxsrLYjBdf403-k.cache
397
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/TE/TEmdPmCEnqBmIu10fP0G66B333eV_jj1DT6NEM9BY5U.cache
398
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/XM/XMyLLsxd032ZvSGR9P5BcOxAXuQxt_wuaTVdjeuYUeU.cache
399
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/Xn/XnnrCKCkM_Fa5bHMwSjQ_NTBPicUoSK3LOeYu-ZmpYo.cache
400
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/cj/cjpKTBCb00-jq6B1KoFGJrP4kvsl8JACc_pqZAORMlM.cache
401
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/ft/ftREOVuSBdqj0d189uIhUmNEThLHS0nXTyt34tl_G9g.cache
402
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/iD/iDTnVSbZnIij5Xm4jkwCyIXAPDn8RwaRe5Ja8YPKibw.cache
403
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/iU/iU5Zc6hQ2jwcmv6lE2L4aWBJHHMnS1vrh0_LHR574kw.cache
404
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/iZ/iZjLEYDTYhysPjIEb36PhNErZ4rRW1BniBfuH7oa1RI.cache
405
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/ke/keL0ZyrZtXqgSINKKBK3qFEd2fvJSrv8qgU78i1-aqY.cache
406
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/n_/n_xYqQYhwEMQknb3jFQnjlxxBE9TzMNHCdJ-bEyZFIw.cache
407
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/nx/nxTv3sKVUQZADJyM3dPaVmUA78MIsMLD_K279yN_GsI.cache
408
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/pa/pas5TN2JG4i2AUMntaZrRkOZ_AZhFBtsfPaUHKOSdnM.cache
409
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/qP/qPmv5snMrDw830S6hSICDcnIy7kVEWoFKXhGKT38lG4.cache
410
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/uQ/uQImR-NTBFCJ7TsnJRrKAG0zhTcX7vpg_MFvTWvWSGQ.cache
411
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/uo/uosY6jh1_W3cVpcoQY0hcgG2zDeTVR169am2REYxMtI.cache
412
+ - spec/dummy_app/tmp/cache/assets/sprockets/v4.0.0/yk/ykwP8uOyoTr4wPoEUoyB6Lrx9BG_9mWl6in8AJzBGPw.cache
413
+ - spec/dummy_app/tmp/development_secret.txt
414
+ - spec/dummy_app/tmp/restart.txt
251
415
  - spec/eitil_core/argument_helpers/all_args_to_ivars_bang_spec.rb
252
416
  - spec/eitil_core/argument_helpers/all_args_to_ivars_spec.rb
253
417
  - spec/eitil_core/argument_helpers/all_kwargs_to_ivars_bang_spec.rb
@@ -268,9 +432,17 @@ files:
268
432
  - spec/eitil_core/safe_executions/safe_call.rb
269
433
  - spec/eitil_core/safe_executions/safe_send.rb
270
434
  - spec/eitil_core/setters/set_ivars_spec.rb
435
+ - spec/eitil_core/string/colorize_spec.rb
271
436
  - spec/eitil_core/string/strip_base64_header_spec.rb
272
437
  - spec/eitil_core/string/to_filename_spec.rb
273
438
  - spec/eitil_core/type_checkers/is_num_or_nan_spec.rb
439
+ - spec/eitil_integrate/application_exporter/auto_sum_spec.rb
440
+ - spec/eitil_integrate/application_exporter/initialize_spec.rb
441
+ - spec/eitil_wrapper/callbacks/helper_methods_spec.rb
442
+ - spec/eitil_wrapper/decorators/decorators_spec.rb
443
+ - spec/eitil_wrapper/jobs/single_method_job_spec.rb
444
+ - spec/eitil_wrapper/routes/extended_resources_spec.rb
445
+ - spec/eitil_wrapper/scopes/default_scopes_spec.rb
274
446
  - spec/spec_helper.rb
275
447
  homepage: https://github.com/eitje-app/eitil_engine
276
448
  licenses: