tin_opener 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +6 -1
- data/app/controllers/tin_opener/data_sets_controller.rb +2 -1
- data/app/models/tin_opener/data_set.rb +2 -1
- data/app/views/tin_opener/data_sets/index.html.erb +1 -1
- data/lib/tin_opener/data_file_processor.rb +25 -11
- data/lib/tin_opener/data_file_processors/csv_processor.rb +24 -0
- data/lib/tin_opener/data_file_processors/xls_processor.rb +36 -0
- data/lib/tin_opener/version.rb +1 -1
- data/lib/tin_opener.rb +4 -0
- data/spec/dummy/log/development.log +516 -0
- data/spec/dummy/log/test.log +5894 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/3MR1DJHzwOb48EQrXsHiHJ7IjgDYaKg8TF_1oluekCU.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/9JAtmrE8gkN4Ll_ses1H_M5ylPg_rV75JTy-LInDW5A.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/BqwVbEXQReJqZ1O-vYl0bgDgn5AjRFyVyu26OlZSeDk.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/Jow55IN5o80YnLiOg4Fr5N9WPT7dOSW1FsC30syKOXM.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/NQA9K_2Oq3l5Jz2kmZcV4LJIDx1cJOQbwZQjZq_Ob8k.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/OqdzJMApqmuOR5HA5XbQ9Ukw0t66o_kOvOr9gRTb-ys.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/UoPmraIR_8GBdt82Qv7E46vB85biTLUEFnsqW5h3AHY.cache +3 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/YBxAUfyQDHjoEa2iz272XBdRKrtQ7tS5kmMLmymLYXU.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/ZXdv0D_C5WAx0i5WNLYVhLj_WYBcK_Km4B907jOwh7k.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/e8WNBOjUvEkKqQpZOIclS1Azo4QSaSyaZewShwzREds.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/hkvQh5qylGCuuWPMjn7586FUemTh6giau8b0IaFgmak.cache +1 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/kD6BsXWNOKOD6OuqYVuxbXKliQbe8n1c_fHhCRqkqKU.cache +2 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/pgKZvrFeOEW9p9wqha2PA5mqALzmUehQRncxgx7HSFY.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/usob9Vws5kXcHktDHWDxgEiIKUmU9eLNwvJSjWYfVSg.cache +0 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/x1NjeGbfRAMdAff315v2hcYniAL5QVpxdqW0rFIHRKU.cache +3 -0
- data/spec/dummy/tmp/cache/assets/test/sprockets/v3.0/znqRv2LKKafofH32eY4huW3WeDBZB0l-ESutpXdht9I.cache +2 -0
- data/spec/examples.txt +17 -7
- data/spec/factories/{tin_opener_data_sets.rb → data_sets.rb} +1 -1
- data/spec/factories/records.rb +6 -0
- data/spec/features/tin_opener/data_sets_spec.rb +61 -0
- data/spec/fixtures/data_sets/contaminacion-acustica-2015.xls +0 -0
- data/spec/fixtures/data_sets/encuesta-calidad-de-vida-2014.xls +0 -0
- data/spec/fixtures/data_sets/trabajos_planificados_m30.xml +1 -0
- data/spec/lib/tin_opener/data_file_processor_spec.rb +65 -0
- data/spec/models/tin_opener/data_set_spec.rb +1 -1
- data/spec/models/tin_opener/record_spec.rb +2 -2
- data/spec/rails_helper.rb +3 -1
- data/spec/spec_helper.rb +4 -2
- data/spec/support/url_helpers.rb +7 -0
- metadata +79 -5
- data/spec/factories/tin_opener_records.rb +0 -6
@@ -0,0 +1 @@
|
|
1
|
+
I"�/Users/david/src/tin_opener/app/assets/stylesheets/tin_opener/application.css?type=text/css&pipeline=self&id=3b270058e06a2330264806d991238836ac3108258e91c5c4d7eac6c1f9bf71c7:ET
|
Binary file
|
Binary file
|
@@ -0,0 +1 @@
|
|
1
|
+
I"�/Users/david/src/tin_opener/app/assets/javascripts/tin_opener/application.js?type=application/javascript&id=523eb365ec4b768fb85c2aceddb81885c62502b55e61a056eedd586db1125c88:ET
|
@@ -0,0 +1 @@
|
|
1
|
+
I"�/Users/david/src/tin_opener/app/assets/javascripts/tin_opener/application.js?type=application/javascript&pipeline=self&id=8646ffb052d3350fdd829111f84d93e06b1323fe51263d6e0371a752db0c4b83:ET
|
Binary file
|
@@ -0,0 +1,3 @@
|
|
1
|
+
[o:Set:
|
2
|
+
@hash{
|
3
|
+
I"environment-version:ETTI"environment-paths;TTI">processors:type=text/css&file_type=text/css&pipeline=self;TTI"`file-digest:///Users/david/src/tin_opener/app/assets/stylesheets/tin_opener/application.css;TTI"Pfile-digest:///Users/david/src/tin_opener/app/assets/stylesheets/tin_opener;TT
|
@@ -0,0 +1 @@
|
|
1
|
+
I"�/Users/david/src/tin_opener/app/assets/stylesheets/tin_opener/application.css?type=text/css&id=e0d258f1309015abd0e70fc38eefe1846f83b97145c23048917e948b860c04c1:ET
|
@@ -0,0 +1 @@
|
|
1
|
+
"%Ѱč@�����6H�uZoX�Z�gbh0W��V
|
@@ -0,0 +1 @@
|
|
1
|
+
"%�W\�yho9S���ƫ˥��)|�~���(���
|
@@ -0,0 +1 @@
|
|
1
|
+
"%��Rm�v�S3.��O�L���ڹc�ƕq�=_j�
|
@@ -0,0 +1,2 @@
|
|
1
|
+
[o:Set:
|
2
|
+
@hash{I"environment-version:ETTI"environment-paths;TTI"0processors:type=text/css&file_type=text/css;TTI"`file-digest:///Users/david/src/tin_opener/app/assets/stylesheets/tin_opener/application.css;TTI">processors:type=text/css&file_type=text/css&pipeline=self;TTI"Pfile-digest:///Users/david/src/tin_opener/app/assets/stylesheets/tin_opener;TT
|
Binary file
|
Binary file
|
@@ -0,0 +1,3 @@
|
|
1
|
+
[o:Set:
|
2
|
+
@hash{
|
3
|
+
I"environment-version:ETTI"environment-paths;TTI"Zprocessors:type=application/javascript&file_type=application/javascript&pipeline=self;TTI"_file-digest:///Users/david/src/tin_opener/app/assets/javascripts/tin_opener/application.js;TTI"Pfile-digest:///Users/david/src/tin_opener/app/assets/javascripts/tin_opener;TT
|
@@ -0,0 +1,2 @@
|
|
1
|
+
[o:Set:
|
2
|
+
@hash{I"environment-version:ETTI"environment-paths;TTI"Lprocessors:type=application/javascript&file_type=application/javascript;TTI"_file-digest:///Users/david/src/tin_opener/app/assets/javascripts/tin_opener/application.js;TTI"Zprocessors:type=application/javascript&file_type=application/javascript&pipeline=self;TTI"Pfile-digest:///Users/david/src/tin_opener/app/assets/javascripts/tin_opener;TT
|
data/spec/examples.txt
CHANGED
@@ -1,7 +1,17 @@
|
|
1
|
-
example_id
|
2
|
-
|
3
|
-
./spec/
|
4
|
-
./spec/
|
5
|
-
./spec/
|
6
|
-
./spec/
|
7
|
-
./spec/
|
1
|
+
example_id | status | run_time |
|
2
|
+
-------------------------------------------------------- | ------- | --------------- |
|
3
|
+
./spec/features/tin_opener/data_sets_spec.rb[1:1] | passed | 0.28634 seconds |
|
4
|
+
./spec/features/tin_opener/data_sets_spec.rb[1:2] | passed | 0.06256 seconds |
|
5
|
+
./spec/features/tin_opener/data_sets_spec.rb[1:3] | passed | 0.05896 seconds |
|
6
|
+
./spec/features/tin_opener/data_sets_spec.rb[1:4] | passed | 0.57596 seconds |
|
7
|
+
./spec/lib/tin_opener/data_file_processor_spec.rb[1:1:1] | passed | 0.04272 seconds |
|
8
|
+
./spec/lib/tin_opener/data_file_processor_spec.rb[1:1:2] | passed | 0.04098 seconds |
|
9
|
+
./spec/lib/tin_opener/data_file_processor_spec.rb[1:2:1] | passed | 5.12 seconds |
|
10
|
+
./spec/lib/tin_opener/data_file_processor_spec.rb[1:2:2] | passed | 5.11 seconds |
|
11
|
+
./spec/lib/tin_opener/data_file_processor_spec.rb[1:3:1] | pending | 0.00002 seconds |
|
12
|
+
./spec/lib/tin_opener/data_file_processor_spec.rb[1:4:1] | pending | 0.00001 seconds |
|
13
|
+
./spec/models/tin_opener/data_set_spec.rb[1:1:1] | passed | 0.00609 seconds |
|
14
|
+
./spec/models/tin_opener/data_set_spec.rb[1:1:2] | passed | 0.02288 seconds |
|
15
|
+
./spec/models/tin_opener/data_set_spec.rb[1:1:3] | passed | 0.00618 seconds |
|
16
|
+
./spec/models/tin_opener/data_set_spec.rb[1:2:1] | passed | 0.33882 seconds |
|
17
|
+
./spec/models/tin_opener/record_spec.rb[1:1] | passed | 0.02407 seconds |
|
@@ -0,0 +1,61 @@
|
|
1
|
+
require 'rails_helper'
|
2
|
+
|
3
|
+
module TinOpener
|
4
|
+
RSpec.feature "Data sets", type: :feature do
|
5
|
+
|
6
|
+
let(:data_file) { File.join('spec', 'fixtures', 'data_sets', 'bici_disponibilidad.csv') }
|
7
|
+
let(:data_set) { create :data_set }
|
8
|
+
|
9
|
+
scenario "Lists data sets" do
|
10
|
+
data_sets = 3.times.map { create :data_set }
|
11
|
+
|
12
|
+
visit data_sets_path
|
13
|
+
|
14
|
+
data_sets.each do |data_set|
|
15
|
+
expect(page).to have_content(data_set.name)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
scenario "Deletes a data set" do
|
20
|
+
data_set
|
21
|
+
|
22
|
+
visit data_sets_path
|
23
|
+
|
24
|
+
expect(page).to have_content(data_set.name)
|
25
|
+
|
26
|
+
expect do
|
27
|
+
click_on 'Destroy'
|
28
|
+
end.to change { DataSet.count }.by(-1)
|
29
|
+
|
30
|
+
expect(page).not_to have_content(data_set.name)
|
31
|
+
end
|
32
|
+
|
33
|
+
scenario "Updates a data set" do
|
34
|
+
data_set
|
35
|
+
|
36
|
+
visit data_sets_path
|
37
|
+
|
38
|
+
click_link 'Edit'
|
39
|
+
|
40
|
+
fill_in 'data_set[name]', with: 'A new fancy name'
|
41
|
+
click_on 'Update Data set'
|
42
|
+
|
43
|
+
expect(page).to have_content('A new fancy name')
|
44
|
+
end
|
45
|
+
|
46
|
+
scenario "Adds a new data set from a CSV data source" do
|
47
|
+
visit data_sets_path
|
48
|
+
|
49
|
+
fill_in 'data_set[name]', with: 'Oh yes this IS a new one'
|
50
|
+
attach_file 'data_set[data_file]', data_file
|
51
|
+
|
52
|
+
expect do
|
53
|
+
expect do
|
54
|
+
click_on 'Create Data set'
|
55
|
+
end.to change { DataSet.count }.by(1)
|
56
|
+
end.to change { Record.count }.by(70)
|
57
|
+
|
58
|
+
expect(page).to have_content('Oh yes this IS a new one')
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
Binary file
|
Binary file
|