ajax-datatables-rails 0.3.1 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. checksums.yaml +4 -4
  2. data/.codeclimate.yml +26 -0
  3. data/.gitignore +20 -0
  4. data/.rspec +1 -0
  5. data/.rubocop.yml +1157 -0
  6. data/.travis.yml +68 -0
  7. data/Appraisals +34 -0
  8. data/Gemfile +5 -1
  9. data/LICENSE +17 -18
  10. data/README.md +239 -239
  11. data/Rakefile +1 -1
  12. data/ajax-datatables-rails.gemspec +31 -24
  13. data/gemfiles/rails_4.0.13.gemfile +14 -0
  14. data/gemfiles/rails_4.1.15.gemfile +14 -0
  15. data/gemfiles/rails_4.2.8.gemfile +13 -0
  16. data/gemfiles/rails_5.0.3.gemfile +13 -0
  17. data/gemfiles/rails_5.1.1.gemfile +13 -0
  18. data/lib/ajax-datatables-rails.rb +9 -8
  19. data/lib/ajax-datatables-rails/base.rb +80 -156
  20. data/lib/ajax-datatables-rails/config.rb +8 -5
  21. data/lib/ajax-datatables-rails/datatable/column.rb +169 -0
  22. data/lib/ajax-datatables-rails/datatable/column_date_filter.rb +41 -0
  23. data/lib/ajax-datatables-rails/datatable/datatable.rb +79 -0
  24. data/lib/ajax-datatables-rails/datatable/simple_order.rb +31 -0
  25. data/lib/ajax-datatables-rails/datatable/simple_search.rb +18 -0
  26. data/lib/ajax-datatables-rails/orm/active_record.rb +52 -0
  27. data/lib/ajax-datatables-rails/version.rb +1 -1
  28. data/lib/generators/datatable/templates/ajax_datatables_rails_config.rb +3 -3
  29. data/lib/generators/rails/datatable_generator.rb +7 -19
  30. data/lib/generators/rails/templates/datatable.rb +26 -14
  31. data/spec/ajax-datatables-rails/base_spec.rb +190 -0
  32. data/spec/ajax-datatables-rails/configuration_spec.rb +43 -0
  33. data/spec/ajax-datatables-rails/datatable/column_spec.rb +109 -0
  34. data/spec/ajax-datatables-rails/datatable/datatable_spec.rb +87 -0
  35. data/spec/ajax-datatables-rails/datatable/simple_order_spec.rb +13 -0
  36. data/spec/ajax-datatables-rails/datatable/simple_search_spec.rb +17 -0
  37. data/spec/ajax-datatables-rails/extended_spec.rb +20 -0
  38. data/spec/ajax-datatables-rails/orm/active_record_filter_records_spec.rb +439 -0
  39. data/spec/ajax-datatables-rails/orm/active_record_paginate_records_spec.rb +66 -0
  40. data/spec/ajax-datatables-rails/orm/active_record_sort_records_spec.rb +34 -0
  41. data/spec/ajax-datatables-rails/orm/active_record_spec.rb +25 -0
  42. data/spec/factories/user.rb +9 -0
  43. data/spec/install_oracle.sh +12 -0
  44. data/spec/spec_helper.rb +75 -3
  45. data/spec/support/schema.rb +14 -0
  46. data/spec/support/test_helpers.rb +174 -0
  47. data/spec/support/test_models.rb +2 -0
  48. metadata +169 -37
  49. data/lib/ajax-datatables-rails/extensions/kaminari.rb +0 -12
  50. data/lib/ajax-datatables-rails/extensions/simple_paginator.rb +0 -12
  51. data/lib/ajax-datatables-rails/extensions/will_paginate.rb +0 -12
  52. data/lib/ajax-datatables-rails/models.rb +0 -6
  53. data/spec/ajax-datatables-rails/ajax_datatables_rails_spec.rb +0 -351
  54. data/spec/ajax-datatables-rails/kaminari_spec.rb +0 -35
  55. data/spec/ajax-datatables-rails/models_spec.rb +0 -10
  56. data/spec/ajax-datatables-rails/simple_paginator_spec.rb +0 -32
  57. data/spec/ajax-datatables-rails/will_paginate_spec.rb +0 -28
  58. data/spec/schema.rb +0 -35
  59. data/spec/test_models.rb +0 -21
@@ -0,0 +1,66 @@
1
+ require 'spec_helper'
2
+
3
+ describe AjaxDatatablesRails::ORM::ActiveRecord do
4
+
5
+ let(:view) { double('view', params: sample_params) }
6
+ let(:datatable) { SampleDatatable.new(view) }
7
+ let(:records) { User.all }
8
+
9
+ before(:each) do
10
+ create(:user, username: 'johndoe', email: 'johndoe@example.com')
11
+ create(:user, username: 'msmith', email: 'mary.smith@example.com')
12
+ end
13
+
14
+ describe '#paginate_records' do
15
+ it 'requires a records collection argument' do
16
+ expect { datatable.paginate_records }.to raise_error(ArgumentError)
17
+ end
18
+
19
+ it 'paginates records properly' do
20
+ if AjaxDatatablesRails.config.db_adapter.in? %i[oracle oracleenhanced]
21
+ if Rails.version.in? %w[4.0.13 4.1.15 4.2.8]
22
+ expect(datatable.paginate_records(records).to_sql).to include(
23
+ 'rownum <= 10'
24
+ )
25
+ else
26
+ expect(datatable.paginate_records(records).to_sql).to include(
27
+ 'rownum <= (0 + 10)'
28
+ )
29
+ end
30
+ else
31
+ expect(datatable.paginate_records(records).to_sql).to include(
32
+ 'LIMIT 10 OFFSET 0'
33
+ )
34
+ end
35
+
36
+ datatable.params[:start] = '26'
37
+ datatable.params[:length] = '25'
38
+ if AjaxDatatablesRails.config.db_adapter.in? %i[oracle oracleenhanced]
39
+ if Rails.version.in? %w[4.0.13 4.1.15 4.2.8]
40
+ expect(datatable.paginate_records(records).to_sql).to include(
41
+ 'rownum <= 50'
42
+ )
43
+ else
44
+ expect(datatable.paginate_records(records).to_sql).to include(
45
+ 'rownum <= (25 + 25)'
46
+ )
47
+ end
48
+ else
49
+ expect(datatable.paginate_records(records).to_sql).to include(
50
+ 'LIMIT 25 OFFSET 25'
51
+ )
52
+ end
53
+ end
54
+
55
+ it 'depends on the value of #offset' do
56
+ expect(datatable.datatable).to receive(:offset)
57
+ datatable.paginate_records(records)
58
+ end
59
+
60
+ it 'depends on the value of #per_page' do
61
+ expect(datatable.datatable).to receive(:per_page).at_least(:once) { 10 }
62
+ datatable.paginate_records(records)
63
+ end
64
+ end
65
+
66
+ end
@@ -0,0 +1,34 @@
1
+ require 'spec_helper'
2
+
3
+ describe AjaxDatatablesRails::ORM::ActiveRecord do
4
+
5
+ let(:view) { double('view', params: sample_params) }
6
+ let(:datatable) { ComplexDatatable.new(view) }
7
+ let(:records) { User.all }
8
+
9
+ before(:each) do
10
+ create(:user, username: 'johndoe', email: 'johndoe@example.com')
11
+ create(:user, username: 'msmith', email: 'mary.smith@example.com')
12
+ end
13
+
14
+ describe '#sort_records' do
15
+ it 'returns a records collection sorted by :order params' do
16
+ # set to order Users by email in descending order
17
+ datatable.params[:order]['0'] = { column: '1', dir: 'desc' }
18
+ expect(datatable.sort_records(records).map(&:email)).to match(
19
+ ['mary.smith@example.com', 'johndoe@example.com']
20
+ )
21
+ end
22
+
23
+ it 'can handle multiple sorting columns' do
24
+ # set to order by Users username in ascending order, and
25
+ # by Users email in descending order
26
+ datatable.params[:order]['0'] = { column: '0', dir: 'asc' }
27
+ datatable.params[:order]['1'] = { column: '1', dir: 'desc' }
28
+ expect(datatable.sort_records(records).to_sql).to include(
29
+ 'ORDER BY users.username ASC, users.email DESC'
30
+ )
31
+ end
32
+ end
33
+
34
+ end
@@ -0,0 +1,25 @@
1
+ require 'spec_helper'
2
+
3
+ describe AjaxDatatablesRails::ORM::ActiveRecord do
4
+ context 'Private API' do
5
+ let(:view) { double('view', params: sample_params) }
6
+ let(:datatable) { SampleDatatable.new(view) }
7
+
8
+ before(:each) do
9
+ create(:user, username: 'johndoe', email: 'johndoe@example.com')
10
+ create(:user, username: 'msmith', email: 'mary.smith@example.com')
11
+ end
12
+
13
+ describe '#fetch_records' do
14
+ it 'calls #get_raw_records' do
15
+ expect(datatable).to receive(:get_raw_records) { User.all }
16
+ datatable.send(:fetch_records)
17
+ end
18
+
19
+ it 'returns a collection of records' do
20
+ expect(datatable).to receive(:get_raw_records) { User.all }
21
+ expect(datatable.send(:fetch_records)).to be_a(ActiveRecord::Relation)
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,9 @@
1
+ FactoryGirl.define do
2
+ factory :user do |f|
3
+ f.username { Faker::Internet.user_name }
4
+ f.email { Faker::Internet.email }
5
+ f.first_name { Faker::Name.first_name }
6
+ f.last_name { Faker::Name.last_name }
7
+ f.post_id { ((1..100).to_a).sample }
8
+ end
9
+ end
@@ -0,0 +1,12 @@
1
+ #!/bin/bash
2
+
3
+ wget 'https://github.com/cbandy/travis-oracle/archive/v2.0.2.tar.gz'
4
+ mkdir -p ~/.travis/oracle
5
+ tar xz --strip-components 1 -C ~/.travis/oracle -f v2.0.2.tar.gz
6
+
7
+ ~/.travis/oracle/download.sh
8
+ ~/.travis/oracle/install.sh
9
+
10
+ "$ORACLE_HOME/bin/sqlplus" -L -S / AS SYSDBA <<SQL
11
+ ALTER USER $USER IDENTIFIED BY $USER;
12
+ SQL
@@ -1,9 +1,81 @@
1
+ require 'simplecov'
2
+ require 'rspec'
3
+ require 'database_cleaner'
4
+ require 'factory_girl'
5
+ require 'faker'
1
6
  require 'pry'
2
7
  require 'rails'
3
8
  require 'active_record'
9
+ require 'action_controller'
10
+
11
+ # Start Simplecov
12
+ SimpleCov.start do
13
+ add_filter 'spec/'
14
+ end
15
+
16
+ # Configure RSpec
17
+ RSpec.configure do |config|
18
+ config.include FactoryGirl::Syntax::Methods
19
+
20
+ config.before(:suite) do
21
+ FactoryGirl.find_definitions
22
+ end
23
+
24
+ config.after(:each) do
25
+ AjaxDatatablesRails.configure do |c|
26
+ c.db_adapter = ActiveRecord::Base.connection.adapter_name.downcase.to_sym
27
+ c.orm = :active_record
28
+ end
29
+ end
30
+
31
+ config.color = true
32
+ config.fail_fast = false
33
+
34
+ config.order = :random
35
+ Kernel.srand config.seed
36
+
37
+ config.expect_with :rspec do |c|
38
+ c.syntax = :expect
39
+ end
40
+
41
+ config.before(:suite) do
42
+ DatabaseCleaner.clean_with(:truncation)
43
+ end
44
+
45
+ config.before(:each) do
46
+ DatabaseCleaner.strategy = :transaction
47
+ end
48
+
49
+ config.before(:each) do
50
+ DatabaseCleaner.start
51
+ end
52
+
53
+ config.after(:each) do
54
+ DatabaseCleaner.clean
55
+ end
56
+ end
57
+
4
58
  require 'ajax-datatables-rails'
5
59
 
6
- ActiveRecord::Base.establish_connection adapter: "sqlite3", database: ":memory:"
60
+ adapter = ENV.fetch('DB_ADAPTER', 'postgresql')
61
+
62
+ options = {
63
+ adapter: adapter,
64
+ database: 'ajax_datatables_rails',
65
+ encoding: 'utf8'
66
+ }
67
+
68
+ options = options.merge(username: 'root') if adapter == 'mysql2'
69
+ options = options.merge(username: ENV['USER'], password: ENV['USER'], database: 'xe', host: '127.0.0.1/xe') if adapter == 'oracle_enhanced'
70
+ options = options.merge(database: ':memory:') if adapter == 'sqlite3'
71
+
72
+ ActiveRecord::Base.establish_connection(options)
73
+
74
+ AjaxDatatablesRails.configure do |c|
75
+ c.db_adapter = ActiveRecord::Base.connection.adapter_name.downcase.to_sym
76
+ c.orm = :active_record
77
+ end
7
78
 
8
- load File.dirname(__FILE__) + '/schema.rb'
9
- require File.dirname(__FILE__) + '/test_models.rb'
79
+ load File.dirname(__FILE__) + '/support/schema.rb'
80
+ load File.dirname(__FILE__) + '/support/test_helpers.rb'
81
+ require File.dirname(__FILE__) + '/support/test_models.rb'
@@ -0,0 +1,14 @@
1
+ ActiveRecord::Schema.define do
2
+ self.verbose = false
3
+
4
+ create_table :users, :force => true do |t|
5
+ t.string :username
6
+ t.string :email
7
+ t.string :first_name
8
+ t.string :last_name
9
+ t.integer :post_id
10
+
11
+ t.timestamps null: false
12
+ end
13
+
14
+ end
@@ -0,0 +1,174 @@
1
+ # rubocop:disable Metrics/MethodLength
2
+ def sample_params
3
+ ActionController::Parameters.new(
4
+ {
5
+ 'draw' => '1',
6
+ 'columns' => {
7
+ '0' => {
8
+ 'data' => 'username', 'name' => '', 'searchable' => 'true', 'orderable' => 'true',
9
+ 'search' => {
10
+ 'value' => '', 'regex' => 'false'
11
+ }
12
+ },
13
+ '1' => {
14
+ 'data' => 'email', 'name' => '', 'searchable' => 'true', 'orderable' => 'true',
15
+ 'search' => {
16
+ 'value' => '', 'regex' => 'false'
17
+ }
18
+ },
19
+ '2' => {
20
+ 'data' => 'first_name', 'name' => '', 'searchable' => 'true', 'orderable' => 'false',
21
+ 'search' => {
22
+ 'value' => '', 'regex' => 'false'
23
+ }
24
+ },
25
+ '3' => {
26
+ 'data' => 'last_name', 'name' => '', 'searchable' => 'true', 'orderable' => 'true',
27
+ 'search' => {
28
+ 'value' => '', 'regex' => 'false'
29
+ }
30
+ },
31
+ '4' => {
32
+ 'data' => 'post_id', 'name' => '', 'searchable' => 'true', 'orderable' => 'true',
33
+ 'search' => {
34
+ 'value' => '', 'regex' => 'false'
35
+ }
36
+ },
37
+ '5' => {
38
+ 'data' => 'created_at', 'name' => '', 'searchable' => 'true', 'orderable' => 'true',
39
+ 'search' => {
40
+ 'value' => '', 'regex' => 'false'
41
+ }
42
+ },
43
+ },
44
+ 'order' => {
45
+ '0' => {'column' => '0', 'dir' => 'asc'}
46
+ },
47
+ 'start' => '0', 'length' => '10', 'search' => {
48
+ 'value' => '', 'regex' => 'false'
49
+ },
50
+ '_' => '1423364387185'
51
+ }
52
+ )
53
+ end
54
+ # rubocop:enable Metrics/MethodLength
55
+
56
+ class SampleDatatable < AjaxDatatablesRails::Base
57
+ def view_columns
58
+ @view_columns ||= ['User.username', 'User.email', 'User.first_name', 'User.last_name']
59
+ end
60
+
61
+ def data
62
+ [{}, {}]
63
+ end
64
+
65
+ def get_raw_records
66
+ User.all
67
+ end
68
+ end
69
+
70
+ class ComplexDatatable < SampleDatatable
71
+ def view_columns
72
+ @view_columns ||= {
73
+ username: { source: 'User.username' },
74
+ email: { source: 'User.email' },
75
+ first_name: { source: 'User.first_name' },
76
+ last_name: { source: 'User.last_name', formater: -> (o) { o.upcase } },
77
+ }
78
+ end
79
+
80
+ def data
81
+ records.map do |record|
82
+ {
83
+ username: record.username,
84
+ email: record.email,
85
+ first_name: record.first_name,
86
+ last_name: record.last_name,
87
+ }
88
+ end
89
+ end
90
+ end
91
+
92
+ class ComplexDatatableHash < ComplexDatatable
93
+ end
94
+
95
+ class ComplexDatatableArray < ComplexDatatable
96
+ def data
97
+ records.map do |record|
98
+ [
99
+ record.username,
100
+ record.email,
101
+ record.first_name,
102
+ record.last_name,
103
+ ]
104
+ end
105
+ end
106
+ end
107
+
108
+ class ReallyComplexDatatable < SampleDatatable
109
+ def view_columns
110
+ @view_columns ||= {
111
+ username: { source: 'User.username' },
112
+ email: { source: 'User.email', cond: :null_value },
113
+ first_name: { source: 'User.first_name', cond: :start_with },
114
+ last_name: { source: 'User.last_name', cond: :end_with, formater: -> (o) { o.upcase } },
115
+ post_id: { source: 'User.post_id' },
116
+ created_at: { source: 'User.created_at', cond: :date_range },
117
+ }
118
+ end
119
+
120
+ def data
121
+ records.map do |record|
122
+ {
123
+ username: record.username,
124
+ email: record.email,
125
+ first_name: record.first_name,
126
+ last_name: record.last_name,
127
+ post_id: record.post_id,
128
+ created_at: record.created_at,
129
+ }
130
+ end
131
+ end
132
+ end
133
+
134
+ class ReallyComplexDatatableEq < ReallyComplexDatatable
135
+ def view_columns
136
+ super.deep_merge(post_id: { cond: :eq })
137
+ end
138
+ end
139
+
140
+ class ReallyComplexDatatableNotEq < ReallyComplexDatatable
141
+ def view_columns
142
+ super.deep_merge(post_id: { cond: :not_eq })
143
+ end
144
+ end
145
+
146
+ class ReallyComplexDatatableLt < ReallyComplexDatatable
147
+ def view_columns
148
+ super.deep_merge(post_id: { cond: :lt })
149
+ end
150
+ end
151
+
152
+ class ReallyComplexDatatableGt < ReallyComplexDatatable
153
+ def view_columns
154
+ super.deep_merge(post_id: { cond: :gt })
155
+ end
156
+ end
157
+
158
+ class ReallyComplexDatatableLteq < ReallyComplexDatatable
159
+ def view_columns
160
+ super.deep_merge(post_id: { cond: :lteq })
161
+ end
162
+ end
163
+
164
+ class ReallyComplexDatatableGteq < ReallyComplexDatatable
165
+ def view_columns
166
+ super.deep_merge(post_id: { cond: :gteq })
167
+ end
168
+ end
169
+
170
+ class ReallyComplexDatatableIn < ReallyComplexDatatable
171
+ def view_columns
172
+ super.deep_merge(post_id: { cond: :in })
173
+ end
174
+ end
@@ -0,0 +1,2 @@
1
+ class User < ActiveRecord::Base
2
+ end
metadata CHANGED
@@ -1,14 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ajax-datatables-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Joel Quenneville
8
+ - Antonio Antillon
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2015-07-13 00:00:00.000000000 Z
12
+ date: 2017-05-21 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: railties
@@ -16,14 +17,98 @@ dependencies:
16
17
  requirements:
17
18
  - - ">="
18
19
  - !ruby/object:Gem::Version
19
- version: '3.1'
20
+ version: '4.0'
20
21
  type: :runtime
21
22
  prerelease: false
22
23
  version_requirements: !ruby/object:Gem::Requirement
23
24
  requirements:
24
25
  - - ">="
25
26
  - !ruby/object:Gem::Version
26
- version: '3.1'
27
+ version: '4.0'
28
+ - !ruby/object:Gem::Dependency
29
+ name: rails
30
+ requirement: !ruby/object:Gem::Requirement
31
+ requirements:
32
+ - - ">="
33
+ - !ruby/object:Gem::Version
34
+ version: '4.0'
35
+ type: :development
36
+ prerelease: false
37
+ version_requirements: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - ">="
40
+ - !ruby/object:Gem::Version
41
+ version: '4.0'
42
+ - !ruby/object:Gem::Dependency
43
+ name: rake
44
+ requirement: !ruby/object:Gem::Requirement
45
+ requirements:
46
+ - - ">="
47
+ - !ruby/object:Gem::Version
48
+ version: '0'
49
+ type: :development
50
+ prerelease: false
51
+ version_requirements: !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ version: '0'
56
+ - !ruby/object:Gem::Dependency
57
+ name: pg
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - ">="
61
+ - !ruby/object:Gem::Version
62
+ version: '0'
63
+ type: :development
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
70
+ - !ruby/object:Gem::Dependency
71
+ name: mysql2
72
+ requirement: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - ">="
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
77
+ type: :development
78
+ prerelease: false
79
+ version_requirements: !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - ">="
82
+ - !ruby/object:Gem::Version
83
+ version: '0'
84
+ - !ruby/object:Gem::Dependency
85
+ name: sqlite3
86
+ requirement: !ruby/object:Gem::Requirement
87
+ requirements:
88
+ - - ">="
89
+ - !ruby/object:Gem::Version
90
+ version: '0'
91
+ type: :development
92
+ prerelease: false
93
+ version_requirements: !ruby/object:Gem::Requirement
94
+ requirements:
95
+ - - ">="
96
+ - !ruby/object:Gem::Version
97
+ version: '0'
98
+ - !ruby/object:Gem::Dependency
99
+ name: activerecord-oracle_enhanced-adapter
100
+ requirement: !ruby/object:Gem::Requirement
101
+ requirements:
102
+ - - ">="
103
+ - !ruby/object:Gem::Version
104
+ version: '0'
105
+ type: :development
106
+ prerelease: false
107
+ version_requirements: !ruby/object:Gem::Requirement
108
+ requirements:
109
+ - - ">="
110
+ - !ruby/object:Gem::Version
111
+ version: '0'
27
112
  - !ruby/object:Gem::Dependency
28
113
  name: rspec
29
114
  requirement: !ruby/object:Gem::Requirement
@@ -67,7 +152,7 @@ dependencies:
67
152
  - !ruby/object:Gem::Version
68
153
  version: '0'
69
154
  - !ruby/object:Gem::Dependency
70
- name: rake
155
+ name: simplecov
71
156
  requirement: !ruby/object:Gem::Requirement
72
157
  requirements:
73
158
  - - ">="
@@ -81,7 +166,7 @@ dependencies:
81
166
  - !ruby/object:Gem::Version
82
167
  version: '0'
83
168
  - !ruby/object:Gem::Dependency
84
- name: sqlite3
169
+ name: database_cleaner
85
170
  requirement: !ruby/object:Gem::Requirement
86
171
  requirements:
87
172
  - - ">="
@@ -95,68 +180,107 @@ dependencies:
95
180
  - !ruby/object:Gem::Version
96
181
  version: '0'
97
182
  - !ruby/object:Gem::Dependency
98
- name: rails
183
+ name: factory_girl
99
184
  requirement: !ruby/object:Gem::Requirement
100
185
  requirements:
101
186
  - - ">="
102
187
  - !ruby/object:Gem::Version
103
- version: 3.1.0
188
+ version: '0'
104
189
  type: :development
105
190
  prerelease: false
106
191
  version_requirements: !ruby/object:Gem::Requirement
107
192
  requirements:
108
193
  - - ">="
109
194
  - !ruby/object:Gem::Version
110
- version: 3.1.0
195
+ version: '0'
111
196
  - !ruby/object:Gem::Dependency
112
- name: activerecord
197
+ name: faker
113
198
  requirement: !ruby/object:Gem::Requirement
114
199
  requirements:
115
200
  - - ">="
116
201
  - !ruby/object:Gem::Version
117
- version: 4.1.6
202
+ version: '0'
118
203
  type: :development
119
204
  prerelease: false
120
205
  version_requirements: !ruby/object:Gem::Requirement
121
206
  requirements:
122
207
  - - ">="
123
208
  - !ruby/object:Gem::Version
124
- version: 4.1.6
125
- description: A gem that simplifies using datatables and hundreds of records via ajax
209
+ version: '0'
210
+ - !ruby/object:Gem::Dependency
211
+ name: appraisal
212
+ requirement: !ruby/object:Gem::Requirement
213
+ requirements:
214
+ - - ">="
215
+ - !ruby/object:Gem::Version
216
+ version: '0'
217
+ type: :development
218
+ prerelease: false
219
+ version_requirements: !ruby/object:Gem::Requirement
220
+ requirements:
221
+ - - ">="
222
+ - !ruby/object:Gem::Version
223
+ version: '0'
224
+ description: A wrapper around datatable's ajax methods that allow synchronization
225
+ with server-side pagination in a rails app
126
226
  email:
127
227
  - joel.quenneville@collegeplus.org
228
+ - antillas21@gmail.com
128
229
  executables: []
129
230
  extensions: []
130
231
  extra_rdoc_files: []
131
232
  files:
233
+ - ".codeclimate.yml"
234
+ - ".gitignore"
235
+ - ".rspec"
236
+ - ".rubocop.yml"
237
+ - ".travis.yml"
238
+ - Appraisals
132
239
  - CHANGELOG.md
133
240
  - Gemfile
134
241
  - LICENSE
135
242
  - README.md
136
243
  - Rakefile
137
244
  - ajax-datatables-rails.gemspec
245
+ - gemfiles/rails_4.0.13.gemfile
246
+ - gemfiles/rails_4.1.15.gemfile
247
+ - gemfiles/rails_4.2.8.gemfile
248
+ - gemfiles/rails_5.0.3.gemfile
249
+ - gemfiles/rails_5.1.1.gemfile
138
250
  - lib/ajax-datatables-rails.rb
139
251
  - lib/ajax-datatables-rails/base.rb
140
252
  - lib/ajax-datatables-rails/config.rb
141
- - lib/ajax-datatables-rails/extensions/kaminari.rb
142
- - lib/ajax-datatables-rails/extensions/simple_paginator.rb
143
- - lib/ajax-datatables-rails/extensions/will_paginate.rb
144
- - lib/ajax-datatables-rails/models.rb
253
+ - lib/ajax-datatables-rails/datatable/column.rb
254
+ - lib/ajax-datatables-rails/datatable/column_date_filter.rb
255
+ - lib/ajax-datatables-rails/datatable/datatable.rb
256
+ - lib/ajax-datatables-rails/datatable/simple_order.rb
257
+ - lib/ajax-datatables-rails/datatable/simple_search.rb
258
+ - lib/ajax-datatables-rails/orm/active_record.rb
145
259
  - lib/ajax-datatables-rails/version.rb
146
260
  - lib/generators/datatable/config_generator.rb
147
261
  - lib/generators/datatable/templates/ajax_datatables_rails_config.rb
148
262
  - lib/generators/rails/datatable_generator.rb
149
263
  - lib/generators/rails/templates/datatable.rb
150
- - spec/ajax-datatables-rails/ajax_datatables_rails_spec.rb
151
- - spec/ajax-datatables-rails/kaminari_spec.rb
152
- - spec/ajax-datatables-rails/models_spec.rb
153
- - spec/ajax-datatables-rails/simple_paginator_spec.rb
154
- - spec/ajax-datatables-rails/will_paginate_spec.rb
155
- - spec/schema.rb
264
+ - spec/ajax-datatables-rails/base_spec.rb
265
+ - spec/ajax-datatables-rails/configuration_spec.rb
266
+ - spec/ajax-datatables-rails/datatable/column_spec.rb
267
+ - spec/ajax-datatables-rails/datatable/datatable_spec.rb
268
+ - spec/ajax-datatables-rails/datatable/simple_order_spec.rb
269
+ - spec/ajax-datatables-rails/datatable/simple_search_spec.rb
270
+ - spec/ajax-datatables-rails/extended_spec.rb
271
+ - spec/ajax-datatables-rails/orm/active_record_filter_records_spec.rb
272
+ - spec/ajax-datatables-rails/orm/active_record_paginate_records_spec.rb
273
+ - spec/ajax-datatables-rails/orm/active_record_sort_records_spec.rb
274
+ - spec/ajax-datatables-rails/orm/active_record_spec.rb
275
+ - spec/factories/user.rb
276
+ - spec/install_oracle.sh
156
277
  - spec/spec_helper.rb
157
- - spec/test_models.rb
158
- homepage: ''
159
- licenses: []
278
+ - spec/support/schema.rb
279
+ - spec/support/test_helpers.rb
280
+ - spec/support/test_models.rb
281
+ homepage: https://github.com/jbox-web/ajax-datatables-rails
282
+ licenses:
283
+ - MIT
160
284
  metadata: {}
161
285
  post_install_message:
162
286
  rdoc_options: []
@@ -166,7 +290,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
166
290
  requirements:
167
291
  - - ">="
168
292
  - !ruby/object:Gem::Version
169
- version: 1.9.3
293
+ version: '0'
170
294
  required_rubygems_version: !ruby/object:Gem::Requirement
171
295
  requirements:
172
296
  - - ">="
@@ -174,17 +298,25 @@ required_rubygems_version: !ruby/object:Gem::Requirement
174
298
  version: '0'
175
299
  requirements: []
176
300
  rubyforge_project:
177
- rubygems_version: 2.4.5
301
+ rubygems_version: 2.6.11
178
302
  signing_key:
179
303
  specification_version: 4
180
- summary: A wrapper around datatable's ajax methods that allow synchronization with
181
- server-side pagination in a rails app
304
+ summary: A gem that simplifies using datatables and hundreds of records via ajax
182
305
  test_files:
183
- - spec/ajax-datatables-rails/ajax_datatables_rails_spec.rb
184
- - spec/ajax-datatables-rails/kaminari_spec.rb
185
- - spec/ajax-datatables-rails/models_spec.rb
186
- - spec/ajax-datatables-rails/simple_paginator_spec.rb
187
- - spec/ajax-datatables-rails/will_paginate_spec.rb
188
- - spec/schema.rb
306
+ - spec/ajax-datatables-rails/base_spec.rb
307
+ - spec/ajax-datatables-rails/configuration_spec.rb
308
+ - spec/ajax-datatables-rails/datatable/column_spec.rb
309
+ - spec/ajax-datatables-rails/datatable/datatable_spec.rb
310
+ - spec/ajax-datatables-rails/datatable/simple_order_spec.rb
311
+ - spec/ajax-datatables-rails/datatable/simple_search_spec.rb
312
+ - spec/ajax-datatables-rails/extended_spec.rb
313
+ - spec/ajax-datatables-rails/orm/active_record_filter_records_spec.rb
314
+ - spec/ajax-datatables-rails/orm/active_record_paginate_records_spec.rb
315
+ - spec/ajax-datatables-rails/orm/active_record_sort_records_spec.rb
316
+ - spec/ajax-datatables-rails/orm/active_record_spec.rb
317
+ - spec/factories/user.rb
318
+ - spec/install_oracle.sh
189
319
  - spec/spec_helper.rb
190
- - spec/test_models.rb
320
+ - spec/support/schema.rb
321
+ - spec/support/test_helpers.rb
322
+ - spec/support/test_models.rb