enju_event 0.0.9 → 0.0.10
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.
- data/app/models/event.rb +1 -1
- data/app/models/event_import_file.rb +78 -33
- data/app/views/event_import_files/new.html.erb +0 -2
- data/app/views/event_import_files/show.html.erb +2 -2
- data/config/locales/translation_en.yml +1 -1
- data/config/locales/translation_ja.yml +1 -1
- data/db/migrate/20081028093607_create_event_import_files.rb +1 -2
- data/db/migrate/20120413051535_add_event_fingerprint_to_event_import_file.rb +5 -0
- data/db/migrate/20120413170734_add_error_message_to_event_import_file.rb +5 -0
- data/lib/enju_event/version.rb +1 -1
- data/spec/controllers/calendar_controller_spec.rb +57 -0
- data/spec/controllers/participates_controller_spec.rb +1 -0
- data/spec/dummy/db/development.sqlite3 +0 -0
- data/spec/dummy/db/migrate/20120105074911_add_isil_to_library.rb +5 -0
- data/spec/dummy/db/schema.rb +34 -33
- data/spec/dummy/db/test.sqlite3 +0 -0
- data/spec/dummy/private/system/event_import_files/event_imports/000/000/001/original/event_import_file_sample1.tsv +5 -0
- data/spec/dummy/private/system/event_import_files/event_imports/000/000/001/original/event_import_file_sample2.tsv +3 -0
- data/spec/dummy/private/system/event_import_files/event_imports/000/000/004/original/event_destroy_file.tsv +4 -0
- data/spec/dummy/private/system/event_import_files/event_imports/000/000/004/original/event_import_file_sample1.tsv +5 -0
- data/spec/dummy/private/system/event_import_files/event_imports/000/000/004/original/event_import_file_sample2.tsv +3 -0
- data/spec/dummy/private/system/event_import_files/event_imports/000/000/004/original/event_update_file.tsv +4 -0
- data/spec/dummy/private/system/event_imports/4/original/event_destroy_file.tsv +4 -0
- data/spec/dummy/private/system/event_imports/4/original/event_import_file_sample1.tsv +1 -1
- data/spec/dummy/private/system/event_imports/4/original/event_import_file_sample2.tsv +1 -1
- data/spec/dummy/private/system/event_imports/4/original/event_update_file.tsv +4 -0
- data/spec/dummy/solr/data/test/index/segments_1 +0 -0
- data/spec/dummy/solr/data/test/spellchecker/segments_1 +0 -0
- data/spec/fixtures/event_import_files.yml +0 -3
- data/spec/fixtures/libraries.yml +3 -2
- data/spec/models/event_import_file_spec.rb +29 -0
- data/spec/support/controller_macros.rb +3 -3
- metadata +75 -55
- data/spec/dummy/log/sunspot-solr-test.log +0 -222
- data/spec/dummy/log/test.log +0 -79263
data/app/models/event.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
class EventImportFile < ActiveRecord::Base
|
2
2
|
include ImportFile
|
3
3
|
default_scope :order => 'id DESC'
|
4
|
-
scope :not_imported, where(:state => 'pending'
|
4
|
+
scope :not_imported, where(:state => 'pending')
|
5
5
|
scope :stucked, where('created_at < ? AND state = ?', 1.hour.ago, 'pending')
|
6
6
|
|
7
7
|
if configatron.uploaded_file.storage == :s3
|
@@ -15,7 +15,6 @@ class EventImportFile < ActiveRecord::Base
|
|
15
15
|
validates_attachment_presence :event_import
|
16
16
|
belongs_to :user, :validate => true
|
17
17
|
has_many :event_import_results
|
18
|
-
before_create :set_digest
|
19
18
|
|
20
19
|
state_machine :initial => :pending do
|
21
20
|
event :sm_start do
|
@@ -31,19 +30,15 @@ class EventImportFile < ActiveRecord::Base
|
|
31
30
|
end
|
32
31
|
end
|
33
32
|
|
34
|
-
def set_digest(options = {:type => 'sha1'})
|
35
|
-
if File.exists?(event_import.queued_for_write[:original])
|
36
|
-
self.file_hash = Digest::SHA1.hexdigest(File.open(event_import.queued_for_write[:original].path, 'rb').read)
|
37
|
-
end
|
38
|
-
end
|
39
|
-
|
40
33
|
def import_start
|
41
34
|
sm_start!
|
42
35
|
case edit_mode
|
43
36
|
when 'create'
|
44
37
|
import
|
45
38
|
when 'update'
|
39
|
+
modify
|
46
40
|
when 'destroy'
|
41
|
+
remove
|
47
42
|
else
|
48
43
|
import
|
49
44
|
end
|
@@ -55,43 +50,36 @@ class EventImportFile < ActiveRecord::Base
|
|
55
50
|
record = 2
|
56
51
|
|
57
52
|
rows = open_import_file
|
58
|
-
|
59
|
-
|
60
|
-
raise "You should specify a name in the first line"
|
61
|
-
end
|
62
|
-
if [field['start_at'], field['end_at']].reject{|field| field.to_s.strip == ""}.empty?
|
63
|
-
raise "You should specify dates in the first line"
|
64
|
-
end
|
65
|
-
#rows.shift
|
53
|
+
check_field(rows.first)
|
54
|
+
|
66
55
|
rows.each do |row|
|
67
56
|
next if row['dummy'].to_s.strip.present?
|
68
57
|
import_result = EventImportResult.create!(:event_import_file => self, :body => row.fields.join("\t"))
|
69
58
|
|
70
59
|
event = Event.new
|
71
|
-
event.name = row['name']
|
60
|
+
event.name = row['name'].to_s.strip
|
72
61
|
event.note = row['note']
|
73
62
|
event.start_at = row['start_at']
|
74
63
|
event.end_at = row['end_at']
|
75
64
|
category = row['category'].to_s.strip
|
76
|
-
|
77
|
-
|
65
|
+
if row['all_day'].to_s.strip.downcase == 'false'
|
66
|
+
event.all_day = false
|
67
|
+
else
|
68
|
+
event.all_day = true
|
69
|
+
end
|
70
|
+
library = Library.where(:name => row['library']).first
|
78
71
|
library = Library.web if library.blank?
|
79
72
|
event.library = library
|
80
73
|
event_category = EventCategory.where(:name => category).first || EventCategory.where(:name => 'unknown').first
|
81
74
|
event.event_category = event_category
|
82
75
|
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
GC.start
|
90
|
-
end
|
76
|
+
if event.save!
|
77
|
+
import_result.event = event
|
78
|
+
num[:imported] += 1
|
79
|
+
if record % 50 == 0
|
80
|
+
Sunspot.commit
|
81
|
+
GC.start
|
91
82
|
end
|
92
|
-
rescue
|
93
|
-
Rails.logger.info("event import failed: column #{record}")
|
94
|
-
num[:failed] += 1
|
95
83
|
end
|
96
84
|
import_result.save!
|
97
85
|
record += 1
|
@@ -101,6 +89,54 @@ class EventImportFile < ActiveRecord::Base
|
|
101
89
|
rows.close
|
102
90
|
sm_complete!
|
103
91
|
return num
|
92
|
+
#rescue => e
|
93
|
+
# self.error_message = e
|
94
|
+
# sm_fail!
|
95
|
+
end
|
96
|
+
|
97
|
+
def modify
|
98
|
+
sm_start!
|
99
|
+
rows = open_import_file
|
100
|
+
check_field(rows.first)
|
101
|
+
|
102
|
+
rows.each do |row|
|
103
|
+
next if row['dummy'].to_s.strip.present?
|
104
|
+
event = Event.find(row['id'].to_s.strip)
|
105
|
+
event_category = EventCategory.where(:name => row['category'].to_s.strip).first
|
106
|
+
event.event_category = event_category if event_category
|
107
|
+
library = Library.where(:name => row['library'].to_s.strip).first
|
108
|
+
event.library = library if library
|
109
|
+
event.name = row['name'] if row['name'].to_s.strip.present?
|
110
|
+
event.start_at = row['start_at'] if row['start_at'].to_s.strip.present?
|
111
|
+
event.end_at = row['end_at'] if row['end_at'].to_s.strip.present?
|
112
|
+
event.note = row['end_at'] if row['note'].to_s.strip.present?
|
113
|
+
if row['all_day'].to_s.strip.downcase == 'false'
|
114
|
+
event.all_day = false
|
115
|
+
else
|
116
|
+
event.all_day = true
|
117
|
+
end
|
118
|
+
event.save!
|
119
|
+
end
|
120
|
+
sm_complete!
|
121
|
+
#rescue => e
|
122
|
+
# self.error_message = e
|
123
|
+
# sm_fail!
|
124
|
+
end
|
125
|
+
|
126
|
+
def remove
|
127
|
+
sm_start!
|
128
|
+
rows = open_import_file
|
129
|
+
rows.shift
|
130
|
+
|
131
|
+
rows.each do |row|
|
132
|
+
next if row['dummy'].to_s.strip.present?
|
133
|
+
event = Event.find(row['id'].to_s.strip)
|
134
|
+
event.destroy
|
135
|
+
end
|
136
|
+
sm_complete!
|
137
|
+
#rescue => e
|
138
|
+
# self.error_message = e
|
139
|
+
# sm_fail!
|
104
140
|
end
|
105
141
|
|
106
142
|
def self.import
|
@@ -115,9 +151,9 @@ class EventImportFile < ActiveRecord::Base
|
|
115
151
|
def open_import_file
|
116
152
|
tempfile = Tempfile.new('event_import_file')
|
117
153
|
if configatron.uploaded_file.storage == :s3
|
118
|
-
uploaded_file_path =
|
154
|
+
uploaded_file_path = event_import.expiring_url(10)
|
119
155
|
else
|
120
|
-
uploaded_file_path =
|
156
|
+
uploaded_file_path = event_import.path
|
121
157
|
end
|
122
158
|
open(uploaded_file_path){|f|
|
123
159
|
f.each{|line|
|
@@ -140,6 +176,15 @@ class EventImportFile < ActiveRecord::Base
|
|
140
176
|
file.close
|
141
177
|
rows
|
142
178
|
end
|
179
|
+
|
180
|
+
def check_field(field)
|
181
|
+
if [field['name']].reject{|f| f.to_s.strip == ""}.empty?
|
182
|
+
raise "You should specify a name in the first line"
|
183
|
+
end
|
184
|
+
if [field['start_at'], field['end_at']].reject{|field| field.to_s.strip == ""}.empty?
|
185
|
+
raise "You should specify dates in the first line"
|
186
|
+
end
|
187
|
+
end
|
143
188
|
end
|
144
189
|
|
145
190
|
# == Schema Information
|
@@ -150,7 +195,6 @@ end
|
|
150
195
|
# parent_id :integer
|
151
196
|
# content_type :string(255)
|
152
197
|
# size :integer
|
153
|
-
# file_hash :string(255)
|
154
198
|
# user_id :integer
|
155
199
|
# note :text
|
156
200
|
# imported_at :datetime
|
@@ -162,5 +206,6 @@ end
|
|
162
206
|
# created_at :datetime
|
163
207
|
# updated_at :datetime
|
164
208
|
# edit_mode :string(255)
|
209
|
+
# event_import_fingerprint :string(255)
|
165
210
|
#
|
166
211
|
|
@@ -10,7 +10,6 @@
|
|
10
10
|
<%= f.file_field :event_import -%>
|
11
11
|
</div>
|
12
12
|
|
13
|
-
<!--
|
14
13
|
<div class="field">
|
15
14
|
<%= f.label :edit_mode -%><br />
|
16
15
|
<%= f.radio_button :edit_mode, 'create', :checked => 'checked' %>
|
@@ -20,7 +19,6 @@
|
|
20
19
|
<%= f.radio_button :edit_mode, 'destroy' %>
|
21
20
|
<%= f.label :edit_mode, t('page.destroy'), :value => 'destroy' %>
|
22
21
|
</div>
|
23
|
-
-->
|
24
22
|
|
25
23
|
<div class="actions">
|
26
24
|
<%= f.submit %>
|
@@ -24,8 +24,8 @@
|
|
24
24
|
</p>
|
25
25
|
|
26
26
|
<p>
|
27
|
-
<strong><%= t('activerecord.attributes.event_import_file.
|
28
|
-
<%= @event_import_file.
|
27
|
+
<strong><%= t('activerecord.attributes.event_import_file.event_import_fingerprint') -%>:</strong>
|
28
|
+
<%= @event_import_file.event_import_fingerprint -%>
|
29
29
|
</p>
|
30
30
|
|
31
31
|
<p>
|
@@ -4,7 +4,6 @@ class CreateEventImportFiles < ActiveRecord::Migration
|
|
4
4
|
t.integer :parent_id
|
5
5
|
t.string :content_type
|
6
6
|
t.integer :size
|
7
|
-
t.string :file_hash
|
8
7
|
t.integer :user_id
|
9
8
|
t.text :note
|
10
9
|
t.datetime :imported_at
|
@@ -14,12 +13,12 @@ class CreateEventImportFiles < ActiveRecord::Migration
|
|
14
13
|
t.integer :event_import_file_size
|
15
14
|
t.datetime :event_import_updated_at
|
16
15
|
t.string :edit_mode
|
16
|
+
t.string :event_import_fingerprint
|
17
17
|
|
18
18
|
t.timestamps
|
19
19
|
end
|
20
20
|
add_index :event_import_files, :parent_id
|
21
21
|
add_index :event_import_files, :user_id
|
22
|
-
add_index :event_import_files, :file_hash
|
23
22
|
add_index :event_import_files, :state
|
24
23
|
end
|
25
24
|
|
data/lib/enju_event/version.rb
CHANGED
@@ -0,0 +1,57 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe CalendarController do
|
4
|
+
fixtures :all
|
5
|
+
|
6
|
+
describe "GET index", :solr => true do
|
7
|
+
describe "When logged in as Administrator" do
|
8
|
+
login_admin
|
9
|
+
|
10
|
+
it "assigns all event_stripss as @event_stripss" do
|
11
|
+
get :index
|
12
|
+
assigns(:event_strips).should_not be_empty
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
describe "When not logged in" do
|
17
|
+
it "assigns all event_stripss as @event_stripss" do
|
18
|
+
get :index
|
19
|
+
assigns(:event_strips).should_not be_empty
|
20
|
+
end
|
21
|
+
|
22
|
+
it "should get index when a year and a month are set" do
|
23
|
+
get :index, :year => 2010, :month => 3
|
24
|
+
response.should be_success
|
25
|
+
assigns(:event_strips).should_not be_empty
|
26
|
+
end
|
27
|
+
|
28
|
+
it "should redirect to a new event if no event is present" do
|
29
|
+
get :show, :year => 2010, :month => 3, :day => 1
|
30
|
+
response.should redirect_to new_event_path(:date => '2010/03/01')
|
31
|
+
end
|
32
|
+
|
33
|
+
it "should redirect to an existing event" do
|
34
|
+
get :show, :year => 2008, :month => 1, :day => 13
|
35
|
+
response.should redirect_to events_path(:date => '2008/01/13')
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
describe "GET show" do
|
41
|
+
describe "When logged in as Administrator" do
|
42
|
+
login_admin
|
43
|
+
|
44
|
+
it "should redirect to a new event" do
|
45
|
+
get :show, :year => '2011', :month => '1', :day => '1'
|
46
|
+
response.should redirect_to(new_event_path(:date => '2011/01/01'))
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
describe "When not logged in" do
|
51
|
+
it "should redirect to a new event" do
|
52
|
+
get :show, :year => '2011', :month => '1', :day => '1'
|
53
|
+
response.should redirect_to(new_event_path(:date => '2011/01/01'))
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
File without changes
|
data/spec/dummy/db/schema.rb
CHANGED
@@ -11,7 +11,7 @@
|
|
11
11
|
#
|
12
12
|
# It's strongly recommended to check this file into your version control system.
|
13
13
|
|
14
|
-
ActiveRecord::Schema.define(:version =>
|
14
|
+
ActiveRecord::Schema.define(:version => 20120413170734) do
|
15
15
|
|
16
16
|
create_table "countries", :force => true do |t|
|
17
17
|
t.string "name", :null => false
|
@@ -37,8 +37,8 @@ ActiveRecord::Schema.define(:version => 20111201163718) do
|
|
37
37
|
t.datetime "locked_at"
|
38
38
|
t.datetime "failed_at"
|
39
39
|
t.string "locked_by"
|
40
|
-
t.datetime "created_at"
|
41
|
-
t.datetime "updated_at"
|
40
|
+
t.datetime "created_at", :null => false
|
41
|
+
t.datetime "updated_at", :null => false
|
42
42
|
end
|
43
43
|
|
44
44
|
add_index "delayed_jobs", ["priority", "run_at"], :name => "delayed_jobs_priority"
|
@@ -48,15 +48,14 @@ ActiveRecord::Schema.define(:version => 20111201163718) do
|
|
48
48
|
t.text "display_name"
|
49
49
|
t.text "note"
|
50
50
|
t.integer "position"
|
51
|
-
t.datetime "created_at"
|
52
|
-
t.datetime "updated_at"
|
51
|
+
t.datetime "created_at", :null => false
|
52
|
+
t.datetime "updated_at", :null => false
|
53
53
|
end
|
54
54
|
|
55
55
|
create_table "event_import_files", :force => true do |t|
|
56
56
|
t.integer "parent_id"
|
57
57
|
t.string "content_type"
|
58
58
|
t.integer "size"
|
59
|
-
t.string "file_hash"
|
60
59
|
t.integer "user_id"
|
61
60
|
t.text "note"
|
62
61
|
t.datetime "imported_at"
|
@@ -66,11 +65,12 @@ ActiveRecord::Schema.define(:version => 20111201163718) do
|
|
66
65
|
t.integer "event_import_file_size"
|
67
66
|
t.datetime "event_import_updated_at"
|
68
67
|
t.string "edit_mode"
|
69
|
-
t.datetime "created_at"
|
70
|
-
t.datetime "updated_at"
|
68
|
+
t.datetime "created_at", :null => false
|
69
|
+
t.datetime "updated_at", :null => false
|
70
|
+
t.string "event_fingerprint"
|
71
|
+
t.text "error_message"
|
71
72
|
end
|
72
73
|
|
73
|
-
add_index "event_import_files", ["file_hash"], :name => "index_event_import_files_on_file_hash"
|
74
74
|
add_index "event_import_files", ["parent_id"], :name => "index_event_import_files_on_parent_id"
|
75
75
|
add_index "event_import_files", ["state"], :name => "index_event_import_files_on_state"
|
76
76
|
add_index "event_import_files", ["user_id"], :name => "index_event_import_files_on_user_id"
|
@@ -79,8 +79,8 @@ ActiveRecord::Schema.define(:version => 20111201163718) do
|
|
79
79
|
t.integer "event_import_file_id"
|
80
80
|
t.integer "event_id"
|
81
81
|
t.text "body"
|
82
|
-
t.datetime "created_at"
|
83
|
-
t.datetime "updated_at"
|
82
|
+
t.datetime "created_at", :null => false
|
83
|
+
t.datetime "updated_at", :null => false
|
84
84
|
end
|
85
85
|
|
86
86
|
create_table "events", :force => true do |t|
|
@@ -93,8 +93,8 @@ ActiveRecord::Schema.define(:version => 20111201163718) do
|
|
93
93
|
t.boolean "all_day", :default => false, :null => false
|
94
94
|
t.datetime "deleted_at"
|
95
95
|
t.text "display_name"
|
96
|
-
t.datetime "created_at"
|
97
|
-
t.datetime "updated_at"
|
96
|
+
t.datetime "created_at", :null => false
|
97
|
+
t.datetime "updated_at", :null => false
|
98
98
|
end
|
99
99
|
|
100
100
|
add_index "events", ["event_category_id"], :name => "index_events_on_event_category_id"
|
@@ -136,9 +136,10 @@ ActiveRecord::Schema.define(:version => 20111201163718) do
|
|
136
136
|
t.integer "users_count", :default => 0, :null => false
|
137
137
|
t.integer "position"
|
138
138
|
t.integer "country_id"
|
139
|
-
t.datetime "created_at"
|
140
|
-
t.datetime "updated_at"
|
139
|
+
t.datetime "created_at", :null => false
|
140
|
+
t.datetime "updated_at", :null => false
|
141
141
|
t.datetime "deleted_at"
|
142
|
+
t.string "isil"
|
142
143
|
end
|
143
144
|
|
144
145
|
add_index "libraries", ["library_group_id"], :name => "index_libraries_on_library_group_id"
|
@@ -156,8 +157,8 @@ ActiveRecord::Schema.define(:version => 20111201163718) do
|
|
156
157
|
t.integer "valid_period_for_new_user", :default => 365, :null => false
|
157
158
|
t.boolean "post_to_union_catalog", :default => false, :null => false
|
158
159
|
t.integer "country_id"
|
159
|
-
t.datetime "created_at"
|
160
|
-
t.datetime "updated_at"
|
160
|
+
t.datetime "created_at", :null => false
|
161
|
+
t.datetime "updated_at", :null => false
|
161
162
|
t.text "admin_networks"
|
162
163
|
t.boolean "allow_bookmark_external_url", :default => false, :null => false
|
163
164
|
t.integer "position"
|
@@ -170,8 +171,8 @@ ActiveRecord::Schema.define(:version => 20111201163718) do
|
|
170
171
|
t.integer "patron_id", :null => false
|
171
172
|
t.integer "event_id", :null => false
|
172
173
|
t.integer "position"
|
173
|
-
t.datetime "created_at"
|
174
|
-
t.datetime "updated_at"
|
174
|
+
t.datetime "created_at", :null => false
|
175
|
+
t.datetime "updated_at", :null => false
|
175
176
|
end
|
176
177
|
|
177
178
|
add_index "participates", ["event_id"], :name => "index_participates_on_event_id"
|
@@ -182,8 +183,8 @@ ActiveRecord::Schema.define(:version => 20111201163718) do
|
|
182
183
|
t.text "display_name"
|
183
184
|
t.text "note"
|
184
185
|
t.integer "position"
|
185
|
-
t.datetime "created_at"
|
186
|
-
t.datetime "updated_at"
|
186
|
+
t.datetime "created_at", :null => false
|
187
|
+
t.datetime "updated_at", :null => false
|
187
188
|
end
|
188
189
|
|
189
190
|
create_table "patrons", :force => true do |t|
|
@@ -199,8 +200,8 @@ ActiveRecord::Schema.define(:version => 20111201163718) do
|
|
199
200
|
t.string "full_name"
|
200
201
|
t.text "full_name_transcription"
|
201
202
|
t.text "full_name_alternative"
|
202
|
-
t.datetime "created_at"
|
203
|
-
t.datetime "updated_at"
|
203
|
+
t.datetime "created_at", :null => false
|
204
|
+
t.datetime "updated_at", :null => false
|
204
205
|
t.datetime "deleted_at"
|
205
206
|
t.string "zip_code_1"
|
206
207
|
t.string "zip_code_2"
|
@@ -247,8 +248,8 @@ ActiveRecord::Schema.define(:version => 20111201163718) do
|
|
247
248
|
t.text "display_name"
|
248
249
|
t.text "note"
|
249
250
|
t.integer "position"
|
250
|
-
t.datetime "created_at"
|
251
|
-
t.datetime "updated_at"
|
251
|
+
t.datetime "created_at", :null => false
|
252
|
+
t.datetime "updated_at", :null => false
|
252
253
|
end
|
253
254
|
|
254
255
|
create_table "shelves", :force => true do |t|
|
@@ -258,8 +259,8 @@ ActiveRecord::Schema.define(:version => 20111201163718) do
|
|
258
259
|
t.integer "library_id", :default => 1, :null => false
|
259
260
|
t.integer "items_count", :default => 0, :null => false
|
260
261
|
t.integer "position"
|
261
|
-
t.datetime "created_at"
|
262
|
-
t.datetime "updated_at"
|
262
|
+
t.datetime "created_at", :null => false
|
263
|
+
t.datetime "updated_at", :null => false
|
263
264
|
t.datetime "deleted_at"
|
264
265
|
end
|
265
266
|
|
@@ -270,15 +271,15 @@ ActiveRecord::Schema.define(:version => 20111201163718) do
|
|
270
271
|
t.text "display_name"
|
271
272
|
t.text "note"
|
272
273
|
t.integer "position"
|
273
|
-
t.datetime "created_at"
|
274
|
-
t.datetime "updated_at"
|
274
|
+
t.datetime "created_at", :null => false
|
275
|
+
t.datetime "updated_at", :null => false
|
275
276
|
end
|
276
277
|
|
277
278
|
create_table "user_has_roles", :force => true do |t|
|
278
279
|
t.integer "user_id"
|
279
280
|
t.integer "role_id"
|
280
|
-
t.datetime "created_at"
|
281
|
-
t.datetime "updated_at"
|
281
|
+
t.datetime "created_at", :null => false
|
282
|
+
t.datetime "updated_at", :null => false
|
282
283
|
end
|
283
284
|
|
284
285
|
create_table "users", :force => true do |t|
|
@@ -288,8 +289,8 @@ ActiveRecord::Schema.define(:version => 20111201163718) do
|
|
288
289
|
t.text "note"
|
289
290
|
t.string "locale"
|
290
291
|
t.string "user_number"
|
291
|
-
t.datetime "created_at"
|
292
|
-
t.datetime "updated_at"
|
292
|
+
t.datetime "created_at", :null => false
|
293
|
+
t.datetime "updated_at", :null => false
|
293
294
|
t.string "email", :default => "", :null => false
|
294
295
|
t.string "encrypted_password", :limit => 128, :default => "", :null => false
|
295
296
|
t.string "reset_password_token"
|
data/spec/dummy/db/test.sqlite3
CHANGED
Binary file
|
Binary file
|
Binary file
|
@@ -4,7 +4,6 @@ event_import_file_00001:
|
|
4
4
|
id: 1
|
5
5
|
event_import_file_name: MyString
|
6
6
|
event_import_file_size: 1
|
7
|
-
file_hash: MyString
|
8
7
|
user_id: 1
|
9
8
|
event_import_content_type: text/csv
|
10
9
|
state: completed
|
@@ -12,7 +11,6 @@ event_import_file_00002:
|
|
12
11
|
id: 2
|
13
12
|
event_import_file_name: MyString
|
14
13
|
event_import_file_size: 1
|
15
|
-
file_hash: MyString
|
16
14
|
user_id: 1
|
17
15
|
event_import_content_type: text/csv
|
18
16
|
state: pending
|
@@ -20,7 +18,6 @@ event_import_file_00003:
|
|
20
18
|
id: 3
|
21
19
|
event_import_file_name: MyString
|
22
20
|
event_import_file_size: 1
|
23
|
-
file_hash: MyString
|
24
21
|
user_id: 1
|
25
22
|
event_import_content_type: text/csv
|
26
23
|
state: pending
|