aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXinhui2017-08-16 16:35:17 +0200
committerXinhui2017-08-16 17:10:04 +0200
commitaea07f1fec58444bbc0b7c876d6dacddbe43bbcf (patch)
treefe081ad92da89f5baf801e9b28e745ccbfe74dd5
parentcbb90d47fd539025180efb9d79262a9d4f2674be (diff)
downloadchouette-core-aea07f1fec58444bbc0b7c876d6dacddbe43bbcf.tar.bz2
Import validate presence of creator
Refs #4270
-rw-r--r--app/controllers/api/v1/netex_imports_controller.rb4
-rw-r--r--app/controllers/imports_controller.rb1
-rw-r--r--app/models/import.rb2
-rw-r--r--db/schema.rb4
-rw-r--r--spec/factories/imports.rb1
-rw-r--r--spec/models/import_spec.rb1
6 files changed, 6 insertions, 7 deletions
diff --git a/app/controllers/api/v1/netex_imports_controller.rb b/app/controllers/api/v1/netex_imports_controller.rb
index 17eec2ef8..8f7c8e67e 100644
--- a/app/controllers/api/v1/netex_imports_controller.rb
+++ b/app/controllers/api/v1/netex_imports_controller.rb
@@ -26,9 +26,9 @@ module Api
end
def create_netex_import
- @netex_import = NetexImport.new(netex_import_params.merge(referential_id: @new_referential.id))
+ @netex_import = NetexImport.new(netex_import_params.merge(referential_id: @new_referential.id, creator: 'Webservice'))
@netex_import.save!
- rescue ActiveRecord::RecordInvalid
+ rescue ActiveRecord::RecordInvalid
render json: {errors: @netex_import.errors}, status: 406
finish_action!
end
diff --git a/app/controllers/imports_controller.rb b/app/controllers/imports_controller.rb
index 9ddbbb012..916e5ac23 100644
--- a/app/controllers/imports_controller.rb
+++ b/app/controllers/imports_controller.rb
@@ -59,6 +59,7 @@ class ImportsController < BreadcrumbController
# Manage only NetexImports for the moment
@import ||= NetexImport.new(*resource_params) do |import|
import.workbench = parent
+ import.creator = current_user.name
end
end
diff --git a/app/models/import.rb b/app/models/import.rb
index 17899cc82..e97649d00 100644
--- a/app/models/import.rb
+++ b/app/models/import.rb
@@ -9,7 +9,7 @@ class Import < ActiveRecord::Base
enumerize :status, in: %i(new pending successful failed running aborted canceled)
validates :file, presence: true
- validates_presence_of :referential, :workbench
+ validates_presence_of :referential, :workbench, :creator
before_create :initialize_fields
diff --git a/db/schema.rb b/db/schema.rb
index e94cbbc99..8816bab2f 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -853,10 +853,6 @@ ActiveRecord::Schema.define(version: 20170816104020) do
add_index "workbenches", ["organisation_id"], name: "index_workbenches_on_organisation_id", using: :btree
add_index "workbenches", ["stop_area_referential_id"], name: "index_workbenches_on_stop_area_referential_id", using: :btree
- create_table "yyy", id: false, force: :cascade do |t|
- t.text "value"
- end
-
add_foreign_key "access_links", "access_points", name: "aclk_acpt_fkey"
add_foreign_key "group_of_lines_lines", "group_of_lines", name: "groupofline_group_fkey", on_delete: :cascade
add_foreign_key "journey_frequencies", "timebands", on_delete: :nullify
diff --git a/spec/factories/imports.rb b/spec/factories/imports.rb
index afced3b57..2c53106c3 100644
--- a/spec/factories/imports.rb
+++ b/spec/factories/imports.rb
@@ -9,6 +9,7 @@ FactoryGirl.define do
status :new
started_at nil
ended_at nil
+ creator 'rspec'
after(:build) do |import|
import.class.skip_callback(:create, :before, :initialize_fields)
diff --git a/spec/models/import_spec.rb b/spec/models/import_spec.rb
index 164769fd5..6530b3f54 100644
--- a/spec/models/import_spec.rb
+++ b/spec/models/import_spec.rb
@@ -9,6 +9,7 @@ RSpec.describe Import, :type => :model do
it { should validate_presence_of(:file) }
it { should validate_presence_of(:referential) }
it { should validate_presence_of(:workbench) }
+ it { should validate_presence_of(:creator) }
let(:workbench_import) { build_stubbed(:workbench_import) }
let(:workbench_import_with_completed_steps) do