aboutsummaryrefslogtreecommitdiffstats
path: root/app
diff options
context:
space:
mode:
authorRobert2017-07-17 15:34:33 +0200
committerRobert2017-07-19 08:40:03 +0200
commit0c69d141911a1f8e55c50d521691506ba7f32ac0 (patch)
treeff6f6586c6a24d0e4fc56683da3ab139178fdb0e /app
parenteac2dc45fdf6c7dbaa413396ea513b1642b32c1c (diff)
downloadchouette-core-0c69d141911a1f8e55c50d521691506ba7f32ac0.tar.bz2
Refs: #3506@16h Request Spec for NetexImport API and implementation
- Carrier Wave Upload with `fixture_file_upload` - Request specs to .json - Implementation - API token setup - Refuted experiments with controller specs
Diffstat (limited to 'app')
-rw-r--r--app/controllers/api/v1/netex_imports_controller.rb26
-rw-r--r--app/controllers/imports_controller.rb2
-rw-r--r--app/models/netex_import.rb1
-rw-r--r--app/views/api/v1/netex_imports/create.json.rabl3
4 files changed, 30 insertions, 2 deletions
diff --git a/app/controllers/api/v1/netex_imports_controller.rb b/app/controllers/api/v1/netex_imports_controller.rb
new file mode 100644
index 000000000..16a7cef69
--- /dev/null
+++ b/app/controllers/api/v1/netex_imports_controller.rb
@@ -0,0 +1,26 @@
+module Api
+ module V1
+ class NetexImportsController < ChouetteController
+
+ def create
+ respond_to do | format |
+ format.json do
+ @import = NetexImport.create(netex_import_params)
+ unless @import.valid?
+ render json: {errors: @import.errors}, status: 406
+ end
+ end
+ end
+ end
+
+
+ private
+
+ def netex_import_params
+ params
+ .require('netex_import')
+ .permit(:file, :name, :referential_id)
+ end
+ end
+ end
+end
diff --git a/app/controllers/imports_controller.rb b/app/controllers/imports_controller.rb
index 01a46f064..70c5c1a0d 100644
--- a/app/controllers/imports_controller.rb
+++ b/app/controllers/imports_controller.rb
@@ -23,8 +23,6 @@ class ImportsController < BreadcrumbController
end
def create
- require 'pry'
- binding.pry
create! { workbench_import_path(parent, resource) }
end
diff --git a/app/models/netex_import.rb b/app/models/netex_import.rb
index de5b84537..40eaca523 100644
--- a/app/models/netex_import.rb
+++ b/app/models/netex_import.rb
@@ -1,5 +1,6 @@
require 'net/http'
class NetexImport < Import
+ mount_uploader :file, ImportUploader
after_commit :launch_java_import
def launch_java_import
diff --git a/app/views/api/v1/netex_imports/create.json.rabl b/app/views/api/v1/netex_imports/create.json.rabl
new file mode 100644
index 000000000..1361cdb80
--- /dev/null
+++ b/app/views/api/v1/netex_imports/create.json.rabl
@@ -0,0 +1,3 @@
+
+object @import
+attributes :id, :type