rows_controller 2.1.3 → 2.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.
- checksums.yaml +4 -4
- data/app/controllers/rows_controller.rb.bak +88 -0
- data/lib/rows/model.rb.bak +30 -0
- data/lib/rows/resources.rb.bak +80 -0
- data/lib/rows/version.rb +1 -1
- data/lib/rows/version.rb.bak +3 -0
- metadata +7 -197
- data/.gitignore +0 -8
- data/.ruby-gemset +0 -1
- data/.ruby-version +0 -1
- data/.travis.yml +0 -22
- data/Appraisals +0 -21
- data/Gemfile +0 -14
- data/NOTES +0 -87
- data/Rakefile +0 -12
- data/app/controllers/.keep +0 -0
- data/app/views/.keep +0 -0
- data/bin/rails +0 -12
- data/gemfiles/rails_4.2.0.gemfile +0 -13
- data/gemfiles/rails_4.2.4.gemfile +0 -13
- data/gemfiles/rails_5.1.gemfile +0 -17
- data/gemfiles/rails_5.2.gemfile +0 -17
- data/rows_controller.gemspec +0 -25
- data/script/rails +0 -8
- data/test/.watchr +0 -61
- data/test/controllers/order/items_controller_test.rb +0 -64
- data/test/controllers/orders_test.rb +0 -96
- data/test/controllers/rows_controller_test.rb +0 -52
- data/test/controllers/rows_ext_controller_test.rb +0 -25
- data/test/dummy3/Rakefile +0 -6
- data/test/dummy3/app/controllers/application_controller.rb +0 -3
- data/test/dummy3/app/controllers/order/items_controller.rb +0 -8
- data/test/dummy3/app/controllers/orders_controller.rb +0 -8
- data/test/dummy3/app/models/order.rb +0 -14
- data/test/dummy3/app/models/order/item.rb +0 -4
- data/test/dummy3/app/views/layouts/application.html.erb +0 -12
- data/test/dummy3/app/views/order/items/_form.html.erb +0 -8
- data/test/dummy3/app/views/orders/_form.html.erb +0 -8
- data/test/dummy3/config.ru +0 -4
- data/test/dummy3/config/application.rb +0 -58
- data/test/dummy3/config/boot.rb +0 -10
- data/test/dummy3/config/database.yml +0 -25
- data/test/dummy3/config/environment.rb +0 -5
- data/test/dummy3/config/environments/development.rb +0 -37
- data/test/dummy3/config/environments/production.rb +0 -67
- data/test/dummy3/config/environments/test.rb +0 -37
- data/test/dummy3/config/initializers/secret_token.rb +0 -7
- data/test/dummy3/config/initializers/session_store.rb +0 -8
- data/test/dummy3/config/initializers/wrap_parameters.rb +0 -14
- data/test/dummy3/config/routes.rb +0 -9
- data/test/dummy3/db/migrate/001_create_orders.rb +0 -9
- data/test/dummy3/db/migrate/002_create_order_items.rb +0 -9
- data/test/dummy3/db/schema.rb +0 -28
- data/test/dummy3/script/rails +0 -6
- data/test/dummy4/Rakefile +0 -6
- data/test/dummy4/app/controllers/application_controller.rb +0 -3
- data/test/dummy4/app/controllers/order/items_controller.rb +0 -8
- data/test/dummy4/app/controllers/orders_controller.rb +0 -8
- data/test/dummy4/app/models/order.rb +0 -13
- data/test/dummy4/app/models/order/item.rb +0 -2
- data/test/dummy4/app/views/layouts/application.html.erb +0 -12
- data/test/dummy4/app/views/order/items/_form.html.erb +0 -8
- data/test/dummy4/app/views/orders/_form.html.erb +0 -8
- data/test/dummy4/bin/bundle +0 -3
- data/test/dummy4/bin/rails +0 -4
- data/test/dummy4/bin/rake +0 -4
- data/test/dummy4/bin/setup +0 -29
- data/test/dummy4/config.ru +0 -4
- data/test/dummy4/config/application.rb +0 -25
- data/test/dummy4/config/boot.rb +0 -5
- data/test/dummy4/config/database.yml +0 -25
- data/test/dummy4/config/environment.rb +0 -5
- data/test/dummy4/config/environments/development.rb +0 -41
- data/test/dummy4/config/environments/production.rb +0 -79
- data/test/dummy4/config/environments/test.rb +0 -42
- data/test/dummy4/config/initializers/cookies_serializer.rb +0 -3
- data/test/dummy4/config/initializers/filter_parameter_logging.rb +0 -4
- data/test/dummy4/config/initializers/session_store.rb +0 -3
- data/test/dummy4/config/initializers/wrap_parameters.rb +0 -14
- data/test/dummy4/config/routes.rb +0 -9
- data/test/dummy4/config/secrets.yml +0 -22
- data/test/dummy4/db/migrate/001_create_orders.rb +0 -9
- data/test/dummy4/db/migrate/002_create_order_items.rb +0 -9
- data/test/dummy4/db/schema.rb +0 -28
- data/test/dummy4/log/.keep +0 -0
- data/test/dummy5/Rakefile +0 -6
- data/test/dummy5/app/controllers/application_controller.rb +0 -3
- data/test/dummy5/app/controllers/order/items_controller.rb +0 -8
- data/test/dummy5/app/controllers/orders_controller.rb +0 -8
- data/test/dummy5/app/models/application_record.rb +0 -3
- data/test/dummy5/app/models/order.rb +0 -12
- data/test/dummy5/app/models/order/item.rb +0 -2
- data/test/dummy5/app/views/layouts/application.html.erb +0 -12
- data/test/dummy5/app/views/order/items/_form.html.erb +0 -8
- data/test/dummy5/app/views/orders/_form.html.erb +0 -8
- data/test/dummy5/bin/rails +0 -9
- data/test/dummy5/config.ru +0 -5
- data/test/dummy5/config/application.rb +0 -19
- data/test/dummy5/config/boot.rb +0 -6
- data/test/dummy5/config/database.yml +0 -25
- data/test/dummy5/config/environment.rb +0 -5
- data/test/dummy5/config/environments/test.rb +0 -42
- data/test/dummy5/config/routes.rb +0 -9
- data/test/dummy5/config/secrets.yml +0 -32
- data/test/dummy5/config/spring.rb +0 -6
- data/test/dummy5/db/migrate/001_create_orders.rb +0 -9
- data/test/dummy5/db/migrate/002_create_order_items.rb +0 -9
- data/test/dummy5/db/schema.rb +0 -27
- data/test/dummy5/log/.keep +0 -0
- data/test/fixtures/order/items.yml +0 -5
- data/test/fixtures/orders.yml +0 -5
- data/test/test_helper.rb +0 -31
data/.gitignore
DELETED
data/.ruby-gemset
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
rails-5.2
|
data/.ruby-version
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
ruby-2.5.1
|
data/.travis.yml
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
language: ruby
|
|
2
|
-
sudo: false
|
|
3
|
-
|
|
4
|
-
bundler_args: --without production
|
|
5
|
-
before_install: gem update bundler --no-document
|
|
6
|
-
script: 'bundle exec rake test'
|
|
7
|
-
|
|
8
|
-
rvm:
|
|
9
|
-
- 2.5.1
|
|
10
|
-
- 2.4.1
|
|
11
|
-
- 2.2.3
|
|
12
|
-
# - 2.0.0
|
|
13
|
-
|
|
14
|
-
gemfile:
|
|
15
|
-
- gemfiles/rails_5.2.gemfile
|
|
16
|
-
- gemfiles/rails_5.1.gemfile
|
|
17
|
-
|
|
18
|
-
matrix:
|
|
19
|
-
fast_finish: true
|
|
20
|
-
|
|
21
|
-
notifications:
|
|
22
|
-
email: false
|
data/Appraisals
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
appraise 'rails-5.2' do
|
|
2
|
-
gem 'rails', '~> 5.2.0'
|
|
3
|
-
end
|
|
4
|
-
|
|
5
|
-
appraise 'rails-5.1' do
|
|
6
|
-
gem 'rails', '~> 5.1.0'
|
|
7
|
-
end
|
|
8
|
-
|
|
9
|
-
#appraise 'rails-4.2.4' do
|
|
10
|
-
# gem 'rails', '4.2.4'
|
|
11
|
-
#end
|
|
12
|
-
|
|
13
|
-
#appraise 'rails-4.2.0' do
|
|
14
|
-
# gem 'rails', '4.2.0'
|
|
15
|
-
#end
|
|
16
|
-
|
|
17
|
-
#appraise "rails-3.2" do
|
|
18
|
-
# gem "rails", "3.2.22"
|
|
19
|
-
# gem 'test-unit', '~> 3.0'
|
|
20
|
-
# gem 'minitest'
|
|
21
|
-
#end
|
data/Gemfile
DELETED
data/NOTES
DELETED
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
Just notes for me.
|
|
2
|
-
|
|
3
|
-
rails plugin new rows --full
|
|
4
|
-
|
|
5
|
-
mv rows rows_controller
|
|
6
|
-
|
|
7
|
-
cd rows_controller
|
|
8
|
-
med NOTES
|
|
9
|
-
|
|
10
|
-
cd test/dummy
|
|
11
|
-
rails g scaffold order name:string
|
|
12
|
-
rails g scaffold order::items price:string
|
|
13
|
-
rake db:drop db:create db:migrate db:seed
|
|
14
|
-
bin/setup
|
|
15
|
-
|
|
16
|
-
---------
|
|
17
|
-
gem install appraisal
|
|
18
|
-
appraisal generate --travis
|
|
19
|
-
appraisal install
|
|
20
|
-
appraisal rake test
|
|
21
|
-
appraisal rails-4.2.4 rake test
|
|
22
|
-
|
|
23
|
-
gem install wwtd
|
|
24
|
-
wwtd --local
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
-----------------------------------------------------
|
|
28
|
-
ruby -v; rails -v
|
|
29
|
-
|
|
30
|
-
----------
|
|
31
|
-
git clone rows3 rows4
|
|
32
|
-
|
|
33
|
-
cd rows4
|
|
34
|
-
cd test/dummy
|
|
35
|
-
rake db:drop db:create db:migrate
|
|
36
|
-
rake
|
|
37
|
-
|
|
38
|
-
cd rows4
|
|
39
|
-
rake
|
|
40
|
-
|
|
41
|
-
----------
|
|
42
|
-
git mv test/dummy test/dummy3
|
|
43
|
-
med Rakefile
|
|
44
|
-
med test/test_helper.rb
|
|
45
|
-
rake
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
--------
|
|
49
|
-
Problem?
|
|
50
|
-
|
|
51
|
-
Rails used 3.2.22 4.2.0 4.2.4
|
|
52
|
-
|
|
53
|
-
appraisal in GemFile a gem 'rails', "3.2.22" working fine with all rails
|
|
54
|
-
appraisal in GemFile a gem 'rails', "~> 4.2" error:
|
|
55
|
-
in Rakefile
|
|
56
|
-
before load 'rails/tasks/engine.rake' Rails 3.2.22
|
|
57
|
-
after load 'rails/tasks/engine.rake' Rails 4.2.4
|
|
58
|
-
|
|
59
|
-
ENV['BUNDLE_GEMFILE'] may help?
|
|
60
|
-
|
|
61
|
-
==> ./test/dummy3/config/boot.rb:
|
|
62
|
-
ENV['BUNDLE_GEMFILE'] ||= gemfile # notice ||
|
|
63
|
-
|
|
64
|
-
wwtd --local OK
|
|
65
|
-
|
|
66
|
-
Appraisal
|
|
67
|
-
---------
|
|
68
|
-
https://github.com/thoughtbot/appraisal
|
|
69
|
-
|
|
70
|
-
gem "appraisal"
|
|
71
|
-
|
|
72
|
-
appraise 'rails-5.1' do
|
|
73
|
-
gem 'rails', '~> 5.1'
|
|
74
|
-
end
|
|
75
|
-
|
|
76
|
-
rvm:
|
|
77
|
-
- 2.2.3
|
|
78
|
-
- 2.4.1
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
$ gem install appraisal
|
|
82
|
-
$ appraisal install
|
|
83
|
-
$ appraisal generate --travis
|
|
84
|
-
$ appraisal rails-4.2.0 rake test
|
|
85
|
-
$ appraisal rails-4.2.4 rake test
|
|
86
|
-
$ appraisal rails-5.1 rails test
|
|
87
|
-
$ appraisal rake test
|
data/Rakefile
DELETED
data/app/controllers/.keep
DELETED
|
File without changes
|
data/app/views/.keep
DELETED
|
File without changes
|
data/bin/rails
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env ruby
|
|
2
|
-
# This command will automatically be run when you run "rails" with Rails 4 gems installed from the root of your application.
|
|
3
|
-
|
|
4
|
-
ENGINE_ROOT = File.expand_path('../..', __FILE__)
|
|
5
|
-
ENGINE_PATH = File.expand_path('../../lib/rows/engine', __FILE__)
|
|
6
|
-
|
|
7
|
-
# Set up gems listed in the Gemfile.
|
|
8
|
-
ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)
|
|
9
|
-
require 'bundler/setup' if File.exist?(ENV['BUNDLE_GEMFILE'])
|
|
10
|
-
|
|
11
|
-
require 'rails/all'
|
|
12
|
-
require 'rails/engine/commands'
|
data/gemfiles/rails_5.1.gemfile
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
# This file was generated by Appraisal
|
|
2
|
-
|
|
3
|
-
source "https://rubygems.org"
|
|
4
|
-
|
|
5
|
-
gem "rails", "~> 5.1.0"
|
|
6
|
-
|
|
7
|
-
group :test do
|
|
8
|
-
gem "rails-controller-testing"
|
|
9
|
-
gem "observr"
|
|
10
|
-
gem "simplecov", require: false
|
|
11
|
-
gem "minitest"
|
|
12
|
-
gem "capybara"
|
|
13
|
-
gem "sqlite3"
|
|
14
|
-
gem "slim"
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
gemspec path: "../"
|
data/gemfiles/rails_5.2.gemfile
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
# This file was generated by Appraisal
|
|
2
|
-
|
|
3
|
-
source "https://rubygems.org"
|
|
4
|
-
|
|
5
|
-
gem "rails", "~> 5.2.0"
|
|
6
|
-
|
|
7
|
-
group :test do
|
|
8
|
-
gem "rails-controller-testing"
|
|
9
|
-
gem "observr"
|
|
10
|
-
gem "simplecov", require: false
|
|
11
|
-
gem "minitest"
|
|
12
|
-
gem "capybara"
|
|
13
|
-
gem "sqlite3"
|
|
14
|
-
gem "slim"
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
gemspec path: "../"
|
data/rows_controller.gemspec
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
lib = File.expand_path('../lib', __FILE__)
|
|
2
|
-
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
3
|
-
require "rows/version"
|
|
4
|
-
|
|
5
|
-
Gem::Specification.new do |s|
|
|
6
|
-
s.name = 'rows_controller'
|
|
7
|
-
s.version = Rows::VERSION
|
|
8
|
-
s.summary = 'RowsController DRYs your controllers.'
|
|
9
|
-
s.description = 'YourController < RowsController ( < ApplicationController).'
|
|
10
|
-
s.authors = ['Dittmar Krall']
|
|
11
|
-
s.email = ['dittmar.krall@matique.de']
|
|
12
|
-
s.homepage = 'http://matique.de'
|
|
13
|
-
|
|
14
|
-
s.license = 'MIT'
|
|
15
|
-
s.platform = Gem::Platform::RUBY
|
|
16
|
-
|
|
17
|
-
s.files = `git ls-files -z`.split("\x0")
|
|
18
|
-
s.test_files = s.files.grep(%r{^(test|spec|features)/})
|
|
19
|
-
s.require_paths = ['lib']
|
|
20
|
-
|
|
21
|
-
s.add_development_dependency 'bundler', '~> 1'
|
|
22
|
-
s.add_development_dependency 'rake', '~> 12'
|
|
23
|
-
s.add_development_dependency 'appraisal', '~> 2'
|
|
24
|
-
# s.add_development_dependency 'combustion', '~> 0'
|
|
25
|
-
end
|
data/script/rails
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env ruby
|
|
2
|
-
# This command will automatically be run when you run "rails" with Rails 3 gems installed from the root of your application.
|
|
3
|
-
|
|
4
|
-
ENGINE_ROOT = File.expand_path('../..', __FILE__)
|
|
5
|
-
ENGINE_PATH = File.expand_path('../../lib/rows/engine', __FILE__)
|
|
6
|
-
|
|
7
|
-
require 'rails/all'
|
|
8
|
-
require 'rails/engine/commands'
|
data/test/.watchr
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
HH = '#' * 22 unless defined?(HH)
|
|
2
|
-
H = '#' * 5 unless defined?(H)
|
|
3
|
-
|
|
4
|
-
def usage
|
|
5
|
-
puts <<-EOS
|
|
6
|
-
Ctrl-\\ or ctrl-4 Running all tests
|
|
7
|
-
Ctrl-C Exit
|
|
8
|
-
EOS
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
def run(cmd)
|
|
12
|
-
puts "#{HH} #{Time.now} #{HH}"
|
|
13
|
-
puts "#{H} #{cmd}"
|
|
14
|
-
system "/usr/bin/time --format '#{HH} Elapsed time %E' #{cmd}"
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
def run_it(type, file)
|
|
18
|
-
case type
|
|
19
|
-
# when 'test'; run %Q{ruby -I"lib:test" -rubygems #{file}}
|
|
20
|
-
when 'test'; run %Q{rails test #{file}}
|
|
21
|
-
when 'spec'; run %Q{rspec -X #{file}}
|
|
22
|
-
else; puts "#{H} unknown type: #{type}, file: #{file}"
|
|
23
|
-
end
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
def run_all_tests
|
|
27
|
-
puts "\n#{HH} Running all tests #{HH}\n"
|
|
28
|
-
# system "spring stop"
|
|
29
|
-
%w{test spec}.each { |dir| run "rails #{dir}" if File.exists?(dir) }
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
def run_matching_files(base)
|
|
33
|
-
base = base.split('_').first
|
|
34
|
-
%w{test spec}.each { |type|
|
|
35
|
-
files = Dir["#{type}/**/*.rb"].select { |file| file =~ /#{base}_.*\.rb/ }
|
|
36
|
-
run_it type, files.join(' ') unless files.empty?
|
|
37
|
-
}
|
|
38
|
-
end
|
|
39
|
-
|
|
40
|
-
%w{test spec}.each { |type|
|
|
41
|
-
watch("#{type}/#{type}_helper\.rb") { run_all_tests }
|
|
42
|
-
watch("#{type}/.*/*_#{type}\.rb") { |match| run_it type, match[0] }
|
|
43
|
-
watch("#{type}/data/(.*)\.rb") { |match|
|
|
44
|
-
m1 = match[1]
|
|
45
|
-
run_matching_files("#{type}/#{m1}/#{m1}_#{type}.rb")
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
%w{rb erb haml slim}.each { |type|
|
|
49
|
-
watch("app/.*/(.*)\.#{type}") { |match|
|
|
50
|
-
run_matching_files(match[1])
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
Dir['**/*.rb'].find_all{ |x| !(x =~ /_test\.rb$/) }.each { |name|
|
|
54
|
-
watch(name) { run_all_tests }
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
# Ctrl-\ or ctrl-4
|
|
58
|
-
Signal.trap('QUIT') { run_all_tests }
|
|
59
|
-
# Ctrl-C
|
|
60
|
-
Signal.trap('INT') { abort("Interrupted\n") }
|
|
61
|
-
usage
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
# mostly generated by Rails
|
|
2
|
-
|
|
3
|
-
require 'test_helper'
|
|
4
|
-
|
|
5
|
-
class Order::ItemsControllerTest < ActionController::TestCase
|
|
6
|
-
fixtures :all
|
|
7
|
-
|
|
8
|
-
def setup
|
|
9
|
-
@order_item = order_items(:one)
|
|
10
|
-
end
|
|
11
|
-
|
|
12
|
-
test 'checking model_...' do
|
|
13
|
-
get :index
|
|
14
|
-
assert_equal Order::Item, @controller.send(:model_class)
|
|
15
|
-
assert_equal 'Order::Item', @controller.send(:model_name)
|
|
16
|
-
assert_equal 'order_item', @controller.send(:model_symbol)
|
|
17
|
-
assert_equal 'order_items', @controller.send(:model_symbol_plural)
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
test "should get index" do
|
|
21
|
-
get :index
|
|
22
|
-
assert_response :success
|
|
23
|
-
assert_not_nil assigns(:order_items)
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
test "should get new" do
|
|
27
|
-
get :new
|
|
28
|
-
assert_response :success
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
test "should create order_item" do
|
|
32
|
-
assert_difference('Order::Item.count') do
|
|
33
|
-
post :create, params: { order_item: { price: @order_item.price } }
|
|
34
|
-
end
|
|
35
|
-
|
|
36
|
-
## assert_redirected_to order_item_path(assigns(:order_item))
|
|
37
|
-
assert_redirected_to edit_order_item_path(assigns(:order_item))
|
|
38
|
-
end
|
|
39
|
-
|
|
40
|
-
test "should show order_item" do
|
|
41
|
-
get :show, params: { id: @order_item }
|
|
42
|
-
assert_response :success
|
|
43
|
-
end
|
|
44
|
-
|
|
45
|
-
test "should get edit" do
|
|
46
|
-
get :edit, params: { id: @order_item }
|
|
47
|
-
assert_response :success
|
|
48
|
-
end
|
|
49
|
-
|
|
50
|
-
test "should update order_item" do
|
|
51
|
-
put :update, params: { id: @order_item,
|
|
52
|
-
order_item: { price: @order_item.price } }
|
|
53
|
-
## assert_redirected_to order_item_path(assigns(:order_item))
|
|
54
|
-
assert_redirected_to edit_order_item_path(assigns(:order_item))
|
|
55
|
-
end
|
|
56
|
-
|
|
57
|
-
test "should destroy order_item" do
|
|
58
|
-
assert_difference('Order::Item.count', -1) do
|
|
59
|
-
delete :destroy, params: { id: @order_item }
|
|
60
|
-
end
|
|
61
|
-
|
|
62
|
-
assert_redirected_to order_items_path
|
|
63
|
-
end
|
|
64
|
-
end
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
require 'test_helper'
|
|
2
|
-
|
|
3
|
-
class OrdersControllerTest < ActionController::TestCase
|
|
4
|
-
#class OrdersControllerTest < ActionDispatch::IntegrationTest
|
|
5
|
-
#class OrdersControllerTest < ActiveSupport::TestCase
|
|
6
|
-
fixtures :all
|
|
7
|
-
|
|
8
|
-
def setup
|
|
9
|
-
@order = orders(:one)
|
|
10
|
-
OrdersController.model_class Order # reset
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
test 'self.model_class assignment' do
|
|
14
|
-
test_model_class Integer, Integer
|
|
15
|
-
test_model_class "String", String
|
|
16
|
-
test_model_class "ActiveSupport::TimeWithZone", ActiveSupport::TimeWithZone
|
|
17
|
-
end
|
|
18
|
-
|
|
19
|
-
%i{ index new }.each do |action|
|
|
20
|
-
test "renders the '#{action}' template" do
|
|
21
|
-
get action
|
|
22
|
-
assert_response :success
|
|
23
|
-
assert_template "rows/#{action}"
|
|
24
|
-
assert_match(/Order/, response.body)
|
|
25
|
-
end
|
|
26
|
-
end
|
|
27
|
-
|
|
28
|
-
%i{ edit show }.each do |action|
|
|
29
|
-
test "renders the '#{action}' template" do
|
|
30
|
-
get action, params: { id: @order.id }
|
|
31
|
-
assert_response :success
|
|
32
|
-
assert_template "rows/#{action}"
|
|
33
|
-
assert_match(/Order/, response.body)
|
|
34
|
-
end
|
|
35
|
-
end
|
|
36
|
-
|
|
37
|
-
test 'checking resource' do
|
|
38
|
-
get :show, params: { id: @order.id }
|
|
39
|
-
assert_equal @order, @controller.send(:resource)
|
|
40
|
-
assert_equal @order, assigns(:order)
|
|
41
|
-
assert_equal @order, assigns(:row)
|
|
42
|
-
end
|
|
43
|
-
|
|
44
|
-
test 'checking resources' do
|
|
45
|
-
get :index
|
|
46
|
-
assert_kind_of Array, @controller.send(:resources).to_a
|
|
47
|
-
assert_kind_of Array, assigns(:orders).to_a
|
|
48
|
-
assert_kind_of Array, assigns(:rows).to_a
|
|
49
|
-
assert_equal Order.all, assigns(:orders)
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
test 'checking model_class' do
|
|
53
|
-
get :show, params: { id: @order.id }
|
|
54
|
-
assert_equal Order, @controller.send(:model_class)
|
|
55
|
-
assert_equal 'Order', @controller.send(:model_name)
|
|
56
|
-
assert_equal 'order', @controller.send(:model_symbol)
|
|
57
|
-
assert_equal 'orders', @controller.send(:model_symbol_plural)
|
|
58
|
-
end
|
|
59
|
-
|
|
60
|
-
test "should create order #2" do
|
|
61
|
-
assert_difference('Order.count') do
|
|
62
|
-
post :create, params: { commit: 'OK', order: { name: @order.name } }
|
|
63
|
-
end
|
|
64
|
-
end
|
|
65
|
-
|
|
66
|
-
test 'should update' do
|
|
67
|
-
put :update, params: { id: @order.id, order: {name: 'name'} }
|
|
68
|
-
assert response
|
|
69
|
-
assert_redirected_to(action: :edit)
|
|
70
|
-
end
|
|
71
|
-
|
|
72
|
-
test 'should update #2' do
|
|
73
|
-
put :update, params: {id: @order.id, commit: 'OK', order: {name: 'name'}}
|
|
74
|
-
assert response
|
|
75
|
-
assert_redirected_to(action: :index)
|
|
76
|
-
end
|
|
77
|
-
|
|
78
|
-
test 'should not update' do
|
|
79
|
-
put :update, params: { id: @order.id, order: {name: 'error'} }
|
|
80
|
-
assert_response :success
|
|
81
|
-
assert_template 'rows/edit'
|
|
82
|
-
end
|
|
83
|
-
|
|
84
|
-
test 'should not create' do
|
|
85
|
-
post :create, params: { id: @order.id, order: {name: 'error'} }
|
|
86
|
-
assert_response :success
|
|
87
|
-
assert_template 'rows/new'
|
|
88
|
-
end
|
|
89
|
-
|
|
90
|
-
private
|
|
91
|
-
def test_model_class(asgn, klass)
|
|
92
|
-
OrdersController.model_class asgn
|
|
93
|
-
assert_equal klass, OrdersController.model_class
|
|
94
|
-
end
|
|
95
|
-
|
|
96
|
-
end
|