j1-paginator 2020.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,67 @@
1
+ require_relative '../spec_helper.rb'
2
+
3
+ module Jekyll::J1Paginator::Generator
4
+ describe Utils do
5
+
6
+ it "should always replace num format with the specified number" do
7
+ Utils.format_page_number( ":num", 7).must_equal "7"
8
+ Utils.format_page_number( ":num", 13).must_equal "13"
9
+ Utils.format_page_number( ":num", -2).must_equal "-2"
10
+ Utils.format_page_number( ":num", 0).must_equal "0"
11
+ Utils.format_page_number( ":num", 1000).must_equal "1000"
12
+ end
13
+
14
+ it "should always replace num format with the specified number and keep rest of formatting" do
15
+ Utils.format_page_number( "/page:num/", 7).must_equal "/page7/"
16
+ Utils.format_page_number( "/page:num/", 50).must_equal "/page50/"
17
+ Utils.format_page_number( "/page:num/", -5).must_equal "/page-5/"
18
+
19
+ Utils.format_page_number( "/car/:num/", 1).must_equal "/car/1/"
20
+ Utils.format_page_number( "/car/:num", 1).must_equal "/car/1"
21
+ Utils.format_page_number( "car/:num", 1).must_equal "car/1"
22
+ Utils.format_page_number( "/car//:num", 1).must_equal "/car//1"
23
+ end
24
+
25
+ it "make sure there is a leading slash in path" do
26
+ Utils.ensure_leading_slash("path/to/file/wow").must_equal "/path/to/file/wow"
27
+ Utils.ensure_leading_slash("/no/place/wow/").must_equal "/no/place/wow/"
28
+ Utils.ensure_leading_slash("/no").must_equal "/no"
29
+ Utils.ensure_leading_slash("no").must_equal "/no"
30
+ end
31
+
32
+ it "make sure there is never a leading slash in path" do
33
+ Utils.remove_leading_slash("path/to/file/wow").must_equal "path/to/file/wow"
34
+ Utils.remove_leading_slash("/no/place/wow/").must_equal "no/place/wow/"
35
+ Utils.remove_leading_slash("/no").must_equal "no"
36
+ Utils.remove_leading_slash("no").must_equal "no"
37
+ end
38
+
39
+ it "sort must sort strings lowercase" do
40
+ Utils.sort_values( "AARON", "Aaron").must_equal 0
41
+ Utils.sort_values( "AARON", "aaron").must_equal 0
42
+ Utils.sort_values( "aaron", "AARON").must_equal 0
43
+ end
44
+
45
+ it "when sorting by nested post data the values must be resolved fully" do
46
+ data = {'book'=>{ 'name' => { 'first'=> 'John', 'last'=> 'Smith'}, 'rank'=>20}}
47
+ Utils.sort_get_post_data(data, "book:rank").must_equal 20
48
+ Utils.sort_get_post_data(data, "book:name:first").must_equal "John"
49
+ Utils.sort_get_post_data(data, "book:name:last").must_equal "Smith"
50
+
51
+ Utils.sort_get_post_data(data, "book:name").must_be_nil
52
+ Utils.sort_get_post_data(data, "name").must_be_nil
53
+ Utils.sort_get_post_data(data, "book").must_be_nil
54
+ end
55
+
56
+ it "should always replace max format with the specified number if specified" do
57
+ Utils.format_page_number( ":num-:max", 7, 16).must_equal "7-16"
58
+ Utils.format_page_number( ":num-:max", 13, 20).must_equal "13-20"
59
+ Utils.format_page_number( ":num-:max", -2, -4).must_equal "-2--4"
60
+ Utils.format_page_number( ":num_of_:max", 0, 10).must_equal "0_of_10"
61
+ Utils.format_page_number( ":num/:max", 1000, 2000).must_equal "1000/2000"
62
+ end
63
+
64
+
65
+ end
66
+ end
67
+
@@ -0,0 +1,13 @@
1
+ require 'minitest/spec'
2
+ require 'minitest/autorun'
3
+
4
+ require 'jekyll'
5
+ require_relative '../lib/j1-paginator/version'
6
+ require_relative '../lib/j1-paginator/generator/defaults'
7
+ require_relative '../lib/j1-paginator/generator/utils'
8
+ require_relative '../lib/j1-paginator/generator/compatibilityUtils'
9
+ require_relative '../lib/j1-paginator/generator/paginationIndexer'
10
+ require_relative '../lib/j1-paginator/generator/paginator'
11
+ require_relative '../lib/j1-paginator/generator/paginationPage'
12
+ require_relative '../lib/j1-paginator/generator/paginationModel'
13
+ require_relative '../lib/j1-paginator/generator/paginationGenerator'
metadata ADDED
@@ -0,0 +1,144 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: j1-paginator
3
+ version: !ruby/object:Gem::Version
4
+ version: 2020.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Sverrir Sigmundarson
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2020-06-13 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: jekyll
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '3.0'
20
+ - - "<="
21
+ - !ruby/object:Gem::Version
22
+ version: '4.0'
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ version: '3.0'
30
+ - - "<="
31
+ - !ruby/object:Gem::Version
32
+ version: '4.0'
33
+ - !ruby/object:Gem::Dependency
34
+ name: bundler
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '2.0'
40
+ type: :development
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '2.0'
47
+ - !ruby/object:Gem::Dependency
48
+ name: rake
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '13.0'
54
+ type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '13.0'
61
+ - !ruby/object:Gem::Dependency
62
+ name: minitest
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '5.4'
68
+ type: :development
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - "~>"
73
+ - !ruby/object:Gem::Version
74
+ version: '5.4'
75
+ description: An enhanced zero-configuration in-place replacement for the now decomissioned
76
+ built-in jekyll-paginate gem. This pagination gem offers full backwards compatability
77
+ as well as a slew of new frequently requested features with minimal additional site
78
+ and page configuration. Optional features include auto-generation of paginated collection,
79
+ tag and category pages.
80
+ email:
81
+ - jekyll@sverrirs.com
82
+ executables: []
83
+ extensions: []
84
+ extra_rdoc_files: []
85
+ files:
86
+ - CODE_OF_CONDUCT.md
87
+ - Gemfile
88
+ - LICENSE
89
+ - README-AUTOPAGES.md
90
+ - README-GENERATOR.md
91
+ - README.md
92
+ - Rakefile
93
+ - j1-paginator.gemspec
94
+ - lib/j1-paginator.rb
95
+ - lib/j1-paginator/autopages/autoPages.rb
96
+ - lib/j1-paginator/autopages/defaults.rb
97
+ - lib/j1-paginator/autopages/pages/baseAutoPage.rb
98
+ - lib/j1-paginator/autopages/pages/categoryAutoPage.rb
99
+ - lib/j1-paginator/autopages/pages/collectionAutoPage.rb
100
+ - lib/j1-paginator/autopages/pages/tagAutoPage.rb
101
+ - lib/j1-paginator/autopages/utils.rb
102
+ - lib/j1-paginator/generator/compatibilityUtils.rb
103
+ - lib/j1-paginator/generator/defaults.rb
104
+ - lib/j1-paginator/generator/paginationGenerator.rb
105
+ - lib/j1-paginator/generator/paginationIndexer.rb
106
+ - lib/j1-paginator/generator/paginationModel.rb
107
+ - lib/j1-paginator/generator/paginationPage.rb
108
+ - lib/j1-paginator/generator/paginator.rb
109
+ - lib/j1-paginator/generator/utils.rb
110
+ - lib/j1-paginator/version.rb
111
+ - spec/generator/defaults_spec.rb
112
+ - spec/generator/paginationPage_spec.rb
113
+ - spec/generator/paginator_spec.rb
114
+ - spec/generator/utils_spec.rb
115
+ - spec/spec_helper.rb
116
+ homepage: https://github.com/sverrirs/j1-paginator
117
+ licenses:
118
+ - MIT
119
+ metadata: {}
120
+ post_install_message:
121
+ rdoc_options: []
122
+ require_paths:
123
+ - lib
124
+ required_ruby_version: !ruby/object:Gem::Requirement
125
+ requirements:
126
+ - - ">="
127
+ - !ruby/object:Gem::Version
128
+ version: 2.0.0
129
+ required_rubygems_version: !ruby/object:Gem::Requirement
130
+ requirements:
131
+ - - ">="
132
+ - !ruby/object:Gem::Version
133
+ version: '0'
134
+ requirements: []
135
+ rubygems_version: 3.0.3
136
+ signing_key:
137
+ specification_version: 4
138
+ summary: Pagination Generator for Jekyll 3
139
+ test_files:
140
+ - spec/generator/defaults_spec.rb
141
+ - spec/generator/paginationPage_spec.rb
142
+ - spec/generator/paginator_spec.rb
143
+ - spec/generator/utils_spec.rb
144
+ - spec/spec_helper.rb