From da3e849d4d89ffa3de2d370a30d3d5531b50ea5b Mon Sep 17 00:00:00 2001 From: Luc Donnet Date: Mon, 20 Feb 2012 22:44:44 +0100 Subject: Add requests spec, Fix view --- Gemfile | 3 +- Gemfile.lock | 19 +-- app/controllers/chouette_controller.rb | 4 +- app/controllers/companies_controller.rb | 15 +++ app/controllers/referentials_controller.rb | 7 +- app/helpers/title_helper.rb | 2 +- app/models/referential.rb | 22 +++- app/views/companies/_company.erb | 6 + app/views/companies/_form.erb | 19 +-- app/views/companies/_line.erb | 11 -- app/views/companies/edit.html.erb | 2 +- app/views/companies/index.html.erb | 13 +- app/views/companies/new.html.erb | 2 +- app/views/companies/show.html.erb | 38 +++--- app/views/layouts/application.html.erb | 5 +- app/views/lines/_form.erb | 6 +- app/views/lines/edit.html.erb | 2 +- app/views/lines/index.html.erb | 2 +- app/views/lines/index.html.erb~ | 18 --- app/views/lines/new.html.erb | 2 +- app/views/lines/show.html.erb | 8 +- app/views/networks/edit.html.erb | 2 +- app/views/networks/show.html.erb | 40 +++--- app/views/referentials/show.html.erb | 9 +- config/database.yml | 8 +- config/initializers/ninoxe.rb | 54 ++++---- config/locales/companies.yml | 46 +++++++ config/locales/lines.yml | 8 +- config/locales/networks.yml | 4 +- config/locales/referentials.yml | 4 +- config/warble.rb | 142 +++++++++++++++++++++ lib/tasks/warbler.rake | 7 + ...application-6728c025b1babaf8d0ee37d4e69971dd.js | 19 +++ ...lication-6728c025b1babaf8d0ee37d4e69971dd.js.gz | Bin 0 -> 34991 bytes ...pplication-e9fed24cfea5caf7be7c176723e433ec.css | 1 + ...ication-e9fed24cfea5caf7be7c176723e433ec.css.gz | Bin 0 -> 2448 bytes public/assets/application.css | 1 + public/assets/application.css.gz | Bin 0 -> 2369 bytes public/assets/application.js | 19 +++ public/assets/application.js.gz | Bin 0 -> 34991 bytes public/assets/manifest.yml | 12 ++ .../rails-e4b51606cd77fda2615e7439907bfc92.png | Bin 0 -> 6646 bytes public/assets/rails.png | Bin 0 -> 6646 bytes .../ui/add-0745403a8479f8514cd70130d79e2f20.png | Bin 0 -> 733 bytes public/assets/user_interface/ui/add.png | Bin 0 -> 733 bytes .../download-ad3a34f49eb4683116303565b96c74da.png | Bin 0 -> 1089 bytes public/assets/user_interface/ui/download.png | Bin 0 -> 1089 bytes .../ui/edit-ef29c01716f6ac9f97862483a4b96d0f.png | Bin 0 -> 450 bytes public/assets/user_interface/ui/edit.png | Bin 0 -> 450 bytes .../ui/kml-756323dc227d0912c1af27280b447b08.png | Bin 0 -> 1049 bytes public/assets/user_interface/ui/kml.png | Bin 0 -> 1049 bytes .../ui/notice-033defb9e9fca2d39248d09c366771a5.png | Bin 0 -> 834 bytes public/assets/user_interface/ui/notice.png | Bin 0 -> 834 bytes .../ui/remove-caf847f872af840786e3713d3c6bf90d.png | Bin 0 -> 868 bytes public/assets/user_interface/ui/remove.png | Bin 0 -> 868 bytes .../ui/viewer-996cd206b8273907440857745e47bc02.png | Bin 0 -> 1307 bytes public/assets/user_interface/ui/viewer.png | Bin 0 -> 1307 bytes .../warning-99e5c8bbc52ed6896b8e6fdff991cb79.png | Bin 0 -> 666 bytes public/assets/user_interface/ui/warning.png | Bin 0 -> 666 bytes spec/factories/chouette_companies.rb | 5 +- spec/factories/chouette_lines.rb | 1 + spec/factories/chouette_networks.rb | 5 +- spec/factories/chouette_stop_areas.rb | 14 +- spec/requests/companies_spec.rb | 14 ++ spec/requests/lines_spec.rb | 15 +++ spec/requests/networks_spec.rb | 14 ++ spec/requests/referentials_spec.rb | 47 +++++-- spec/spec_helper.rb | 15 +++ spec/views/companies/edit.html.erb_spec.rb | 25 +--- spec/views/companies/index.html.erb_spec.rb | 17 +-- spec/views/companies/new.html.erb_spec.rb | 8 +- spec/views/companies/show.html.erb_spec.rb | 20 +-- spec/views/networks/edit.html.erb_spec.rb | 10 -- spec/views/networks/index.html.erb_spec.rb | 2 +- spec/views/networks/new.html.erb_spec.rb | 8 +- spec/views/networks/show.html.erb_spec.rb | 20 +-- 76 files changed, 571 insertions(+), 251 deletions(-) create mode 100644 app/views/companies/_company.erb delete mode 100644 app/views/companies/_line.erb delete mode 100644 app/views/lines/index.html.erb~ create mode 100644 config/locales/companies.yml create mode 100644 config/warble.rb create mode 100644 lib/tasks/warbler.rake create mode 100644 public/assets/application-6728c025b1babaf8d0ee37d4e69971dd.js create mode 100644 public/assets/application-6728c025b1babaf8d0ee37d4e69971dd.js.gz create mode 100644 public/assets/application-e9fed24cfea5caf7be7c176723e433ec.css create mode 100644 public/assets/application-e9fed24cfea5caf7be7c176723e433ec.css.gz create mode 100644 public/assets/application.css create mode 100644 public/assets/application.css.gz create mode 100644 public/assets/application.js create mode 100644 public/assets/application.js.gz create mode 100644 public/assets/manifest.yml create mode 100644 public/assets/rails-e4b51606cd77fda2615e7439907bfc92.png create mode 100644 public/assets/rails.png create mode 100644 public/assets/user_interface/ui/add-0745403a8479f8514cd70130d79e2f20.png create mode 100644 public/assets/user_interface/ui/add.png create mode 100644 public/assets/user_interface/ui/download-ad3a34f49eb4683116303565b96c74da.png create mode 100644 public/assets/user_interface/ui/download.png create mode 100644 public/assets/user_interface/ui/edit-ef29c01716f6ac9f97862483a4b96d0f.png create mode 100644 public/assets/user_interface/ui/edit.png create mode 100644 public/assets/user_interface/ui/kml-756323dc227d0912c1af27280b447b08.png create mode 100644 public/assets/user_interface/ui/kml.png create mode 100644 public/assets/user_interface/ui/notice-033defb9e9fca2d39248d09c366771a5.png create mode 100644 public/assets/user_interface/ui/notice.png create mode 100644 public/assets/user_interface/ui/remove-caf847f872af840786e3713d3c6bf90d.png create mode 100644 public/assets/user_interface/ui/remove.png create mode 100644 public/assets/user_interface/ui/viewer-996cd206b8273907440857745e47bc02.png create mode 100644 public/assets/user_interface/ui/viewer.png create mode 100644 public/assets/user_interface/ui/warning-99e5c8bbc52ed6896b8e6fdff991cb79.png create mode 100644 public/assets/user_interface/ui/warning.png create mode 100644 spec/requests/companies_spec.rb create mode 100644 spec/requests/lines_spec.rb create mode 100644 spec/requests/networks_spec.rb diff --git a/Gemfile b/Gemfile index b1b3076db..324dffd71 100644 --- a/Gemfile +++ b/Gemfile @@ -54,7 +54,6 @@ gem 'chouette-ninoxe', :git => 'git://chouette.dryade.priv/ninoxe' #gem 'chouette-ninoxe', :path => '/home/luc/projects/ninoxe' group :development do -# gem 'less' gem 'autotest-rails' gem 'autotest-notification' gem 'capistrano' @@ -78,6 +77,8 @@ group :cucumber do end group :test, :cucumber do + gem 'capybara' + gem 'launchy' gem 'database_cleaner' gem 'factory_girl_rails' gem 'factory_girl' diff --git a/Gemfile.lock b/Gemfile.lock index 6e9a9c6b1..9828b8ffb 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,3 +1,13 @@ +GIT + remote: git://chouette.dryade.priv/ninoxe + revision: 43d9b18e35b62004b5f5f86ba4679d6592b3454c + specs: + chouette-ninoxe (0.0.8) + GeoRuby + activerecord + composite_primary_keys + geokit + GIT remote: git://github.com/dryade/activerecord-jdbc-adapter.git revision: 5b45a0a417e146e92db8c57b5c600cdeb9e957bf @@ -43,15 +53,6 @@ GIT user_interface (0.0.1) rails (~> 3.1.0) -PATH - remote: /home/luc/projects/ninoxe - specs: - chouette-ninoxe (0.0.8) - GeoRuby - activerecord - composite_primary_keys - geokit - GEM remote: http://rubygems.org/ specs: diff --git a/app/controllers/chouette_controller.rb b/app/controllers/chouette_controller.rb index 051e2fd77..1b9f30a85 100644 --- a/app/controllers/chouette_controller.rb +++ b/app/controllers/chouette_controller.rb @@ -7,7 +7,7 @@ class ChouetteController < InheritedResources::Base end def referential - @referential = Referential.find params[:referential_id] + @referential ||= Referential.find params[:referential_id] end -end \ No newline at end of file +end diff --git a/app/controllers/companies_controller.rb b/app/controllers/companies_controller.rb index 3cb440ea2..4fb83d789 100644 --- a/app/controllers/companies_controller.rb +++ b/app/controllers/companies_controller.rb @@ -4,4 +4,19 @@ class CompaniesController < ChouetteController respond_to :xml respond_to :json + # def update + # update! do |success, failure| + # failure.html { redirect_to referential_companies_path(@resource, @referential) } + # end + # end + + protected + + + # def resource_url(company = nil) + # puts "########################################" + # puts referential_company_path(referential, company || @resource).inspect + # referential_company_path(referential, company || @resource) + # end + end diff --git a/app/controllers/referentials_controller.rb b/app/controllers/referentials_controller.rb index 539c7ca5d..a5e3b7247 100644 --- a/app/controllers/referentials_controller.rb +++ b/app/controllers/referentials_controller.rb @@ -1,9 +1,4 @@ class ReferentialsController < InheritedResources::Base - - before_filter :switch_referential - - def switch_referential - Apartment::Database.switch(referential.slug) - end + respond_to :html end diff --git a/app/helpers/title_helper.rb b/app/helpers/title_helper.rb index f5219276b..2203151a3 100644 --- a/app/helpers/title_helper.rb +++ b/app/helpers/title_helper.rb @@ -7,7 +7,7 @@ module TitleHelper @title end end - + def title_tag(title, options = nil) content_tag :h2, title(title), options end diff --git a/app/models/referential.rb b/app/models/referential.rb index 430785470..a329bf950 100644 --- a/app/models/referential.rb +++ b/app/models/referential.rb @@ -2,9 +2,29 @@ class Referential < ActiveRecord::Base validates_presence_of :name validates_presence_of :slug + before_create :create_schema + before_destroy :destroy_schema + def lines Chouette::Line.all - end + end + + def networks + Chouette::Network.all + end + + def companies + Chouette::Company.all + end + + private + + def create_schema + Apartment::Database.create self.slug + end + def destroy_schema + Apartment::Database.drop self.slug + end end diff --git a/app/views/companies/_company.erb b/app/views/companies/_company.erb new file mode 100644 index 000000000..9d4683414 --- /dev/null +++ b/app/views/companies/_company.erb @@ -0,0 +1,6 @@ +<%= div_for(company) do %> + <%= link_to company.name, [@referential, company] %> +
- - <%= @line.network.name if @line.network.present? %> + + <%= @company.registration_number %>
- - <%= @line.company.name if @line.company.present? %> + + <%= @company.name %>
- - <%= @line.registrationnumber %> + + <%= @company.short_name %>
- - <%= @line.name %> + + <%= @company.organizational_unit %>
- - <%= @line.publishedname %> + + <%= @company.operating_department_name %>
- - <%= @line.number %> + + <%= @company.phone %>
- - <%= @line.transportmodename %> + + <%= @company.fax %>
- - <%= @line.comment %> + + <%= @company.email %>
- <%= @line.registrationnumber %> + <%= @line.registration_number %>
@@ -28,8 +28,8 @@ <%= @line.number %>
- - <%= @line.transportmodename %> + + <%= @line.transport_mode_name %>
diff --git a/app/views/networks/edit.html.erb b/app/views/networks/edit.html.erb index 90ffef291..b551690d6 100644 --- a/app/views/networks/edit.html.erb +++ b/app/views/networks/edit.html.erb @@ -1,3 +1,3 @@ -<%= title_tag t('networks.index.title'), {@line.name} %> +<%= title_tag t('networks.edit.title', :network => @network.name) %> <%= render "form" %> diff --git a/app/views/networks/show.html.erb b/app/views/networks/show.html.erb index 478d2f8aa..4fb8c3201 100644 --- a/app/views/networks/show.html.erb +++ b/app/views/networks/show.html.erb @@ -1,47 +1,43 @@ -<%= title_tag t('networks.show.title'), @line.name %> +<%= title_tag t('networks.show.title', :network => @network.name )%> -
- - <%= @line.network.name if @line.network.present? %> + + <%= @network.registrationnumber %>
- - <%= @line.company.name if @line.company.present? %> + + <%= @network.name %>
- - <%= @line.registrationnumber %> + + <%= @network.comment %>
- - <%= @line.name %> + + <%= @network.version_date %>
- - <%= @line.publishedname %> + + <%= @network.description %>
- - <%= @line.number %> + + <%= @network.source_name %>
- - <%= @line.transportmodename %> -
-- - <%= @line.comment %> + + <%= @network.source_identifier %>
| t |