zizia 5.0.1 → 5.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github_changelog_generator +2 -0
- data/CHANGELOG.md +254 -0
- data/README.md +13 -0
- data/app/assets/stylesheets/zizia/_import_table.scss +10 -0
- data/app/assets/stylesheets/zizia/zizia.scss +1 -0
- data/app/controllers/zizia/csv_import_details_controller.rb +25 -3
- data/app/helpers/zizia/application_helper.rb +20 -0
- data/app/importers/modular_importer.rb +1 -1
- data/app/models/zizia/csv_import_detail.rb +6 -0
- data/app/models/zizia/pre_ingest_file.rb +4 -0
- data/app/views/zizia/csv_import_details/_toggle_my_imports.html.erb +7 -0
- data/app/views/zizia/csv_import_details/index.html.erb +15 -2
- data/app/views/zizia/csv_import_details/show.html.erb +1 -1
- data/db/migrate/20191029162902_add_status_to_csv_import_detail.rb +5 -0
- data/db/migrate/20191031131041_add_deduplication_key_to_pre_ingest_work.rb +6 -0
- data/lib/zizia/version.rb +1 -1
- data/spec/dummy/db/schema.rb +3 -0
- data/spec/dummy/spec/fixtures/csv_import/good/all_fields.csv +2 -2
- data/spec/dummy/spec/fixtures/csv_import/good/all_fields_complete_update.csv +2 -2
- data/spec/dummy/spec/fixtures/csv_import/good/all_fields_metadata_update.csv +2 -2
- data/spec/dummy/spec/fixtures/csv_import/good/all_fields_only_new.csv +3 -3
- data/spec/dummy/spec/support/capybara.rb +28 -0
- data/spec/dummy/spec/system/csv_import_details_page_spec.rb +91 -11
- data/spec/dummy/spec/system/import_from_csv_spec.rb +1 -1
- data/spec/factories/csv_import_detail.rb +1 -1
- data/spec/factories/pre_ingest_file.rb +13 -0
- data/spec/factories/pre_ingest_work.rb +11 -0
- data/spec/models/zizia/csv_import_detail_spec.rb +9 -0
- data/spec/models/zizia/pre_ingest_file_spec.rb +12 -0
- data/spec/models/zizia/pre_ingest_work_spec.rb +9 -0
- data/spec/rails_helper.rb +1 -0
- metadata +15 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0c996cb008f5c2688ad0268f351e7ece835fa9822c6b1d95cee5744df9efead9
|
4
|
+
data.tar.gz: dd746445e693cc7a941f0670cfc3eb6e0ef0c674d0844975825a94673150e097
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c9094c26f6385c215dc138d8a50495cc08f5962b732d3ba483de63d9c055a1ebebee7d7a01c5b33bb948c983777ebd2eee5b16abf0d7402e03cbe3940f7be16a
|
7
|
+
data.tar.gz: b595f80d8f66d3fbd0e46a14a7b2baeab74f6feccfafd7f4aa14d249f4fb7c5a01da001848bb652b0b70f17b49d03c089845edca30485ab569456621b891deef
|
data/CHANGELOG.md
ADDED
@@ -0,0 +1,254 @@
|
|
1
|
+
# Changelog
|
2
|
+
|
3
|
+
## [5.1.0](https://github.com/curationexperts/zizia/tree/5.1.0) (2019-11-04)
|
4
|
+
|
5
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v5.0.1...5.1.0)
|
6
|
+
|
7
|
+
**Merged pull requests:**
|
8
|
+
|
9
|
+
- Add ability to toggle your imports [\#54](https://github.com/curationexperts/zizia/pull/54) ([little9](https://github.com/little9))
|
10
|
+
- Add deduplication\_key to Zizia::PreIngestWork model [\#53](https://github.com/curationexperts/zizia/pull/53) ([bess](https://github.com/bess))
|
11
|
+
- Initial batch sorting [\#52](https://github.com/curationexperts/zizia/pull/52) ([little9](https://github.com/little9))
|
12
|
+
- Show more info on batch page [\#51](https://github.com/curationexperts/zizia/pull/51) ([little9](https://github.com/little9))
|
13
|
+
- Only show the basename for PreIngestFile [\#50](https://github.com/curationexperts/zizia/pull/50) ([little9](https://github.com/little9))
|
14
|
+
- Add Date to details page [\#49](https://github.com/curationexperts/zizia/pull/49) ([little9](https://github.com/little9))
|
15
|
+
- Set import details pagination to 10 [\#48](https://github.com/curationexperts/zizia/pull/48) ([little9](https://github.com/little9))
|
16
|
+
- Use DCE's standard caypbara config [\#47](https://github.com/curationexperts/zizia/pull/47) ([little9](https://github.com/little9))
|
17
|
+
- Update README.md [\#46](https://github.com/curationexperts/zizia/pull/46) ([little9](https://github.com/little9))
|
18
|
+
|
19
|
+
## [v5.0.1](https://github.com/curationexperts/zizia/tree/v5.0.1) (2019-10-23)
|
20
|
+
|
21
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v5.0.0...v5.0.1)
|
22
|
+
|
23
|
+
**Merged pull requests:**
|
24
|
+
|
25
|
+
- Change glyphicons on import form [\#45](https://github.com/curationexperts/zizia/pull/45) ([little9](https://github.com/little9))
|
26
|
+
- Add font-family to submit button [\#44](https://github.com/curationexperts/zizia/pull/44) ([little9](https://github.com/little9))
|
27
|
+
|
28
|
+
## [v5.0.0](https://github.com/curationexperts/zizia/tree/v5.0.0) (2019-10-16)
|
29
|
+
|
30
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v4.6.0.alpha01...v5.0.0)
|
31
|
+
|
32
|
+
**Merged pull requests:**
|
33
|
+
|
34
|
+
- Update headers for the downloadable CSV template [\#43](https://github.com/curationexperts/zizia/pull/43) ([mark-dce](https://github.com/mark-dce))
|
35
|
+
- Update design of new CSV import page [\#42](https://github.com/curationexperts/zizia/pull/42) ([mark-dce](https://github.com/mark-dce))
|
36
|
+
- Update to correct spelling for keyword field [\#41](https://github.com/curationexperts/zizia/pull/41) ([mark-dce](https://github.com/mark-dce))
|
37
|
+
- Use yes/no language in the metadata guide [\#40](https://github.com/curationexperts/zizia/pull/40) ([bess](https://github.com/bess))
|
38
|
+
|
39
|
+
## [v4.6.0.alpha01](https://github.com/curationexperts/zizia/tree/v4.6.0.alpha01) (2019-10-15)
|
40
|
+
|
41
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v4.5.4.alpha.01...v4.6.0.alpha01)
|
42
|
+
|
43
|
+
**Merged pull requests:**
|
44
|
+
|
45
|
+
- Add dashboard layout to csv import screens [\#39](https://github.com/curationexperts/zizia/pull/39) ([bess](https://github.com/bess))
|
46
|
+
- Update Usage data for the metadata field guide [\#38](https://github.com/curationexperts/zizia/pull/38) ([mark-dce](https://github.com/mark-dce))
|
47
|
+
- Update language for multiple values on metadata field guide [\#37](https://github.com/curationexperts/zizia/pull/37) ([bess](https://github.com/bess))
|
48
|
+
- Add intro header for metadata field guide [\#36](https://github.com/curationexperts/zizia/pull/36) ([bess](https://github.com/bess))
|
49
|
+
- Add field definitions for 'files' and 'visibility' to the field guide [\#35](https://github.com/curationexperts/zizia/pull/35) ([mark-dce](https://github.com/mark-dce))
|
50
|
+
- Label and hide system fields [\#34](https://github.com/curationexperts/zizia/pull/34) ([bess](https://github.com/bess))
|
51
|
+
|
52
|
+
## [v4.5.4.alpha.01](https://github.com/curationexperts/zizia/tree/v4.5.4.alpha.01) (2019-10-04)
|
53
|
+
|
54
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v4.5.3.alpha.01...v4.5.4.alpha.01)
|
55
|
+
|
56
|
+
**Merged pull requests:**
|
57
|
+
|
58
|
+
- Remove 'in Bytes' from import table headers [\#33](https://github.com/curationexperts/zizia/pull/33) ([little9](https://github.com/little9))
|
59
|
+
|
60
|
+
## [v4.5.3.alpha.01](https://github.com/curationexperts/zizia/tree/v4.5.3.alpha.01) (2019-10-03)
|
61
|
+
|
62
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v4.5.2.alpha.01...v4.5.3.alpha.01)
|
63
|
+
|
64
|
+
**Merged pull requests:**
|
65
|
+
|
66
|
+
- Add files count to import details page [\#32](https://github.com/curationexperts/zizia/pull/32) ([little9](https://github.com/little9))
|
67
|
+
|
68
|
+
## [v4.5.2.alpha.01](https://github.com/curationexperts/zizia/tree/v4.5.2.alpha.01) (2019-10-03)
|
69
|
+
|
70
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v4.5.1.alpha.01...v4.5.2.alpha.01)
|
71
|
+
|
72
|
+
**Merged pull requests:**
|
73
|
+
|
74
|
+
- Explicitly include JS for the import UI [\#31](https://github.com/curationexperts/zizia/pull/31) ([little9](https://github.com/little9))
|
75
|
+
|
76
|
+
## [v4.5.1.alpha.01](https://github.com/curationexperts/zizia/tree/v4.5.1.alpha.01) (2019-10-02)
|
77
|
+
|
78
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v4.4.1.alpha.01...v4.5.1.alpha.01)
|
79
|
+
|
80
|
+
**Merged pull requests:**
|
81
|
+
|
82
|
+
- Correct path to generate file size and change row count [\#30](https://github.com/curationexperts/zizia/pull/30) ([little9](https://github.com/little9))
|
83
|
+
|
84
|
+
## [v4.4.1.alpha.01](https://github.com/curationexperts/zizia/tree/v4.4.1.alpha.01) (2019-10-02)
|
85
|
+
|
86
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v4.4.0.alpha.01...v4.4.1.alpha.01)
|
87
|
+
|
88
|
+
**Merged pull requests:**
|
89
|
+
|
90
|
+
- Rename CSV Template link and filename [\#29](https://github.com/curationexperts/zizia/pull/29) ([little9](https://github.com/little9))
|
91
|
+
|
92
|
+
## [v4.4.0.alpha.01](https://github.com/curationexperts/zizia/tree/v4.4.0.alpha.01) (2019-10-02)
|
93
|
+
|
94
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v4.3.1.alpha.01...v4.4.0.alpha.01)
|
95
|
+
|
96
|
+
**Merged pull requests:**
|
97
|
+
|
98
|
+
- Add CSV Import Detail pages from dlp-curate [\#28](https://github.com/curationexperts/zizia/pull/28) ([little9](https://github.com/little9))
|
99
|
+
|
100
|
+
## [v4.3.1.alpha.01](https://github.com/curationexperts/zizia/tree/v4.3.1.alpha.01) (2019-10-02)
|
101
|
+
|
102
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v4.2.0.alpha.01...v4.3.1.alpha.01)
|
103
|
+
|
104
|
+
**Merged pull requests:**
|
105
|
+
|
106
|
+
- Return attrs from process\_attrs method [\#27](https://github.com/curationexperts/zizia/pull/27) ([little9](https://github.com/little9))
|
107
|
+
- Add create\_date usage and remove erroneous pre-import message [\#26](https://github.com/curationexperts/zizia/pull/26) ([little9](https://github.com/little9))
|
108
|
+
|
109
|
+
## [v4.2.0.alpha.01](https://github.com/curationexperts/zizia/tree/v4.2.0.alpha.01) (2019-10-01)
|
110
|
+
|
111
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v4.1.0.alpha.01...v4.2.0.alpha.01)
|
112
|
+
|
113
|
+
**Merged pull requests:**
|
114
|
+
|
115
|
+
- Add dynamically generated metadata guide [\#25](https://github.com/curationexperts/zizia/pull/25) ([little9](https://github.com/little9))
|
116
|
+
|
117
|
+
## [v4.1.0.alpha.01](https://github.com/curationexperts/zizia/tree/v4.1.0.alpha.01) (2019-09-30)
|
118
|
+
|
119
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v4...v4.1.0.alpha.01)
|
120
|
+
|
121
|
+
**Merged pull requests:**
|
122
|
+
|
123
|
+
- Check for existing roles [\#24](https://github.com/curationexperts/zizia/pull/24) ([little9](https://github.com/little9))
|
124
|
+
- Revert "Update coverage formatter for CI environments" [\#23](https://github.com/curationexperts/zizia/pull/23) ([mark-dce](https://github.com/mark-dce))
|
125
|
+
- Update coverage formatter for CI environments [\#22](https://github.com/curationexperts/zizia/pull/22) ([mark-dce](https://github.com/mark-dce))
|
126
|
+
|
127
|
+
## [v4](https://github.com/curationexperts/zizia/tree/v4) (2019-09-25)
|
128
|
+
|
129
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v4.0.2.alpha.01...v4)
|
130
|
+
|
131
|
+
## [v4.0.2.alpha.01](https://github.com/curationexperts/zizia/tree/v4.0.2.alpha.01) (2019-09-25)
|
132
|
+
|
133
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v4.0.0.alpha.01...v4.0.2.alpha.01)
|
134
|
+
|
135
|
+
## [v4.0.0.alpha.01](https://github.com/curationexperts/zizia/tree/v4.0.0.alpha.01) (2019-09-25)
|
136
|
+
|
137
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v3.1.0.alpha.01...v4.0.0.alpha.01)
|
138
|
+
|
139
|
+
**Merged pull requests:**
|
140
|
+
|
141
|
+
- Additional coveralls config [\#21](https://github.com/curationexperts/zizia/pull/21) ([little9](https://github.com/little9))
|
142
|
+
- Add additional updaters [\#20](https://github.com/curationexperts/zizia/pull/20) ([little9](https://github.com/little9))
|
143
|
+
- Add ability to choose between files or no files during import [\#19](https://github.com/curationexperts/zizia/pull/19) ([little9](https://github.com/little9))
|
144
|
+
- Add full Hyrax dummy [\#18](https://github.com/curationexperts/zizia/pull/18) ([little9](https://github.com/little9))
|
145
|
+
|
146
|
+
## [v3.1.0.alpha.01](https://github.com/curationexperts/zizia/tree/v3.1.0.alpha.01) (2019-09-12)
|
147
|
+
|
148
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v3.0.0.alpha.01...v3.1.0.alpha.01)
|
149
|
+
|
150
|
+
**Merged pull requests:**
|
151
|
+
|
152
|
+
- Add CsvImportDetail model and associated models [\#17](https://github.com/curationexperts/zizia/pull/17) ([little9](https://github.com/little9))
|
153
|
+
- Allow upload and cache path for CSV to be changed [\#16](https://github.com/curationexperts/zizia/pull/16) ([little9](https://github.com/little9))
|
154
|
+
|
155
|
+
## [v3.0.0.alpha.01](https://github.com/curationexperts/zizia/tree/v3.0.0.alpha.01) (2019-08-23)
|
156
|
+
|
157
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v2.1.0.alpha.09...v3.0.0.alpha.01)
|
158
|
+
|
159
|
+
**Merged pull requests:**
|
160
|
+
|
161
|
+
- Let's not reinvent logging [\#15](https://github.com/curationexperts/zizia/pull/15) ([bess](https://github.com/bess))
|
162
|
+
|
163
|
+
## [v2.1.0.alpha.09](https://github.com/curationexperts/zizia/tree/v2.1.0.alpha.09) (2019-08-23)
|
164
|
+
|
165
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v2.1.0.alpha.08...v2.1.0.alpha.09)
|
166
|
+
|
167
|
+
**Merged pull requests:**
|
168
|
+
|
169
|
+
- Update CI badge [\#14](https://github.com/curationexperts/zizia/pull/14) ([bess](https://github.com/bess))
|
170
|
+
- Make zizia events easier to find in logs [\#13](https://github.com/curationexperts/zizia/pull/13) ([bess](https://github.com/bess))
|
171
|
+
|
172
|
+
## [v2.1.0.alpha.08](https://github.com/curationexperts/zizia/tree/v2.1.0.alpha.08) (2019-08-16)
|
173
|
+
|
174
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v2.1.0.alpha.07...v2.1.0.alpha.08)
|
175
|
+
|
176
|
+
**Merged pull requests:**
|
177
|
+
|
178
|
+
- Generate CSV Template from configured metadata mapper [\#12](https://github.com/curationexperts/zizia/pull/12) ([little9](https://github.com/little9))
|
179
|
+
|
180
|
+
## [v2.1.0.alpha.07](https://github.com/curationexperts/zizia/tree/v2.1.0.alpha.07) (2019-08-07)
|
181
|
+
|
182
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v2.1.0.alpha.06...v2.1.0.alpha.07)
|
183
|
+
|
184
|
+
**Merged pull requests:**
|
185
|
+
|
186
|
+
- Fixes for path settings [\#11](https://github.com/curationexperts/zizia/pull/11) ([little9](https://github.com/little9))
|
187
|
+
|
188
|
+
## [v2.1.0.alpha.06](https://github.com/curationexperts/zizia/tree/v2.1.0.alpha.06) (2019-08-06)
|
189
|
+
|
190
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v2.1.0.alpha.05...v2.1.0.alpha.06)
|
191
|
+
|
192
|
+
**Merged pull requests:**
|
193
|
+
|
194
|
+
- Move importer\_documentation views [\#10](https://github.com/curationexperts/zizia/pull/10) ([little9](https://github.com/little9))
|
195
|
+
|
196
|
+
## [v2.1.0.alpha.05](https://github.com/curationexperts/zizia/tree/v2.1.0.alpha.05) (2019-08-01)
|
197
|
+
|
198
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v2.1.0.alpha.04...v2.1.0.alpha.05)
|
199
|
+
|
200
|
+
**Merged pull requests:**
|
201
|
+
|
202
|
+
- Change paths in CSS and JS to work in parent Rails app [\#9](https://github.com/curationexperts/zizia/pull/9) ([little9](https://github.com/little9))
|
203
|
+
|
204
|
+
## [v2.1.0.alpha.04](https://github.com/curationexperts/zizia/tree/v2.1.0.alpha.04) (2019-08-01)
|
205
|
+
|
206
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v2.1.0.alpha.03...v2.1.0.alpha.04)
|
207
|
+
|
208
|
+
## [v2.1.0.alpha.03](https://github.com/curationexperts/zizia/tree/v2.1.0.alpha.03) (2019-08-01)
|
209
|
+
|
210
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v2.1.0.alpha.02...v2.1.0.alpha.03)
|
211
|
+
|
212
|
+
**Merged pull requests:**
|
213
|
+
|
214
|
+
- Add missing assets [\#8](https://github.com/curationexperts/zizia/pull/8) ([little9](https://github.com/little9))
|
215
|
+
- Coveralls [\#7](https://github.com/curationexperts/zizia/pull/7) ([bess](https://github.com/bess))
|
216
|
+
|
217
|
+
## [v2.1.0.alpha.02](https://github.com/curationexperts/zizia/tree/v2.1.0.alpha.02) (2019-07-30)
|
218
|
+
|
219
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v2...v2.1.0.alpha.02)
|
220
|
+
|
221
|
+
**Merged pull requests:**
|
222
|
+
|
223
|
+
- Rename database migrations [\#6](https://github.com/curationexperts/zizia/pull/6) ([little9](https://github.com/little9))
|
224
|
+
|
225
|
+
## [v2](https://github.com/curationexperts/zizia/tree/v2) (2019-07-29)
|
226
|
+
|
227
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v2.1.0.alpha.01...v2)
|
228
|
+
|
229
|
+
## [v2.1.0.alpha.01](https://github.com/curationexperts/zizia/tree/v2.1.0.alpha.01) (2019-07-29)
|
230
|
+
|
231
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v2.0.0.alpha.01...v2.1.0.alpha.01)
|
232
|
+
|
233
|
+
**Merged pull requests:**
|
234
|
+
|
235
|
+
- Fixes to allow compatibility with Tenejo [\#5](https://github.com/curationexperts/zizia/pull/5) ([little9](https://github.com/little9))
|
236
|
+
- Add rake task to zizia docs [\#4](https://github.com/curationexperts/zizia/pull/4) ([bess](https://github.com/bess))
|
237
|
+
|
238
|
+
## [v2.0.0.alpha.01](https://github.com/curationexperts/zizia/tree/v2.0.0.alpha.01) (2019-07-27)
|
239
|
+
|
240
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/v1.0.1...v2.0.0.alpha.01)
|
241
|
+
|
242
|
+
**Merged pull requests:**
|
243
|
+
|
244
|
+
- Upgrade dependencies [\#3](https://github.com/curationexperts/zizia/pull/3) ([bess](https://github.com/bess))
|
245
|
+
- Easily override default metadata mapping [\#2](https://github.com/curationexperts/zizia/pull/2) ([bess](https://github.com/bess))
|
246
|
+
- Initial Engine [\#1](https://github.com/curationexperts/zizia/pull/1) ([little9](https://github.com/little9))
|
247
|
+
|
248
|
+
## [v1.0.1](https://github.com/curationexperts/zizia/tree/v1.0.1) (2019-07-25)
|
249
|
+
|
250
|
+
[Full Changelog](https://github.com/curationexperts/zizia/compare/3d82f40f28eb65607837bd832c3dd46e3a305361...v1.0.1)
|
251
|
+
|
252
|
+
|
253
|
+
|
254
|
+
\* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)*
|
data/README.md
CHANGED
@@ -82,6 +82,19 @@ You can find [an example csv file for import to Hyrax](https://github.com/curati
|
|
82
82
|
with a heading of `files`, and the location of the files should be specified via an
|
83
83
|
environment variables called `IMPORT_PATH`. If `IMPORT_PATH` is not set, `HyraxRecordImporter` will look in `/opt/data` by default.
|
84
84
|
|
85
|
+
## Testing
|
86
|
+
|
87
|
+
To run Solr and Fedora for testing purposes:
|
88
|
+
|
89
|
+
`solr_wrapper --config spec/dummy/config/solr_wrapper_test.yml`
|
90
|
+
`fcrepo_wrapper --config spec/dummy/config/fcrepo_wrapper_test.yml`
|
91
|
+
|
92
|
+
After this you can run the whole suite, or individual specs. System specs are located
|
93
|
+
in the `spec/dummy/spec/system` folder:
|
94
|
+
|
95
|
+
`bundle exec rspec spec/dummy/spec/system/csv_import_details_page_spec.rb`
|
96
|
+
|
97
|
+
|
85
98
|
## Customizing
|
86
99
|
To input any kind of file other than CSV, you need to provide a `Parser` (out of the box, we support simple CSV import with `CsvParser`). We will be writing guides about
|
87
100
|
how to support custom mappers (for metadata outside of Hyrax's core and basic metadata fields).
|
@@ -1,21 +1,43 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
module Zizia
|
3
3
|
class CsvImportDetailsController < ApplicationController
|
4
|
+
helper_method :sort_column, :sort_direction, :user
|
5
|
+
|
4
6
|
load_and_authorize_resource
|
5
7
|
with_themed_layout 'dashboard'
|
6
8
|
|
7
9
|
def index
|
8
|
-
@csv_import_details =
|
10
|
+
@csv_import_details = if csv_import_detail_params[:user] && user_id
|
11
|
+
Zizia::CsvImportDetail
|
12
|
+
.order(sort_column + ' ' + sort_direction)
|
13
|
+
.where(depositor_id: user_id).page csv_import_detail_params[:page]
|
14
|
+
else
|
15
|
+
Zizia::CsvImportDetail
|
16
|
+
.order(sort_column + ' ' + sort_direction).page csv_import_detail_params[:page]
|
17
|
+
end
|
9
18
|
end
|
10
19
|
|
11
20
|
def show
|
12
|
-
@csv_import_detail = Zizia::CsvImportDetail
|
21
|
+
@csv_import_detail = Zizia::CsvImportDetail
|
22
|
+
.find(csv_import_detail_params[:id])
|
13
23
|
end
|
14
24
|
|
15
25
|
private
|
16
26
|
|
27
|
+
def user_id
|
28
|
+
User.find_by(email: csv_import_detail_params[:user]).id
|
29
|
+
end
|
30
|
+
|
31
|
+
def sort_column
|
32
|
+
Zizia::CsvImportDetail.column_names.include?(params[:sort]) ? params[:sort] : 'created_at'
|
33
|
+
end
|
34
|
+
|
35
|
+
def sort_direction
|
36
|
+
%w[asc desc].include?(params[:direction]) ? params[:direction] : 'desc'
|
37
|
+
end
|
38
|
+
|
17
39
|
def csv_import_detail_params
|
18
|
-
params.permit(:id, :page)
|
40
|
+
params.permit(:id, :page, :sort, :direction, :user)
|
19
41
|
end
|
20
42
|
end
|
21
43
|
end
|
@@ -1,6 +1,26 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
module Zizia
|
3
3
|
module ApplicationHelper
|
4
|
+
def human_update_actor_stack(update_actor_stack)
|
5
|
+
case update_actor_stack
|
6
|
+
when 'HyraxDelete'
|
7
|
+
'Overwrite All Files & Metadata'
|
8
|
+
when 'HyraxMetadataOnly'
|
9
|
+
'Update Existing Metadata, create new works'
|
10
|
+
when 'HyraxOnlyNew'
|
11
|
+
'Ignore Existing Works, new works only'
|
12
|
+
else
|
13
|
+
'Unknown'
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
def sortable(column, title = nil)
|
18
|
+
title ||= column.titleize
|
19
|
+
css_class = column == sort_column ? "current #{sort_direction}" : nil
|
20
|
+
direction = column == sort_column && sort_direction == 'asc' ? 'desc' : 'asc'
|
21
|
+
link_to title, { sort: column, direction: direction }, class: css_class
|
22
|
+
end
|
23
|
+
|
4
24
|
def collections_for_select
|
5
25
|
ActiveFedora::SolrService.query('has_model_ssim:Collection').map do |c|
|
6
26
|
[c['title_tesim'][0], c['id']]
|
@@ -35,7 +35,7 @@ class ModularImporter
|
|
35
35
|
importer = Zizia::Importer.new(parser: Zizia::CsvParser.new(file: file), record_importer: Zizia::HyraxRecordImporter.new(attributes: attrs))
|
36
36
|
|
37
37
|
importer.records.each_with_index do |record, index|
|
38
|
-
pre_ingest_work = Zizia::PreIngestWork.new(csv_import_detail_id: csv_import_detail.id)
|
38
|
+
pre_ingest_work = Zizia::PreIngestWork.new(csv_import_detail_id: csv_import_detail.id, deduplication_key: record.mapper.metadata["deduplication_key"])
|
39
39
|
|
40
40
|
record.mapper.files.each do |child_file|
|
41
41
|
full_path = Dir.glob("#{ENV['IMPORT_PATH']}/**/#{child_file}").first
|
@@ -1,12 +1,18 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
module Zizia
|
3
3
|
class CsvImportDetail < ::ApplicationRecord
|
4
|
+
paginates_per 10
|
5
|
+
|
4
6
|
after_initialize :set_defaults, unless: :persisted?
|
5
7
|
|
6
8
|
belongs_to :csv_import
|
7
9
|
has_many :pre_ingest_works
|
8
10
|
has_many :pre_ingest_files, through: :pre_ingest_works
|
9
11
|
|
12
|
+
def status
|
13
|
+
'undetermined'
|
14
|
+
end
|
15
|
+
|
10
16
|
def total_size
|
11
17
|
return 0 if pre_ingest_files.empty?
|
12
18
|
pre_ingest_files.map(&:size).sum
|
@@ -0,0 +1,7 @@
|
|
1
|
+
<div class="btn-group" role="group" aria-label="Table Visibility Controls">
|
2
|
+
<% if request.params[:user] %>
|
3
|
+
<%= link_to 'View All Imports', request.params.except(:user), class: 'btn btn-default toggle-imports view-all-imports' %>
|
4
|
+
<% else %>
|
5
|
+
<%= link_to 'View My Imports', request.params.merge(user: current_user.email), class: 'btn btn-default toggle-imports view-my-imports' %>
|
6
|
+
<% end %>
|
7
|
+
</div>
|
@@ -1,12 +1,16 @@
|
|
1
1
|
<h3>CSV Imports</h3>
|
2
|
+
<%= render 'toggle_my_imports' %>
|
2
3
|
<table class="table table-striped">
|
3
4
|
<tr>
|
4
|
-
<th
|
5
|
+
<th><%= sortable 'id', 'ID' %></th>
|
5
6
|
<th>Associated User</th>
|
7
|
+
<th><%= sortable 'created_at', 'Date' %></th>
|
6
8
|
<th>CSV File</th>
|
7
9
|
<th>Number of Works</th>
|
8
10
|
<th>Number of Files</th>
|
9
11
|
<th>Total Size</th>
|
12
|
+
<th>Status</th>
|
13
|
+
<th>Overwrite Behavior Type</th>
|
10
14
|
</tr>
|
11
15
|
<% @csv_import_details.each do |csv_import_detail| %>
|
12
16
|
<tr>
|
@@ -17,7 +21,10 @@
|
|
17
21
|
<%= User.find(csv_import_detail.csv_import.user_id).email %>
|
18
22
|
</td>
|
19
23
|
<td>
|
20
|
-
<%= csv_import_detail.
|
24
|
+
<%= csv_import_detail.created_at.strftime("%B %-d, %Y %H:%M") %>
|
25
|
+
</td>
|
26
|
+
<td>
|
27
|
+
<%= File.basename(csv_import_detail.csv_import.manifest.to_s) %>
|
21
28
|
</td>
|
22
29
|
<td>
|
23
30
|
<%= csv_import_detail.pre_ingest_works.count %>
|
@@ -28,6 +35,12 @@
|
|
28
35
|
<td>
|
29
36
|
<%= number_to_human_size(csv_import_detail.total_size) %>
|
30
37
|
</td>
|
38
|
+
<td>
|
39
|
+
<%= csv_import_detail.status %>
|
40
|
+
</td>
|
41
|
+
<td>
|
42
|
+
<%= human_update_actor_stack(csv_import_detail.update_actor_stack) %>
|
43
|
+
</td>
|
31
44
|
</tr>
|
32
45
|
<% end %>
|
33
46
|
</table>
|
data/lib/zizia/version.rb
CHANGED
data/spec/dummy/db/schema.rb
CHANGED
@@ -573,6 +573,7 @@ ActiveRecord::Schema.define(version: 201901241536542) do
|
|
573
573
|
t.integer "failure_count"
|
574
574
|
t.string "deduplication_field"
|
575
575
|
t.string "update_actor_stack"
|
576
|
+
t.string "status"
|
576
577
|
t.index ["csv_import_id"], name: "index_zizia_csv_import_details_on_csv_import_id"
|
577
578
|
end
|
578
579
|
|
@@ -602,7 +603,9 @@ ActiveRecord::Schema.define(version: 201901241536542) do
|
|
602
603
|
t.integer "csv_import_detail_id"
|
603
604
|
t.datetime "created_at", null: false
|
604
605
|
t.datetime "updated_at", null: false
|
606
|
+
t.string "deduplication_key"
|
605
607
|
t.index ["csv_import_detail_id"], name: "index_zizia_pre_ingest_works_on_csv_import_detail_id"
|
608
|
+
t.index ["deduplication_key"], name: "index_zizia_pre_ingest_works_on_deduplication_key"
|
606
609
|
end
|
607
610
|
|
608
611
|
end
|
@@ -1,2 +1,2 @@
|
|
1
|
-
identifier,license,visibility,location,keyword,rights statement,creator,title,files
|
2
|
-
abc/123,https://creativecommons.org/licenses/by/4.0/,PUBlic,http://www.geonames.org/5667009/montana.html|~|http://www.geonames.org/6252001/united-states.html,Clothing stores $z California $z Los Angeles|~|Interior design $z California $z Los Angeles,http://rightsstatements.org/vocab/InC/1.0/,"Connell, Will, $d 1898-1961","Interior view of The Bachelors haberdashery designed by Julius Ralph Davidson, Los Angeles, circa 1929",dog.jpg
|
1
|
+
identifier,license,deduplication_key,visibility,location,keyword,rights statement,creator,title,files
|
2
|
+
abc/123,https://creativecommons.org/licenses/by/4.0/,abc/123,PUBlic,http://www.geonames.org/5667009/montana.html|~|http://www.geonames.org/6252001/united-states.html,Clothing stores $z California $z Los Angeles|~|Interior design $z California $z Los Angeles,http://rightsstatements.org/vocab/InC/1.0/,"Connell, Will, $d 1898-1961","Interior view of The Bachelors haberdashery designed by Julius Ralph Davidson, Los Angeles, circa 1929",dog.jpg
|
@@ -1,2 +1,2 @@
|
|
1
|
-
identifier,license,visibility,location,keyword,rights statement,creator,title,files
|
2
|
-
abc/123,https://creativecommons.org/licenses/by/4.0/,PUBlic,http://www.geonames.org/5667009/montana.html|~|http://www.geonames.org/6252001/united-states.html,Clothing stores $z California $z Los Angeles|~|Interior design $z California $z Los Angeles,http://rightsstatements.org/vocab/InC/1.0/,"Connell, Will, $d 1898-1961","Interior view of The Bachelors haberdashery designed by Julius Ralph Davidson, Los Angeles, circa 1929",cat.jpg
|
1
|
+
identifier,license,deduplication_key,visibility,location,keyword,rights statement,creator,title,files
|
2
|
+
abc/123,https://creativecommons.org/licenses/by/4.0/,abc/123,PUBlic,http://www.geonames.org/5667009/montana.html|~|http://www.geonames.org/6252001/united-states.html,Clothing stores $z California $z Los Angeles|~|Interior design $z California $z Los Angeles,http://rightsstatements.org/vocab/InC/1.0/,"Connell, Will, $d 1898-1961","Interior view of The Bachelors haberdashery designed by Julius Ralph Davidson, Los Angeles, circa 1929",cat.jpg
|
@@ -1,2 +1,2 @@
|
|
1
|
-
identifier,license,visibility,location,keyword,rights statement,creator,title,files
|
2
|
-
abc/123,https://creativecommons.org/licenses/by/4.0/,PUBlic,http://www.geonames.org/5667009/montana.html|~|http://www.geonames.org/6252001/united-states.html,Clothing stores $z California $z Los Angeles|~|Exterior design $z California $z Los Angeles,http://rightsstatements.org/vocab/InC/1.0/,"Connell, Will, $d 1898-1961","Exterior view of The Bachelors haberdashery designed by Julius Ralph Davidson, Los Angeles, circa 1929",dog.jpg
|
1
|
+
identifier,license,deduplication_key,visibility,location,keyword,rights statement,creator,title,files
|
2
|
+
abc/123,https://creativecommons.org/licenses/by/4.0/,abc/123,PUBlic,http://www.geonames.org/5667009/montana.html|~|http://www.geonames.org/6252001/united-states.html,Clothing stores $z California $z Los Angeles|~|Exterior design $z California $z Los Angeles,http://rightsstatements.org/vocab/InC/1.0/,"Connell, Will, $d 1898-1961","Exterior view of The Bachelors haberdashery designed by Julius Ralph Davidson, Los Angeles, circa 1929",dog.jpg
|
@@ -1,3 +1,3 @@
|
|
1
|
-
identifier,license,visibility,location,keyword,rights statement,creator,title,files
|
2
|
-
abc/123,https://creativecommons.org/licenses/by/4.0/,PUBlic,http://www.geonames.org/5667009/montana.html|~|http://www.geonames.org/6252001/united-states.html,Clothing stores $z California $z Los Angeles|~|Interior design $z California $z Los Angeles,http://rightsstatements.org/vocab/InC/1.0/,"Connell, Will, $d 1898-1961","Interior view of The Bachelors haberdashery designed by Julius Ralph Davidson, Los Angeles, circa 1929",dog.jpg
|
3
|
-
abc/456,https://creativecommons.org/licenses/by/4.0/,PUBlic,http://www.geonames.org/5667009/montana.html|~|http://www.geonames.org/6252001/united-states.html,Clothing stores $z California $z Los Angeles|~|Interior design $z California $z Los Angeles,http://rightsstatements.org/vocab/InC/1.0/,"Connell, Will, $d 1898-1961","Interior view of The Bachelors patisserie designed by Julius Ralph Davidson, Los Angeles, circa 1929",cat.jpg
|
1
|
+
identifier,license,deduplication_key,visibility,location,keyword,rights statement,creator,title,files
|
2
|
+
abc/123,https://creativecommons.org/licenses/by/4.0/,abc/123,PUBlic,http://www.geonames.org/5667009/montana.html|~|http://www.geonames.org/6252001/united-states.html,Clothing stores $z California $z Los Angeles|~|Interior design $z California $z Los Angeles,http://rightsstatements.org/vocab/InC/1.0/,"Connell, Will, $d 1898-1961","Interior view of The Bachelors haberdashery designed by Julius Ralph Davidson, Los Angeles, circa 1929",dog.jpg
|
3
|
+
abc/456,https://creativecommons.org/licenses/by/4.0/,abc/456,PUBlic,http://www.geonames.org/5667009/montana.html|~|http://www.geonames.org/6252001/united-states.html,Clothing stores $z California $z Los Angeles|~|Interior design $z California $z Los Angeles,http://rightsstatements.org/vocab/InC/1.0/,"Connell, Will, $d 1898-1961","Interior view of The Bachelors patisserie designed by Julius Ralph Davidson, Los Angeles, circa 1929",cat.jpg
|
@@ -0,0 +1,28 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Setup chrome headless driver
|
4
|
+
Capybara.server = :puma, { Silent: true }
|
5
|
+
|
6
|
+
Capybara.register_driver :chrome_headless do |app|
|
7
|
+
options = ::Selenium::WebDriver::Chrome::Options.new
|
8
|
+
|
9
|
+
options.add_argument('--headless')
|
10
|
+
options.add_argument('--no-sandbox')
|
11
|
+
options.add_argument('--disable-dev-shm-usage')
|
12
|
+
options.add_argument('--window-size=1400,1400')
|
13
|
+
|
14
|
+
Capybara::Selenium::Driver.new(app, browser: :chrome, options: options)
|
15
|
+
end
|
16
|
+
|
17
|
+
Capybara.javascript_driver = :chrome_headless
|
18
|
+
|
19
|
+
# Setup rspec
|
20
|
+
RSpec.configure do |config|
|
21
|
+
config.before(:each, type: :system) do
|
22
|
+
driven_by :rack_test
|
23
|
+
end
|
24
|
+
|
25
|
+
config.before(:each, type: :system, js: true) do
|
26
|
+
driven_by :chrome_headless
|
27
|
+
end
|
28
|
+
end
|
@@ -2,34 +2,114 @@ require 'rails_helper'
|
|
2
2
|
include Warden::Test::Helpers
|
3
3
|
|
4
4
|
RSpec.describe 'viewing the csv import detail page' do
|
5
|
+
let(:user) { FactoryBot.create(:admin, email: 'systems@curationexperts.com')}
|
6
|
+
let(:second_user) { FactoryBot.create(:user, email: 'user@curationexperts.com') }
|
5
7
|
let(:csv_import) { FactoryBot.create(:csv_import) }
|
6
|
-
let(:
|
7
|
-
let(:
|
8
|
+
let(:second_csv_import) { FactoryBot.create(:csv_import, id: 2, user_id: 2) }
|
9
|
+
let(:csv_import_detail) { FactoryBot.create_list(:csv_import_detail, 12, created_at: Time.parse('Tue, 29 Oct 2019 14:20:02 UTC +00:00').utc, depositor_id: user.id) }
|
10
|
+
let(:csv_import_detail_second) { FactoryBot.create(:csv_import_detail, created_at: Time.parse('Thur, 31 Oct 2019 14:20:02 UTC +00:00').utc, status: 'zippy', update_actor_stack: 'ZiziaTesting', depositor_id: user.id) }
|
11
|
+
let(:csv_import_detail_third) { FactoryBot.create(:csv_import_detail, created_at: Time.parse('Wed, 30 Oct 2019 14:20:02 UTC +00:00').utc, depositor_id: second_user.id, csv_import_id: 2) }
|
8
12
|
|
9
|
-
|
13
|
+
before do
|
10
14
|
user.save
|
15
|
+
second_user.save
|
16
|
+
|
11
17
|
csv_import.user_id = user.id
|
12
18
|
csv_import.save
|
13
|
-
|
19
|
+
|
20
|
+
second_csv_import.user_id = second_user.id
|
21
|
+
second_csv_import.save
|
22
|
+
|
23
|
+
csv_import_detail.each(&:save)
|
24
|
+
csv_import_detail_second.save
|
25
|
+
csv_import_detail_third.save
|
14
26
|
login_as user
|
27
|
+
end
|
15
28
|
|
29
|
+
it 'displays the metadata when you visit the page' do
|
16
30
|
visit ('/csv_import_details/index')
|
17
|
-
expect(page).to have_content('
|
31
|
+
expect(page).to have_content('ID')
|
32
|
+
expect(page).to have_content('Status')
|
33
|
+
expect(page).to have_content('undetermined')
|
18
34
|
click_on '1'
|
19
35
|
expect(page).to have_content('Total Size')
|
20
36
|
end
|
21
37
|
|
22
|
-
it 'has
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
38
|
+
it 'has links to sort' do
|
39
|
+
visit ('/csv_import_details/index')
|
40
|
+
expect(page).to have_content ('Unknown')
|
41
|
+
click_on('Date')
|
42
|
+
expect(page.current_url).to match(/index\?direction\=asc\&locale\=en\&sort\=created_at/)
|
43
|
+
expect(page).not_to have_content('Unknown')
|
44
|
+
visit('/csv_import_details/index?direction=desc&locale=en&sort=created_at')
|
45
|
+
expect(page).to have_content('Unknown')
|
46
|
+
end
|
47
|
+
|
48
|
+
it 'has a sortable id' do
|
49
|
+
visit('/csv_import_details/index?direction=desc&locale=en&sort=id')
|
50
|
+
expect(page).to have_link '13'
|
51
|
+
end
|
52
|
+
|
53
|
+
it 'has a sortable status' do
|
54
|
+
pending 'status is always undetermined currently'
|
55
|
+
visit('/csv_import_details/index?direction=asc&locale=en&sort=status')
|
56
|
+
expect(page).to have_content 'zippy'
|
57
|
+
end
|
58
|
+
|
59
|
+
it 'has a sortable date' do
|
60
|
+
visit('/csv_import_details/index?direction=desc&locale=en&sort=created_at')
|
61
|
+
expect(page).to have_content 'October 31'
|
62
|
+
end
|
28
63
|
|
64
|
+
it 'displays the metadata when you visit the page' do
|
65
|
+
visit ('/csv_import_details/index')
|
66
|
+
expect(page).to have_content('ID')
|
67
|
+
click_on '1'
|
68
|
+
expect(page).to have_content('Total Size')
|
69
|
+
end
|
70
|
+
|
71
|
+
it 'displays the created_at date' do
|
72
|
+
visit ('/csv_import_details/index')
|
73
|
+
expect(page).to have_content('Date')
|
74
|
+
expect(page).to have_content('October 29, 2019 14:20')
|
75
|
+
end
|
76
|
+
|
77
|
+
it 'displays undetermined for the status' do
|
78
|
+
visit ('/csv_import_details/index')
|
79
|
+
expect(page).to have_content('Status')
|
80
|
+
expect(page).to have_content('undetermined')
|
81
|
+
end
|
82
|
+
|
83
|
+
it 'displays the overwrite behavior type' do
|
84
|
+
visit ('/csv_import_details/index')
|
85
|
+
expect(page).to have_content('Overwrite Behavior Type')
|
86
|
+
expect(page).to have_content('Update Existing Metadata, create new works')
|
87
|
+
end
|
88
|
+
|
89
|
+
it 'has the dashboard layout' do
|
29
90
|
visit ('/csv_import_details/index')
|
30
91
|
expect(page).to have_content('Your activity')
|
31
92
|
visit ('csv_import_details/show/1')
|
32
93
|
expect(page).to have_content('About the Import')
|
33
94
|
expect(page).to have_content('Your activity')
|
95
|
+
|
96
|
+
visit('/csv_import_details/index')
|
97
|
+
expect(page).to have_content('Next')
|
98
|
+
|
99
|
+
end
|
100
|
+
|
101
|
+
it 'has pagination at 10' do
|
102
|
+
visit('/csv_import_details/index')
|
103
|
+
expect(page).to have_content('Next')
|
104
|
+
click_on 'Next'
|
105
|
+
expect(page).to have_content('Previous')
|
106
|
+
end
|
107
|
+
|
108
|
+
it 'allows you to view only your imports' do
|
109
|
+
visit('/csv_import_details/index')
|
110
|
+
click_on 'View My Imports'
|
111
|
+
expect(page).not_to have_content('user@curationexperts.com')
|
112
|
+
click_on 'View All Imports'
|
113
|
+
expect(page).to have_content('user@curationexperts.com')
|
34
114
|
end
|
35
115
|
end
|
@@ -246,7 +246,7 @@ RSpec.describe 'Importing records from a CSV file', :perform_jobs, :clean, type:
|
|
246
246
|
# Viewing additional details after an import
|
247
247
|
visit "/csv_import_details/index"
|
248
248
|
expect(page).to have_content('Total Size')
|
249
|
-
find(:xpath, '//*[@id="content-wrapper"]/div[2]/table/tbody/tr[
|
249
|
+
find(:xpath, '//*[@id="content-wrapper"]/div[2]/table/tbody/tr[3]/td[1]/a').click
|
250
250
|
expect(page).to have_content('dog.jpg')
|
251
251
|
expect(page).to have_content('5.74 MB')
|
252
252
|
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
# This will guess the User class
|
3
|
+
FactoryBot.define do
|
4
|
+
factory :pre_ingest_file, class: Zizia::PreIngestFile do
|
5
|
+
pre_ingest_work_id { 1 }
|
6
|
+
created_at { Time.current }
|
7
|
+
updated_at { Time.current }
|
8
|
+
row_number { 1 }
|
9
|
+
row { 'sample,row' }
|
10
|
+
filename { '/a/path/to/my.csv' }
|
11
|
+
size { 100_203_424 }
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,11 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
# This will guess the User class
|
3
|
+
FactoryBot.define do
|
4
|
+
factory :pre_ingest_work, class: Zizia::PreIngestWork do
|
5
|
+
id { 1 }
|
6
|
+
created_at { Time.current }
|
7
|
+
updated_at { Time.current }
|
8
|
+
csv_import_detail_id { 1 }
|
9
|
+
sequence(:deduplication_key) { |n| "zyx321cba#{n}" }
|
10
|
+
end
|
11
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require 'rails_helper'
|
3
|
+
|
4
|
+
RSpec.describe Zizia::PreIngestFile do
|
5
|
+
let(:pre_ingest_work) { FactoryBot.create(:pre_ingest_work) }
|
6
|
+
let(:pre_ingest_file) { FactoryBot.create(:pre_ingest_file, pre_ingest_work_id: pre_ingest_work.id) }
|
7
|
+
let(:basename) { 'my.csv' }
|
8
|
+
|
9
|
+
it 'can get the basename for the file' do
|
10
|
+
expect(pre_ingest_file.basename).to eq(basename)
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,9 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
require 'rails_helper'
|
3
|
+
|
4
|
+
RSpec.describe Zizia::PreIngestWork do
|
5
|
+
let(:pre_ingest_work) { FactoryBot.create(:pre_ingest_work, deduplication_key: "42") }
|
6
|
+
it 'has a deduplication_key' do
|
7
|
+
expect(pre_ingest_work.deduplication_key).to eq "42"
|
8
|
+
end
|
9
|
+
end
|
data/spec/rails_helper.rb
CHANGED
@@ -11,6 +11,7 @@ require 'ffaker'
|
|
11
11
|
require 'hydra-role-management'
|
12
12
|
require 'byebug'
|
13
13
|
require 'rails-controller-testing'
|
14
|
+
require 'selenium-webdriver'
|
14
15
|
# Add additional requires below this line. Rails is not loaded until this point!
|
15
16
|
|
16
17
|
# Requires supporting ruby files with custom matchers and macros, etc, in
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: zizia
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.0
|
4
|
+
version: 5.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Data Curation Experts
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-11-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: active-fedora
|
@@ -640,12 +640,14 @@ extensions: []
|
|
640
640
|
extra_rdoc_files: []
|
641
641
|
files:
|
642
642
|
- ".circleci/config.yml"
|
643
|
+
- ".github_changelog_generator"
|
643
644
|
- ".gitignore"
|
644
645
|
- ".rspec"
|
645
646
|
- ".rubocop.yml"
|
646
647
|
- ".rubocop_todo.yml"
|
647
648
|
- ".solr_wrapper"
|
648
649
|
- ".travis.yml"
|
650
|
+
- CHANGELOG.md
|
649
651
|
- Gemfile
|
650
652
|
- README.md
|
651
653
|
- Rakefile
|
@@ -656,6 +658,7 @@ files:
|
|
656
658
|
- app/assets/javascripts/zizia/zizia.js
|
657
659
|
- app/assets/stylesheets/zizia/_field_guide.scss
|
658
660
|
- app/assets/stylesheets/zizia/_file_upload.scss
|
661
|
+
- app/assets/stylesheets/zizia/_import_table.scss
|
659
662
|
- app/assets/stylesheets/zizia/_new.scss
|
660
663
|
- app/assets/stylesheets/zizia/application.css
|
661
664
|
- app/assets/stylesheets/zizia/zizia.scss
|
@@ -679,6 +682,7 @@ files:
|
|
679
682
|
- app/uploaders/zizia/csv_manifest_uploader.rb
|
680
683
|
- app/uploaders/zizia/csv_manifest_validator.rb
|
681
684
|
- app/views/layouts/zizia/application.html.erb
|
685
|
+
- app/views/zizia/csv_import_details/_toggle_my_imports.html.erb
|
682
686
|
- app/views/zizia/csv_import_details/index.html.erb
|
683
687
|
- app/views/zizia/csv_import_details/show.html.erb
|
684
688
|
- app/views/zizia/csv_imports/_actions.html.erb
|
@@ -714,6 +718,8 @@ files:
|
|
714
718
|
- db/migrate/20190921154038_add_failure_count_to_csv_import_detail.rb
|
715
719
|
- db/migrate/20190921154221_add_deduplication_field_to_csv_import_detail.rb
|
716
720
|
- db/migrate/20190923182946_add_update_actor_stack_to_csv_import_detail.rb
|
721
|
+
- db/migrate/20191029162902_add_status_to_csv_import_detail.rb
|
722
|
+
- db/migrate/20191031131041_add_deduplication_key_to_pre_ingest_work.rb
|
717
723
|
- docs/_config.yml
|
718
724
|
- docs/customizing_metadata.md
|
719
725
|
- docs/index.md
|
@@ -1470,6 +1476,7 @@ files:
|
|
1470
1476
|
- spec/dummy/spec/models/qa/local_authority_spec.rb
|
1471
1477
|
- spec/dummy/spec/rails_helper.rb
|
1472
1478
|
- spec/dummy/spec/spec_helper.rb
|
1479
|
+
- spec/dummy/spec/support/capybara.rb
|
1473
1480
|
- spec/dummy/spec/system/csv_import_details_page_spec.rb
|
1474
1481
|
- spec/dummy/spec/system/import_csv_with_warnings_spec.rb
|
1475
1482
|
- spec/dummy/spec/system/import_from_csv_spec.rb
|
@@ -1494,6 +1501,8 @@ files:
|
|
1494
1501
|
- spec/factories/collection.rb
|
1495
1502
|
- spec/factories/csv_import.rb
|
1496
1503
|
- spec/factories/csv_import_detail.rb
|
1504
|
+
- spec/factories/pre_ingest_file.rb
|
1505
|
+
- spec/factories/pre_ingest_work.rb
|
1497
1506
|
- spec/factories/user.rb
|
1498
1507
|
- spec/fixtures/bad_example.csv
|
1499
1508
|
- spec/fixtures/csv_import/csv_files_with_problems/extra - headers.csv
|
@@ -1511,6 +1520,9 @@ files:
|
|
1511
1520
|
- spec/integration/csv_import_detail_spec.rb
|
1512
1521
|
- spec/integration/import_hyrax_csv.rb
|
1513
1522
|
- spec/models/csv_import_spec.rb
|
1523
|
+
- spec/models/zizia/csv_import_detail_spec.rb
|
1524
|
+
- spec/models/zizia/pre_ingest_file_spec.rb
|
1525
|
+
- spec/models/zizia/pre_ingest_work_spec.rb
|
1514
1526
|
- spec/rails_helper.rb
|
1515
1527
|
- spec/spec_helper.rb
|
1516
1528
|
- spec/support/capybara.rb
|
@@ -1551,7 +1563,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
1551
1563
|
- !ruby/object:Gem::Version
|
1552
1564
|
version: '0'
|
1553
1565
|
requirements: []
|
1554
|
-
rubygems_version: 3.0.
|
1566
|
+
rubygems_version: 3.0.6
|
1555
1567
|
signing_key:
|
1556
1568
|
specification_version: 4
|
1557
1569
|
summary: Hyrax importers.
|