better_record 0.1.1 → 0.2.0

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 (98) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +12 -18
  3. data/app/models/better_record/table_size.rb +30 -28
  4. data/config/initializers/{money_type.rb → active_record/money_type.rb} +0 -0
  5. data/config/initializers/{boolean.rb → core_ext/boolean.rb} +0 -0
  6. data/config/initializers/core_ext/date.rb +9 -0
  7. data/config/initializers/{integer.rb → core_ext/integer.rb} +0 -0
  8. data/config/initializers/dkim.rb +7 -0
  9. data/config/initializers/redis_store.rb +24 -0
  10. data/lib/better_record.rb +6 -4
  11. data/lib/better_record/engine.rb +7 -0
  12. data/lib/better_record/fake_redis.rb +94 -0
  13. data/lib/better_record/version.rb +1 -1
  14. data/lib/tasks/spec/attributes.rake +7 -1
  15. data/spec/dummy/Rakefile +6 -0
  16. data/spec/dummy/app/assets/config/manifest.js +4 -0
  17. data/spec/dummy/app/assets/javascripts/application.js +15 -0
  18. data/spec/dummy/app/assets/javascripts/cable.js +13 -0
  19. data/spec/dummy/app/assets/stylesheets/application.css +15 -0
  20. data/spec/dummy/app/channels/application_cable/channel.rb +4 -0
  21. data/spec/dummy/app/channels/application_cable/connection.rb +4 -0
  22. data/spec/dummy/app/controllers/application_controller.rb +2 -0
  23. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  24. data/spec/dummy/app/jobs/application_job.rb +2 -0
  25. data/spec/dummy/app/mailers/application_mailer.rb +4 -0
  26. data/spec/dummy/app/models/application_record.rb +3 -0
  27. data/spec/dummy/app/models/test_audit.rb +2 -0
  28. data/spec/dummy/app/models/test_custom_audit.rb +2 -0
  29. data/spec/dummy/app/views/layouts/application.html.erb +15 -0
  30. data/spec/dummy/app/views/layouts/mailer.html.erb +13 -0
  31. data/spec/dummy/app/views/layouts/mailer.text.erb +1 -0
  32. data/spec/dummy/bin/bundle +3 -0
  33. data/spec/dummy/bin/rails +4 -0
  34. data/spec/dummy/bin/rake +4 -0
  35. data/spec/dummy/bin/setup +36 -0
  36. data/spec/dummy/bin/update +31 -0
  37. data/spec/dummy/bin/yarn +11 -0
  38. data/spec/dummy/config.ru +5 -0
  39. data/spec/dummy/config/application.rb +19 -0
  40. data/spec/dummy/config/boot.rb +5 -0
  41. data/spec/dummy/config/cable.yml +10 -0
  42. data/spec/dummy/config/database.yml +25 -0
  43. data/spec/dummy/config/environment.rb +5 -0
  44. data/spec/dummy/config/environments/development.rb +61 -0
  45. data/spec/dummy/config/environments/production.rb +94 -0
  46. data/spec/dummy/config/environments/test.rb +46 -0
  47. data/spec/dummy/config/initializers/application_controller_renderer.rb +8 -0
  48. data/spec/dummy/config/initializers/assets.rb +14 -0
  49. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  50. data/spec/dummy/config/initializers/better_record.rb +42 -0
  51. data/{config → spec/dummy/config}/initializers/content_security_policy.rb +0 -0
  52. data/spec/dummy/config/initializers/cookies_serializer.rb +5 -0
  53. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  54. data/spec/dummy/config/initializers/inflections.rb +16 -0
  55. data/spec/dummy/config/initializers/mime_types.rb +4 -0
  56. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  57. data/spec/dummy/config/locales/en.yml +33 -0
  58. data/spec/dummy/config/puma.rb +34 -0
  59. data/spec/dummy/config/routes.rb +3 -0
  60. data/spec/dummy/config/spring.rb +6 -0
  61. data/spec/dummy/config/storage.yml +34 -0
  62. data/spec/dummy/db/migrate/20180725233004_create_test_audits.rb +11 -0
  63. data/spec/dummy/db/migrate/20180725233007_create_test_custom_audits.rb +12 -0
  64. data/spec/dummy/db/migrate/20180725235254_create_better_record_db_functions.better_record.rb +95 -0
  65. data/spec/dummy/db/migrate/20180725235255_create_better_record_table_sizes.better_record.rb +25 -0
  66. data/spec/dummy/db/structure.sql +781 -0
  67. data/spec/dummy/lib/templates/active_record/model/model.rb +31 -0
  68. data/spec/dummy/lib/templates/rspec/model/model_spec.rb +17 -0
  69. data/spec/dummy/log/development.log +2495 -0
  70. data/spec/dummy/log/test.log +197 -0
  71. data/spec/dummy/package.json +5 -0
  72. data/spec/dummy/public/404.html +67 -0
  73. data/spec/dummy/public/422.html +67 -0
  74. data/spec/dummy/public/500.html +66 -0
  75. data/spec/dummy/public/apple-touch-icon-precomposed.png +0 -0
  76. data/spec/dummy/public/apple-touch-icon.png +0 -0
  77. data/spec/dummy/public/favicon.ico +0 -0
  78. data/spec/dummy/spec/factories/test_audits.rb +7 -0
  79. data/spec/dummy/spec/factories/test_custom_audits.rb +8 -0
  80. data/spec/dummy/spec/models/test_audit_spec.rb +5 -0
  81. data/spec/dummy/spec/models/test_custom_audit_spec.rb +5 -0
  82. data/spec/factories/better_record_table_sizes.rb +16 -0
  83. data/spec/factories/test_audits.rb +7 -0
  84. data/spec/factories/test_custom_audits.rb +8 -0
  85. data/spec/lib/generators/better_record/install_generator_test.rb +16 -0
  86. data/spec/method_helper.rb +7 -0
  87. data/spec/method_helper/functions.rb +9 -0
  88. data/spec/method_helper/functions/boolean_column.rb +52 -0
  89. data/spec/method_helper/functions/has_valid_factory.rb +20 -0
  90. data/spec/method_helper/functions/optional_column.rb +17 -0
  91. data/spec/method_helper/functions/required_column.rb +35 -0
  92. data/spec/models/better_record/logged_action_spec.rb +35 -0
  93. data/spec/models/better_record/table_size_spec.rb +26 -0
  94. data/spec/models/test_audit_spec.rb +5 -0
  95. data/spec/models/test_custom_audit_spec.rb +5 -0
  96. data/spec/rails_helper.rb +36 -0
  97. data/spec/tmp/testes +0 -0
  98. metadata +204 -7
@@ -0,0 +1,197 @@
1
+  (0.1ms) SELECT pg_try_advisory_lock(2732175912342162195)
2
+  (0.3ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
3
+ ActiveRecord::InternalMetadata Load (0.2ms) SELECT "ar_internal_metadata".* FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = $1 LIMIT $2 [["key", "environment"], ["LIMIT", 1]]
4
+  (0.2ms) BEGIN
5
+  (0.1ms) COMMIT
6
+  (0.2ms) SELECT pg_advisory_unlock(2732175912342162195)
7
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
8
+  (0.1ms) BEGIN
9
+  (0.1ms) ROLLBACK
10
+  (0.0ms) BEGIN
11
+  (0.1ms) ROLLBACK
12
+  (0.0ms) BEGIN
13
+  (8.4ms)  BEGIN WORK;
14
+ LOCK TABLE auditing.table_sizes;
15
+ TRUNCATE TABLE auditing.table_sizes;
16
+ INSERT INTO auditing.table_sizes (
17
+ SELECT
18
+ *,
19
+ pg_size_pretty(total_bytes) AS total,
20
+ pg_size_pretty(idx_bytes) AS idx,
21
+ pg_size_pretty(toast_bytes) AS toast,
22
+ pg_size_pretty(tbl_bytes) AS tbl
23
+ FROM (
24
+ SELECT
25
+ *,
26
+ total_bytes - idx_bytes - COALESCE(toast_bytes,0) AS tbl_bytes
27
+ FROM (
28
+ SELECT c.oid,nspname AS schema, relname AS name
29
+ , c.reltuples AS row_estimate
30
+ , pg_total_relation_size(c.oid) AS total_bytes
31
+ , pg_indexes_size(c.oid) AS idx_bytes
32
+ , pg_total_relation_size(reltoastrelid) AS toast_bytes
33
+ FROM pg_class c
34
+ LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
35
+ WHERE relkind = 'r'
36
+ ) table_sizes
37
+ ) table_sizes
38
+ );
39
+ COMMIT WORK;
40
+ 
41
+  (0.3ms) SAVEPOINT active_record_1
42
+  (0.1ms) ROLLBACK
43
+  (0.1ms) BEGIN
44
+  (8.4ms)  BEGIN WORK;
45
+ LOCK TABLE auditing.table_sizes;
46
+ TRUNCATE TABLE auditing.table_sizes;
47
+ INSERT INTO auditing.table_sizes (
48
+ SELECT
49
+ *,
50
+ pg_size_pretty(total_bytes) AS total,
51
+ pg_size_pretty(idx_bytes) AS idx,
52
+ pg_size_pretty(toast_bytes) AS toast,
53
+ pg_size_pretty(tbl_bytes) AS tbl
54
+ FROM (
55
+ SELECT
56
+ *,
57
+ total_bytes - idx_bytes - COALESCE(toast_bytes,0) AS tbl_bytes
58
+ FROM (
59
+ SELECT c.oid,nspname AS schema, relname AS name
60
+ , c.reltuples AS row_estimate
61
+ , pg_total_relation_size(c.oid) AS total_bytes
62
+ , pg_indexes_size(c.oid) AS idx_bytes
63
+ , pg_total_relation_size(reltoastrelid) AS toast_bytes
64
+ FROM pg_class c
65
+ LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
66
+ WHERE relkind = 'r'
67
+ ) table_sizes
68
+ ) table_sizes
69
+ );
70
+ COMMIT WORK;
71
+ 
72
+  (0.2ms) SAVEPOINT active_record_1
73
+  (0.1ms) ROLLBACK
74
+  (0.1ms) BEGIN
75
+  (16.2ms)  BEGIN WORK;
76
+ LOCK TABLE auditing.table_sizes;
77
+ TRUNCATE TABLE auditing.table_sizes;
78
+ INSERT INTO auditing.table_sizes (
79
+ SELECT
80
+ *,
81
+ pg_size_pretty(total_bytes) AS total,
82
+ pg_size_pretty(idx_bytes) AS idx,
83
+ pg_size_pretty(toast_bytes) AS toast,
84
+ pg_size_pretty(tbl_bytes) AS tbl
85
+ FROM (
86
+ SELECT
87
+ *,
88
+ total_bytes - idx_bytes - COALESCE(toast_bytes,0) AS tbl_bytes
89
+ FROM (
90
+ SELECT c.oid,nspname AS schema, relname AS name
91
+ , c.reltuples AS row_estimate
92
+ , pg_total_relation_size(c.oid) AS total_bytes
93
+ , pg_indexes_size(c.oid) AS idx_bytes
94
+ , pg_total_relation_size(reltoastrelid) AS toast_bytes
95
+ FROM pg_class c
96
+ LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
97
+ WHERE relkind = 'r'
98
+ ) table_sizes
99
+ ) table_sizes
100
+ );
101
+ COMMIT WORK;
102
+ 
103
+  (0.4ms) SAVEPOINT active_record_1
104
+  (0.3ms) ROLLBACK
105
+  (0.0ms) BEGIN
106
+  (9.3ms)  BEGIN WORK;
107
+ LOCK TABLE auditing.table_sizes;
108
+ TRUNCATE TABLE auditing.table_sizes;
109
+ INSERT INTO auditing.table_sizes (
110
+ SELECT
111
+ *,
112
+ pg_size_pretty(total_bytes) AS total,
113
+ pg_size_pretty(idx_bytes) AS idx,
114
+ pg_size_pretty(toast_bytes) AS toast,
115
+ pg_size_pretty(tbl_bytes) AS tbl
116
+ FROM (
117
+ SELECT
118
+ *,
119
+ total_bytes - idx_bytes - COALESCE(toast_bytes,0) AS tbl_bytes
120
+ FROM (
121
+ SELECT c.oid,nspname AS schema, relname AS name
122
+ , c.reltuples AS row_estimate
123
+ , pg_total_relation_size(c.oid) AS total_bytes
124
+ , pg_indexes_size(c.oid) AS idx_bytes
125
+ , pg_total_relation_size(reltoastrelid) AS toast_bytes
126
+ FROM pg_class c
127
+ LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
128
+ WHERE relkind = 'r'
129
+ ) table_sizes
130
+ ) table_sizes
131
+ );
132
+ COMMIT WORK;
133
+ 
134
+  (0.2ms) SAVEPOINT active_record_1
135
+  (0.1ms) ROLLBACK
136
+  (0.1ms) BEGIN
137
+  (8.5ms)  BEGIN WORK;
138
+ LOCK TABLE auditing.table_sizes;
139
+ TRUNCATE TABLE auditing.table_sizes;
140
+ INSERT INTO auditing.table_sizes (
141
+ SELECT
142
+ *,
143
+ pg_size_pretty(total_bytes) AS total,
144
+ pg_size_pretty(idx_bytes) AS idx,
145
+ pg_size_pretty(toast_bytes) AS toast,
146
+ pg_size_pretty(tbl_bytes) AS tbl
147
+ FROM (
148
+ SELECT
149
+ *,
150
+ total_bytes - idx_bytes - COALESCE(toast_bytes,0) AS tbl_bytes
151
+ FROM (
152
+ SELECT c.oid,nspname AS schema, relname AS name
153
+ , c.reltuples AS row_estimate
154
+ , pg_total_relation_size(c.oid) AS total_bytes
155
+ , pg_indexes_size(c.oid) AS idx_bytes
156
+ , pg_total_relation_size(reltoastrelid) AS toast_bytes
157
+ FROM pg_class c
158
+ LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
159
+ WHERE relkind = 'r'
160
+ ) table_sizes
161
+ ) table_sizes
162
+ );
163
+ COMMIT WORK;
164
+ 
165
+  (0.2ms) SAVEPOINT active_record_1
166
+  (0.1ms) ROLLBACK
167
+  (0.0ms) BEGIN
168
+  (8.5ms)  BEGIN WORK;
169
+ LOCK TABLE auditing.table_sizes;
170
+ TRUNCATE TABLE auditing.table_sizes;
171
+ INSERT INTO auditing.table_sizes (
172
+ SELECT
173
+ *,
174
+ pg_size_pretty(total_bytes) AS total,
175
+ pg_size_pretty(idx_bytes) AS idx,
176
+ pg_size_pretty(toast_bytes) AS toast,
177
+ pg_size_pretty(tbl_bytes) AS tbl
178
+ FROM (
179
+ SELECT
180
+ *,
181
+ total_bytes - idx_bytes - COALESCE(toast_bytes,0) AS tbl_bytes
182
+ FROM (
183
+ SELECT c.oid,nspname AS schema, relname AS name
184
+ , c.reltuples AS row_estimate
185
+ , pg_total_relation_size(c.oid) AS total_bytes
186
+ , pg_indexes_size(c.oid) AS idx_bytes
187
+ , pg_total_relation_size(reltoastrelid) AS toast_bytes
188
+ FROM pg_class c
189
+ LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
190
+ WHERE relkind = 'r'
191
+ ) table_sizes
192
+ ) table_sizes
193
+ );
194
+ COMMIT WORK;
195
+ 
196
+  (0.3ms) SAVEPOINT active_record_1
197
+  (0.1ms) ROLLBACK
@@ -0,0 +1,5 @@
1
+ {
2
+ "name": "dummy",
3
+ "private": true,
4
+ "dependencies": {}
5
+ }
@@ -0,0 +1,67 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>The page you were looking for doesn't exist (404)</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
6
+ <style>
7
+ .rails-default-error-page {
8
+ background-color: #EFEFEF;
9
+ color: #2E2F30;
10
+ text-align: center;
11
+ font-family: arial, sans-serif;
12
+ margin: 0;
13
+ }
14
+
15
+ .rails-default-error-page div.dialog {
16
+ width: 95%;
17
+ max-width: 33em;
18
+ margin: 4em auto 0;
19
+ }
20
+
21
+ .rails-default-error-page div.dialog > div {
22
+ border: 1px solid #CCC;
23
+ border-right-color: #999;
24
+ border-left-color: #999;
25
+ border-bottom-color: #BBB;
26
+ border-top: #B00100 solid 4px;
27
+ border-top-left-radius: 9px;
28
+ border-top-right-radius: 9px;
29
+ background-color: white;
30
+ padding: 7px 12% 0;
31
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
32
+ }
33
+
34
+ .rails-default-error-page h1 {
35
+ font-size: 100%;
36
+ color: #730E15;
37
+ line-height: 1.5em;
38
+ }
39
+
40
+ .rails-default-error-page div.dialog > p {
41
+ margin: 0 0 1em;
42
+ padding: 1em;
43
+ background-color: #F7F7F7;
44
+ border: 1px solid #CCC;
45
+ border-right-color: #999;
46
+ border-left-color: #999;
47
+ border-bottom-color: #999;
48
+ border-bottom-left-radius: 4px;
49
+ border-bottom-right-radius: 4px;
50
+ border-top-color: #DADADA;
51
+ color: #666;
52
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
53
+ }
54
+ </style>
55
+ </head>
56
+
57
+ <body class="rails-default-error-page">
58
+ <!-- This file lives in public/404.html -->
59
+ <div class="dialog">
60
+ <div>
61
+ <h1>The page you were looking for doesn't exist.</h1>
62
+ <p>You may have mistyped the address or the page may have moved.</p>
63
+ </div>
64
+ <p>If you are the application owner check the logs for more information.</p>
65
+ </div>
66
+ </body>
67
+ </html>
@@ -0,0 +1,67 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>The change you wanted was rejected (422)</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
6
+ <style>
7
+ .rails-default-error-page {
8
+ background-color: #EFEFEF;
9
+ color: #2E2F30;
10
+ text-align: center;
11
+ font-family: arial, sans-serif;
12
+ margin: 0;
13
+ }
14
+
15
+ .rails-default-error-page div.dialog {
16
+ width: 95%;
17
+ max-width: 33em;
18
+ margin: 4em auto 0;
19
+ }
20
+
21
+ .rails-default-error-page div.dialog > div {
22
+ border: 1px solid #CCC;
23
+ border-right-color: #999;
24
+ border-left-color: #999;
25
+ border-bottom-color: #BBB;
26
+ border-top: #B00100 solid 4px;
27
+ border-top-left-radius: 9px;
28
+ border-top-right-radius: 9px;
29
+ background-color: white;
30
+ padding: 7px 12% 0;
31
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
32
+ }
33
+
34
+ .rails-default-error-page h1 {
35
+ font-size: 100%;
36
+ color: #730E15;
37
+ line-height: 1.5em;
38
+ }
39
+
40
+ .rails-default-error-page div.dialog > p {
41
+ margin: 0 0 1em;
42
+ padding: 1em;
43
+ background-color: #F7F7F7;
44
+ border: 1px solid #CCC;
45
+ border-right-color: #999;
46
+ border-left-color: #999;
47
+ border-bottom-color: #999;
48
+ border-bottom-left-radius: 4px;
49
+ border-bottom-right-radius: 4px;
50
+ border-top-color: #DADADA;
51
+ color: #666;
52
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
53
+ }
54
+ </style>
55
+ </head>
56
+
57
+ <body class="rails-default-error-page">
58
+ <!-- This file lives in public/422.html -->
59
+ <div class="dialog">
60
+ <div>
61
+ <h1>The change you wanted was rejected.</h1>
62
+ <p>Maybe you tried to change something you didn't have access to.</p>
63
+ </div>
64
+ <p>If you are the application owner check the logs for more information.</p>
65
+ </div>
66
+ </body>
67
+ </html>
@@ -0,0 +1,66 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>We're sorry, but something went wrong (500)</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
6
+ <style>
7
+ .rails-default-error-page {
8
+ background-color: #EFEFEF;
9
+ color: #2E2F30;
10
+ text-align: center;
11
+ font-family: arial, sans-serif;
12
+ margin: 0;
13
+ }
14
+
15
+ .rails-default-error-page div.dialog {
16
+ width: 95%;
17
+ max-width: 33em;
18
+ margin: 4em auto 0;
19
+ }
20
+
21
+ .rails-default-error-page div.dialog > div {
22
+ border: 1px solid #CCC;
23
+ border-right-color: #999;
24
+ border-left-color: #999;
25
+ border-bottom-color: #BBB;
26
+ border-top: #B00100 solid 4px;
27
+ border-top-left-radius: 9px;
28
+ border-top-right-radius: 9px;
29
+ background-color: white;
30
+ padding: 7px 12% 0;
31
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
32
+ }
33
+
34
+ .rails-default-error-page h1 {
35
+ font-size: 100%;
36
+ color: #730E15;
37
+ line-height: 1.5em;
38
+ }
39
+
40
+ .rails-default-error-page div.dialog > p {
41
+ margin: 0 0 1em;
42
+ padding: 1em;
43
+ background-color: #F7F7F7;
44
+ border: 1px solid #CCC;
45
+ border-right-color: #999;
46
+ border-left-color: #999;
47
+ border-bottom-color: #999;
48
+ border-bottom-left-radius: 4px;
49
+ border-bottom-right-radius: 4px;
50
+ border-top-color: #DADADA;
51
+ color: #666;
52
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
53
+ }
54
+ </style>
55
+ </head>
56
+
57
+ <body class="rails-default-error-page">
58
+ <!-- This file lives in public/500.html -->
59
+ <div class="dialog">
60
+ <div>
61
+ <h1>We're sorry, but something went wrong.</h1>
62
+ </div>
63
+ <p>If you are the application owner check the logs for more information.</p>
64
+ </div>
65
+ </body>
66
+ </html>
File without changes
File without changes
@@ -0,0 +1,7 @@
1
+ FactoryBot.define do
2
+ factory :test_audit do
3
+ test_text "MyText"
4
+ test_date "2018-07-25"
5
+ test_time "2018-07-25 17:30:04"
6
+ end
7
+ end
@@ -0,0 +1,8 @@
1
+ FactoryBot.define do
2
+ factory :test_custom_audit do
3
+ test_text "MyText"
4
+ test_date "2018-07-25"
5
+ test_time "2018-07-25 17:30:07"
6
+ test_skipped_column "MyText"
7
+ end
8
+ end
@@ -0,0 +1,5 @@
1
+ require 'rails_helper'
2
+
3
+ RSpec.describe TestAudit, type: :model do
4
+ pending "add some examples to (or delete) #{__FILE__}"
5
+ end
@@ -0,0 +1,5 @@
1
+ require 'rails_helper'
2
+
3
+ RSpec.describe TestCustomAudit, type: :model do
4
+ pending "add some examples to (or delete) #{__FILE__}"
5
+ end