dorsale 1.1.4 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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