dorsale 1.1.4 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (30) hide show
  1. data/app/assets/javascripts/dorsale/forms.coffee +3 -0
  2. data/app/controllers/dorsale/small_data/filters_controller.rb +7 -5
  3. data/app/helpers/dorsale/button_helper.rb +2 -2
  4. data/app/helpers/dorsale/context_helper.rb +7 -2
  5. data/app/helpers/dorsale/form_helper.rb +19 -2
  6. data/app/models/dorsale/address.rb +5 -3
  7. data/app/views/dorsale/comments/_comment.html.slim +20 -0
  8. data/app/views/dorsale/comments/_comments.html.slim +1 -20
  9. data/config/locales/fr.yml +8 -0
  10. data/config/routes.rb +0 -1
  11. data/lib/dorsale/version.rb +1 -1
  12. data/spec/controllers/dorsale/small_data/filters_controller_spec.rb +38 -0
  13. data/spec/dummy/log/test.log +624 -3777
  14. data/spec/models/dorsale/address_spec.rb +27 -17
  15. data/spec/models/dorsale/small_data/filter_spec.rb +45 -0
  16. metadata +9 -25
  17. data/app/controllers/dorsale/addresses_controller.rb +0 -62
  18. data/app/views/dorsale/addresses/_form.html.slim +0 -11
  19. data/app/views/dorsale/addresses/_nested_form.html.slim +0 -20
  20. data/app/views/dorsale/addresses/edit.html.slim +0 -8
  21. data/app/views/dorsale/addresses/index.html.slim +0 -29
  22. data/app/views/dorsale/addresses/new.html.slim +0 -5
  23. data/app/views/dorsale/addresses/show.html.slim +0 -21
  24. data/spec/controllers/dorsale/addresses_controller_spec.rb +0 -162
  25. data/spec/dummy/log/development.log +0 -24
  26. data/spec/routing/dorsale/addresses_routing_spec.rb +0 -38
  27. data/spec/views/dorsale/addresses/edit.html.slim_spec.rb +0 -32
  28. data/spec/views/dorsale/addresses/index.html.slim_spec.rb +0 -32
  29. data/spec/views/dorsale/addresses/new.html.slim_spec.rb +0 -32
  30. data/spec/views/dorsale/addresses/show.html.slim_spec.rb +0 -24
@@ -2,33 +2,43 @@ require 'rails_helper'
2
2
 
3
3
  module Dorsale
4
4
  RSpec.describe Address, :type => :model do
5
- it {should validate_presence_of :city}
6
- it {should belong_to :addressable}
5
+ it { should belong_to :addressable }
6
+ it { should validate_presence_of :addressable }
7
+
7
8
  describe '#one_line' do
8
9
  it 'should build a one line address' do
9
- address = Address.create(street: '3 Rue Marx Dormoy',
10
- street_bis: 'L\'atelier',
11
- zip: '13004',
12
- city: 'Marseille',
13
- country: 'France')
10
+ address = Address.create(
11
+ street: '3 Rue Marx Dormoy',
12
+ street_bis: 'L\'atelier',
13
+ zip: '13004',
14
+ city: 'Marseille',
15
+ country: 'France'
16
+ )
17
+
14
18
  expect(address.one_line).to eq('3 Rue Marx Dormoy, L\'atelier, 13004 Marseille, France')
15
19
  end
16
20
 
17
21
  it 'should remove useless commas' do
18
- address = Address.create(street: '3 Rue Marx Dormoy',
19
- street_bis: '',
20
- zip: '13004',
21
- city: 'Marseille',
22
- country: '')
22
+ address = Address.create(
23
+ street: '3 Rue Marx Dormoy',
24
+ street_bis: '',
25
+ zip: '13004',
26
+ city: 'Marseille',
27
+ country: ''
28
+ )
29
+
23
30
  expect(address.one_line).to eq('3 Rue Marx Dormoy, 13004 Marseille')
24
31
  end
25
32
 
26
33
  it 'should remove useless commas' do
27
- address = Address.create(street: '3 Rue Marx Dormoy',
28
- street_bis: '',
29
- zip: '',
30
- city: 'Marseille',
31
- country: '')
34
+ address = Address.create(
35
+ street: '3 Rue Marx Dormoy',
36
+ street_bis: '',
37
+ zip: '',
38
+ city: 'Marseille',
39
+ country: ''
40
+ )
41
+
32
42
  expect(address.one_line).to eq('3 Rue Marx Dormoy, Marseille')
33
43
  end
34
44
  end
@@ -0,0 +1,45 @@
1
+ require "rails_helper"
2
+
3
+ module Dorsale
4
+ describe SmallData::Filter do
5
+ let(:jar) { {} }
6
+ let(:filter) { {"name" => "bidule"} }
7
+ let(:f) { Dorsale::SmallData::Filter.new(jar) }
8
+
9
+ describe "store" do
10
+ it "should store the provided hash as json in the jar" do
11
+ f.store(filter)
12
+ expect(jar["filters"]).to eq filter.to_json
13
+ end
14
+ end
15
+
16
+ describe "read" do
17
+ it "should read stored filters" do
18
+ f.store(filter)
19
+ expect(f.read).to eq(filter)
20
+ end
21
+ it "should return empty hash by default" do
22
+ expect(f.read).to eq({})
23
+ end
24
+ it "should return empty hash on invalid json" do
25
+ jar["filters"] = "ce json est invalide"
26
+ expect(f.read).to eq({})
27
+ end
28
+ end
29
+
30
+ describe "get" do
31
+ it "should return the value" do
32
+ f.store(filter)
33
+ expect(f.get("name")).to eq("bidule")
34
+ end
35
+ end
36
+
37
+ describe "set" do
38
+ it "should set the value" do
39
+ f.store(filter)
40
+ f.set("new", "truc")
41
+ expect(f.get("new")).to eq("truc")
42
+ end
43
+ end
44
+ end
45
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dorsale
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.4
4
+ version: 1.2.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-04-09 00:00:00.000000000 Z
12
+ date: 2015-04-20 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
@@ -270,7 +270,6 @@ files:
270
270
  - app/assets/stylesheets/dorsale/forms.sass
271
271
  - app/assets/stylesheets/dorsale/styles.sass
272
272
  - app/assets/stylesheets/dorsale/tables.sass
273
- - app/controllers/dorsale/addresses_controller.rb
274
273
  - app/controllers/dorsale/application_controller.rb
275
274
  - app/controllers/dorsale/comments_controller.rb
276
275
  - app/controllers/dorsale/small_data/filters_controller.rb
@@ -288,12 +287,7 @@ files:
288
287
  - app/views/dorsale/_actions.html.slim
289
288
  - app/views/dorsale/_contextual.html.slim
290
289
  - app/views/dorsale/_flash.html.slim
291
- - app/views/dorsale/addresses/_form.html.slim
292
- - app/views/dorsale/addresses/_nested_form.html.slim
293
- - app/views/dorsale/addresses/edit.html.slim
294
- - app/views/dorsale/addresses/index.html.slim
295
- - app/views/dorsale/addresses/new.html.slim
296
- - app/views/dorsale/addresses/show.html.slim
290
+ - app/views/dorsale/comments/_comment.html.slim
297
291
  - app/views/dorsale/comments/_comments.html.slim
298
292
  - app/views/dorsale/comments/_form.html.slim
299
293
  - config/locales/fr.yml
@@ -312,7 +306,7 @@ files:
312
306
  - MIT-LICENSE
313
307
  - Rakefile
314
308
  - README.rdoc
315
- - spec/controllers/dorsale/addresses_controller_spec.rb
309
+ - spec/controllers/dorsale/small_data/filters_controller_spec.rb
316
310
  - spec/dummy/app/assets/javascripts/application.js
317
311
  - spec/dummy/app/assets/stylesheets/application.css
318
312
  - spec/dummy/app/controllers/application_controller.rb
@@ -341,7 +335,6 @@ files:
341
335
  - spec/dummy/db/development.sqlite3
342
336
  - spec/dummy/db/schema.rb
343
337
  - spec/dummy/db/test.sqlite3
344
- - spec/dummy/log/development.log
345
338
  - spec/dummy/log/test.log
346
339
  - spec/dummy/public/404.html
347
340
  - spec/dummy/public/422.html
@@ -351,14 +344,10 @@ files:
351
344
  - spec/dummy/README.rdoc
352
345
  - spec/factories/dorsale_addresses.rb
353
346
  - spec/models/dorsale/address_spec.rb
347
+ - spec/models/dorsale/small_data/filter_spec.rb
354
348
  - spec/rails_helper.rb
355
- - spec/routing/dorsale/addresses_routing_spec.rb
356
349
  - spec/routing/dorsale/small_data_routing_spec.rb
357
350
  - spec/spec_helper.rb
358
- - spec/views/dorsale/addresses/edit.html.slim_spec.rb
359
- - spec/views/dorsale/addresses/index.html.slim_spec.rb
360
- - spec/views/dorsale/addresses/new.html.slim_spec.rb
361
- - spec/views/dorsale/addresses/show.html.slim_spec.rb
362
351
  homepage: https://github.com/agilidee/dorsale
363
352
  licenses: []
364
353
  post_install_message:
@@ -373,7 +362,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
373
362
  version: '0'
374
363
  segments:
375
364
  - 0
376
- hash: 2165199409979397592
365
+ hash: 3070631001148619015
377
366
  required_rubygems_version: !ruby/object:Gem::Requirement
378
367
  none: false
379
368
  requirements:
@@ -382,7 +371,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
382
371
  version: '0'
383
372
  segments:
384
373
  - 0
385
- hash: 2165199409979397592
374
+ hash: 3070631001148619015
386
375
  requirements: []
387
376
  rubyforge_project:
388
377
  rubygems_version: 1.8.23.2
@@ -390,7 +379,7 @@ signing_key:
390
379
  specification_version: 3
391
380
  summary: Modular ERP made with Ruby on Rails
392
381
  test_files:
393
- - spec/controllers/dorsale/addresses_controller_spec.rb
382
+ - spec/controllers/dorsale/small_data/filters_controller_spec.rb
394
383
  - spec/dummy/app/assets/javascripts/application.js
395
384
  - spec/dummy/app/assets/stylesheets/application.css
396
385
  - spec/dummy/app/controllers/application_controller.rb
@@ -419,7 +408,6 @@ test_files:
419
408
  - spec/dummy/db/development.sqlite3
420
409
  - spec/dummy/db/schema.rb
421
410
  - spec/dummy/db/test.sqlite3
422
- - spec/dummy/log/development.log
423
411
  - spec/dummy/log/test.log
424
412
  - spec/dummy/public/404.html
425
413
  - spec/dummy/public/422.html
@@ -429,11 +417,7 @@ test_files:
429
417
  - spec/dummy/README.rdoc
430
418
  - spec/factories/dorsale_addresses.rb
431
419
  - spec/models/dorsale/address_spec.rb
420
+ - spec/models/dorsale/small_data/filter_spec.rb
432
421
  - spec/rails_helper.rb
433
- - spec/routing/dorsale/addresses_routing_spec.rb
434
422
  - spec/routing/dorsale/small_data_routing_spec.rb
435
423
  - spec/spec_helper.rb
436
- - spec/views/dorsale/addresses/edit.html.slim_spec.rb
437
- - spec/views/dorsale/addresses/index.html.slim_spec.rb
438
- - spec/views/dorsale/addresses/new.html.slim_spec.rb
439
- - spec/views/dorsale/addresses/show.html.slim_spec.rb
@@ -1,62 +0,0 @@
1
- require_dependency "dorsale/application_controller"
2
-
3
- module Dorsale
4
- class AddressesController < ApplicationController
5
- before_action :set_address, only: [:show, :edit, :update, :destroy]
6
-
7
- # GET /addresses
8
- def index
9
- @addresses = Address.all
10
- end
11
-
12
- # GET /addresses/1
13
- def show
14
- end
15
-
16
- # GET /addresses/new
17
- def new
18
- @address = Address.new
19
- end
20
-
21
- # GET /addresses/1/edit
22
- def edit
23
- end
24
-
25
- # POST /addresses
26
- def create
27
- @address = Address.new(address_params)
28
-
29
- if @address.save
30
- redirect_to @address, notice: 'Address was successfully created.'
31
- else
32
- render action: 'new'
33
- end
34
- end
35
-
36
- # PATCH/PUT /addresses/1
37
- def update
38
- if @address.update(address_params)
39
- redirect_to [dorsale, @address], notice: 'Address was successfully updated.'
40
- else
41
- render action: 'edit'
42
- end
43
- end
44
-
45
- # DELETE /addresses/1
46
- def destroy
47
- @address.destroy
48
- redirect_to dorsale.addresses_url, notice: 'Address was successfully destroyed.'
49
- end
50
-
51
- private
52
- # Use callbacks to share common setup or constraints between actions.
53
- def set_address
54
- @address = Address.find(params[:id])
55
- end
56
-
57
- # Only allow a trusted parameter "white list" through.
58
- def address_params
59
- params.require(:address).permit(:street, :street_bis, :city, :zip, :country)
60
- end
61
- end
62
- end
@@ -1,11 +0,0 @@
1
- = form_for [dorsale, @address] do |f|
2
- - if @address.errors.any?
3
- #error_explanation
4
- h2 = "#{pluralize(@address.errors.count, "error")} prohibited this address from being saved:"
5
- ul
6
- - @address.errors.full_messages.each do |message|
7
- li = message
8
-
9
- = render partial: 'dorsale/addresses/nested_form', :locals => {:f => f}
10
-
11
- .actions = f.submit 'Save'
@@ -1,20 +0,0 @@
1
- .form-group
2
- = f.label "Street", class:"control-label col-lg-2"
3
- div class="col-lg-10"
4
- = f.text_field :street, class:"form-control"
5
- .form-group
6
- = f.label "Street bis", class:"control-label col-lg-2"
7
- div class="col-lg-10"
8
- = f.text_field :street_bis, class:"form-control"
9
- .form-group
10
- = f.label "zip", class:"control-label col-lg-2"
11
- div class="col-lg-10"
12
- = f.text_field :zip, class:"form-control"
13
- .form-group
14
- = f.label "city", class:"control-label col-lg-2"
15
- div class="col-lg-10"
16
- = f.text_field :city, class:"form-control"
17
- .form-group
18
- = f.label "country", class:"control-label col-lg-2"
19
- div class="col-lg-10"
20
- = f.text_field :country, class:"form-control"
@@ -1,8 +0,0 @@
1
- h1 Editing address
2
-
3
- == render 'form'
4
-
5
- = link_to 'Show', [dorsale, @address]
6
- '|
7
- = link_to 'Back', dorsale.addresses_path
8
-
@@ -1,29 +0,0 @@
1
- h1 Listing addresses
2
-
3
- table
4
- thead
5
- tr
6
- th Street
7
- th Street bis
8
- th City
9
- th Zip
10
- th Country
11
- th
12
- th
13
- th
14
-
15
- tbody
16
- - @addresses.each do |address|
17
- tr
18
- td = address.street
19
- td = address.street_bis
20
- td = address.city
21
- td = address.zip
22
- td = address.country
23
- td = link_to 'Show', [dorsale, address]
24
- td = link_to 'Edit', dorsale.edit_address_path(address)
25
- td = link_to 'Destroy', [dorsale, address], data: {:confirm => 'Are you sure?'}, :method => :delete
26
-
27
- br
28
-
29
- = link_to 'New Address', dorsale.new_address_path
@@ -1,5 +0,0 @@
1
- h1 New address
2
-
3
- == render 'form'
4
-
5
- = link_to 'Back', dorsale.addresses_path
@@ -1,21 +0,0 @@
1
- p#notice = notice
2
-
3
- p
4
- strong Street:
5
- = @address.street
6
- p
7
- strong Street bis:
8
- = @address.street_bis
9
- p
10
- strong City:
11
- = @address.city
12
- p
13
- strong Zip:
14
- = @address.zip
15
- p
16
- strong Country:
17
- = @address.country
18
-
19
- = link_to 'Edit', dorsale.edit_address_path(@address)
20
- '|
21
- = link_to 'Back', dorsale.addresses_path
@@ -1,162 +0,0 @@
1
- require 'rails_helper'
2
-
3
- # This spec was generated by rspec-rails when you ran the scaffold generator.
4
- # It demonstrates how one might use RSpec to specify the controller code that
5
- # was generated by Rails when you ran the scaffold generator.
6
- #
7
- # It assumes that the implementation code is generated by the rails scaffold
8
- # generator. If you are using any extension libraries to generate different
9
- # controller code, this generated spec may or may not pass.
10
- #
11
- # It only uses APIs available in rails and/or rspec-rails. There are a number
12
- # of tools you can use to make these specs even more expressive, but we're
13
- # sticking to rails and rspec-rails APIs to keep things simple and stable.
14
- #
15
- # Compared to earlier versions of this generator, there is very limited use of
16
- # stubs and message expectations in this spec. Stubs are only used when there
17
- # is no simpler way to get a handle on the object needed for the example.
18
- # Message expectations are only used when there is no simpler way to specify
19
- # that an instance is receiving a specific message.
20
-
21
- module Dorsale
22
- RSpec.describe AddressesController, :type => :controller do
23
- routes { Dorsale::Engine.routes }
24
-
25
- # This should return the minimal set of attributes required to create a valid
26
- # Address. As you add validations to Address, be sure to
27
- # adjust the attributes here as well.
28
- let(:valid_attributes) {
29
- FactoryGirl.attributes_for(:dorsale_address)
30
- }
31
-
32
- let(:invalid_attributes) {
33
- {city: ''}
34
- }
35
-
36
- # This should return the minimal set of values that should be in the session
37
- # in order to pass any filters (e.g. authentication) defined in
38
- # AddressesController. Be sure to keep this updated too.
39
- let(:valid_session) { {} }
40
-
41
- describe "GET index" do
42
- it "assigns all addresses as @addresses" do
43
- address = Address.create! valid_attributes
44
- get :index, {}, valid_session
45
- expect(assigns(:addresses)).to eq([address])
46
- end
47
- end
48
-
49
- describe "GET show" do
50
- it "assigns the requested address as @address" do
51
- address = Address.create! valid_attributes
52
- get :show, {:id => address.to_param}, valid_session
53
- expect(assigns(:address)).to eq(address)
54
- end
55
- end
56
-
57
- describe "GET new" do
58
- it "assigns a new address as @address" do
59
- get :new, {}, valid_session
60
- expect(assigns(:address)).to be_a_new(Address)
61
- end
62
- end
63
-
64
- describe "GET edit" do
65
- it "assigns the requested address as @address" do
66
- address = Address.create! valid_attributes
67
- get :edit, {:id => address.to_param}, valid_session
68
- expect(assigns(:address)).to eq(address)
69
- end
70
- end
71
-
72
- describe "POST create" do
73
- describe "with valid params" do
74
- it "creates a new Address" do
75
- expect {
76
- post :create, {:address => valid_attributes}, valid_session
77
- }.to change(Address, :count).by(1)
78
- end
79
-
80
- it "assigns a newly created address as @address" do
81
- post :create, {:address => valid_attributes}, valid_session
82
- expect(assigns(:address)).to be_a(Address)
83
- expect(assigns(:address)).to be_persisted
84
- end
85
-
86
- it "redirects to the created address" do
87
- post :create, {:address => valid_attributes}, valid_session
88
- expect(response).to redirect_to(Address.last)
89
- end
90
- end
91
-
92
- describe "with invalid params" do
93
- it "assigns a newly created but unsaved address as @address" do
94
- post :create, {:address => invalid_attributes}, valid_session
95
- expect(assigns(:address)).to be_a_new(Address)
96
- end
97
-
98
- it "re-renders the 'new' template" do
99
- post :create, {:address => invalid_attributes}, valid_session
100
- expect(response).to render_template("new")
101
- end
102
- end
103
- end
104
-
105
- describe "PUT update" do
106
- describe "with valid params" do
107
- let(:new_attributes) {
108
- {city: 'new city'}
109
- }
110
-
111
- it "updates the requested address" do
112
- address = Address.create! valid_attributes
113
- put :update, {:id => address.to_param, :address => new_attributes}, valid_session
114
- address.reload
115
- expect(address.city).to eq('new city')
116
- end
117
-
118
- it "assigns the requested address as @address" do
119
- address = Address.create! valid_attributes
120
- put :update, {:id => address.to_param, :address => valid_attributes}, valid_session
121
- expect(assigns(:address)).to eq(address)
122
- end
123
-
124
- it "redirects to the address" do
125
- address = Address.create! valid_attributes
126
- put :update, {:id => address.to_param, :address => valid_attributes}, valid_session
127
- expect(response).to redirect_to(address)
128
- end
129
- end
130
-
131
- describe "with invalid params" do
132
- it "assigns the address as @address" do
133
- address = Address.create! valid_attributes
134
- put :update, {:id => address.to_param, :address => invalid_attributes}, valid_session
135
- expect(assigns(:address)).to eq(address)
136
- end
137
-
138
- it "re-renders the 'edit' template" do
139
- address = Address.create! valid_attributes
140
- put :update, {:id => address.to_param, :address => invalid_attributes}, valid_session
141
- expect(response).to render_template("edit")
142
- end
143
- end
144
- end
145
-
146
- describe "DELETE destroy" do
147
- it "destroys the requested address" do
148
- address = Address.create! valid_attributes
149
- expect {
150
- delete :destroy, {:id => address.to_param}, valid_session
151
- }.to change(Address, :count).by(-1)
152
- end
153
-
154
- it "redirects to the addresses list" do
155
- address = Address.create! valid_attributes
156
- delete :destroy, {:id => address.to_param}, valid_session
157
- expect(response).to redirect_to(addresses_url)
158
- end
159
- end
160
-
161
- end
162
- end