Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • C chouette-core-tmp
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Infrastructure Registry
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Administrator
  • chouette-core-tmp
  • Wiki
  • Rails spec

Rails spec · Changes

Page history
Rails spec: Clean up code formatting authored Apr 03, 2018 by Teddy Wing's avatar Teddy Wing
* Remove extra whitespace
* Make calls consistent (e.g. `before` blocks)
* Add line breaks to ensure users aren't forced to scroll horizontally
  to read the code
Hide whitespace changes
Inline Side-by-side
Showing with 46 additions and 10 deletions
+46 -10
  • Rails-spec.md Rails-spec.md +46 -10
  • No files found.
Rails-spec.md
View page @ d82a025f
...@@ -35,10 +35,18 @@ describe "/objects/index", type: :view do ...@@ -35,10 +35,18 @@ describe "/objects/index", type: :view do
} }
} }
let(:objects) do let(:objects) do
assign :objects, build_paginated_collection(:object, ObjectDecorator, parent: parent, context: context) assign(
:objects,
build_paginated_collection(
:object,
ObjectDecorator,
parent: parent,
context: context
)
)
end end
before :each do before(:each) do
allow(view).to receive(:collection).and_return(objects) allow(view).to receive(:collection).and_return(objects)
allow(view).to receive(:current_referential).and_return(parent) allow(view).to receive(:current_referential).and_return(parent)
controller.request.path_parameters[:parent_id] = parent.id controller.request.path_parameters[:parent_id] = parent.id
...@@ -46,9 +54,27 @@ describe "/objects/index", type: :view do ...@@ -46,9 +54,27 @@ describe "/objects/index", type: :view do
end end
common_items = ->{ common_items = ->{
it { should have_link_for_each_item(objects, "show", -> (object){ view.parent_object_path(parent, object) }) } it do
it { should have_link_for_each_item(objects, "foo", -> (object){ view.parent_foo_path(parent, object.foo) }) } should have_link_for_each_item(
it { should have_link_for_each_item(objects, "bar", -> (object){ view.parent_bar_path(parent, object.bar) }) } objects,
"show",
->(object) { view.parent_object_path(parent, object) }
)
end
it do
should have_link_for_each_item(
objects,
"foo",
->(object) { view.parent_foo_path(parent, object.foo) }
)
end
it do
should have_link_for_each_item(
objects,
"bar",
->(object) { view.parent_bar_path(parent, object.bar) }
)
end
} }
common_items.call() common_items.call()
...@@ -56,7 +82,15 @@ describe "/objects/index", type: :view do ...@@ -56,7 +82,15 @@ describe "/objects/index", type: :view do
with_permission "objects.activate" do with_permission "objects.activate" do
common_items.call() common_items.call()
it { should have_link_for_each_item(objects, "activate", -> (object){ view.activate_parent_object_path(parent, object) }) }
it do
should have_link_for_each_item(
objects,
"activate",
->(object) { view.activate_parent_object_path(parent, object) }
)
end
it { should have_the_right_number_of_links(objects, 4) } it { should have_the_right_number_of_links(objects, 4) }
end end
end end
...@@ -82,7 +116,7 @@ RSpec.describe ObjectController, type: :controller do ...@@ -82,7 +116,7 @@ RSpec.describe ObjectController, type: :controller do
let(:request){ put :deactivate, id: object.id, parent_id: parent.id } let(:request){ put :deactivate, id: object.id, parent_id: parent.id }
it 'should redirect to 403' do it 'should redirect to 403' do
expect(request).to redirect_to "/403" expect(request).to redirect_to "/403"
end end
with_permission "foo.bar" do with_permission "foo.bar" do
...@@ -95,11 +129,13 @@ RSpec.describe ObjectController, type: :controller do ...@@ -95,11 +129,13 @@ RSpec.describe ObjectController, type: :controller do
describe 'PUT activate' do describe 'PUT activate' do
let(:request){ put :activate, id: object.id, parent_id: parent.id } let(:request){ put :activate, id: object.id, parent_id: parent.id }
before(:each){
before(:each) do
object.deactivate! object.deactivate!
} end
it 'should redirect to 403' do it 'should redirect to 403' do
expect(request).to redirect_to "/403" expect(request).to redirect_to "/403"
end end
with_permission "objects.change_status" do with_permission "objects.change_status" do
......
Clone repository
  • Class Diagram
  • Data Models
  • Home
  • Optional Features
  • Rails Controller
  • Rails I18n
  • Rails migrations
  • Rails models
  • Rails spec
  • Rails views
  • Seed database