wax_tasks 0.0.3 → 0.0.40

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5ac9e0a96963154d6625c7f0c4fc71251c86c017
4
- data.tar.gz: 4e87c17755a3da5eb541176aaec2812c305c736f
3
+ metadata.gz: 8e575498bcfd76bd5bd11705d9d6cac510a422eb
4
+ data.tar.gz: 725bae639d3bbb4ed57bdb0d79e9fb8147c85324
5
5
  SHA512:
6
- metadata.gz: 3c885e92b4245d48e44e7af8b7206bee18461b2b4add0d50b23537e562e135755fa1d227d9febb5003cfc942303270867dd455f0ac8508af7619d2717b9dd3ca
7
- data.tar.gz: bca597f6cd84e70ae59a2052c258f10781689753b98ffbad8aaf2828b8906e490f02d58bbc6707aa42390c43c734f9a1c2fc3dc2c2ad61589981ffff28e27a33
6
+ metadata.gz: 4c120c938aaf9778d1061749c2f9f38e0899ba4b56dd20ae97c08a34b3a15a77766f481b91efa43b6612295210368260613f9b79be2d863a7d90f35bc9accb16
7
+ data.tar.gz: 3f71b6b7e531c01f2d8d22aa2ef03d0c053f96a8e5dd9938e352226c0325e75a8c5e2b7fbf58cdf7d4ec3c76d588cd0ac5ad122d90de4e1d766f938d2adbcd35
@@ -1,5 +1,4 @@
1
- require 'yaml'
2
- require 'colorized_string'
1
+ require 'wax_tasks'
3
2
 
4
3
  namespace :wax do
5
4
  desc 'get _config.yaml and parse cmd line args'
@@ -1,7 +1,4 @@
1
- require 'jekyll'
2
- require 'tmpdir'
3
- require 'fileutils'
4
- require 'time'
1
+ require 'wax_tasks'
5
2
 
6
3
  namespace :wax do
7
4
  desc 'build site with gh-baseurl and publish to gh-pages branch'
data/lib/tasks/iiif.rake CHANGED
@@ -1,24 +1,26 @@
1
- require 'colorized_string'
1
+ require 'wax_tasks'
2
2
  require 'iiif_s3'
3
3
 
4
4
  namespace :wax do
5
5
  task :iiif => :config do
6
6
  abort "You must specify a collections after 'bundle exec rake wax:iiif'.".magenta if $argv.empty?
7
- FileUtils.mkdir_p './_iiif/tiles'
7
+ outputdir = './iiif'
8
+ FileUtils.mkdir outputdir
8
9
  all_records = []
9
10
  id_counter = 0
10
11
  build_opts = {
11
- :base_url => $config['baseurl'] + '/tiles',
12
- :output_dir => './_iiif/tiles',
12
+ :base_url => $config['baseurl'] + '/iiif',
13
+ :output_dir => outputdir,
13
14
  :tile_scale_factors => [1, 2],
14
15
  :verbose => true
15
16
  }
16
17
  $argv.each do |a|
17
18
  id_counter += 1
18
- dirpath = './_iiif/source_images/' + a
19
- collection_records = make_records(a) if Dir.exist?(dirpath)
19
+ inpath = './_iiif_source/' + a
20
+ abort "Source path '#{inpath}' does not exist. Exiting.".magenta unless Dir.exist?(inpath)
21
+ paged = $config['collections'][a]['iiif_paged'] == true
22
+ collection_records = make_records(a, inpath, paged)
20
23
  all_records.concat collection_records
21
- abort "Source path '#{dirpath}' does not exist. Exiting.".magenta unless Dir.exist?(dirpath)
22
24
  end
23
25
  builder = IiifS3::Builder.new(build_opts)
24
26
  builder.load(all_records)
@@ -26,15 +28,15 @@ namespace :wax do
26
28
  end
27
29
  end
28
30
 
29
- def make_records(collection_name)
31
+ def make_records(collection_name, inpath, paged)
30
32
  counter = 1
31
33
  collection_records = []
32
- imagefiles = Dir['./_iiif/source_images/' + collection_name + '/*'].sort!
34
+ imagefiles = Dir[inpath + '/*'].sort!
33
35
  imagefiles.each do |imagefile|
34
36
  basename = File.basename(imagefile, '.*').to_s
35
37
  record_opts = {
36
38
  :id => collection_name + '-' + basename,
37
- :is_document => false,
39
+ :is_document => paged,
38
40
  :path => imagefile,
39
41
  :label => $config['title'] + ' - ' + collection_name + ' - ' + basename
40
42
  }
data/lib/tasks/lunr.rake CHANGED
@@ -1,11 +1,11 @@
1
- require 'lunr_index'
1
+ require 'wax_tasks'
2
2
 
3
3
  namespace :wax do
4
4
  desc 'build lunr search index'
5
5
  task :lunr => :config do
6
6
  collections = $config['collections']
7
7
  lunr_language = $config['lunr_language']
8
- index = LunrIndex.new(collections, lunr_language)
8
+ index = Index.new(collections, lunr_language)
9
9
 
10
10
  Dir.mkdir('js') unless File.exist?('js')
11
11
  File.open('js/lunr-index.js', 'w') { |file| file.write(index.output) }
@@ -1,6 +1,4 @@
1
- require 'colorized_string'
2
- require 'wax_collection'
3
- require 'helpers'
1
+ require 'wax_tasks'
4
2
 
5
3
  namespace :wax do
6
4
  desc 'generate collection md pages from yaml or csv data source'
@@ -11,8 +9,8 @@ namespace :wax do
11
9
  else
12
10
  $argv.each do |collection_name|
13
11
  collection_config = valid_pagemaster(collection_name)
14
- collections_dir = $config['collections_dir'].nil? ? '' : $config['collections_dir'].to_s + '/'
15
- collection = WaxCollection.new(collection_name, collection_config, collections_dir)
12
+ collections_dir = $config['collections_dir'].nil? ? '' : $config.fetch('collections_dir').to_s + '/'
13
+ collection = Collection.new(collection_name, collection_config, collections_dir)
16
14
  collection.pagemaster
17
15
  end
18
16
  end
@@ -1,30 +1,12 @@
1
- require 'jekyll'
2
- require 'tmpdir'
3
- require 'fileutils'
4
- require 'time'
1
+ require 'wax_tasks'
5
2
 
6
3
  namespace :wax do
7
4
  desc 'build site with baseurl and publish to s3 branch'
8
- task :s3branch => :config do
9
- FileUtils.rm_rf('_site')
10
-
11
- opts = {
12
- 'source' => '.',
13
- 'destination' => '_site',
14
- 'config' => '_config.yml',
15
- 'incremental' => true,
16
- 'verbose' => true,
17
- 'baseurl' => $config['baseurl']
18
- }
19
-
20
- Jekyll::Site.new(Jekyll.configuration(opts)).process
21
-
5
+ task :s3branch do
22
6
  origin = `git config --get remote.origin.url`
23
-
24
7
  Dir.mktmpdir do |tmp|
25
8
  cp_r '_site/.', tmp
26
9
  Dir.chdir tmp
27
-
28
10
  system 'git init' # Init the repo.
29
11
  system "git add . && git commit -m 'Site updated at #{Time.now.utc}'"
30
12
  system 'git remote add origin ' + origin
data/lib/tasks/test.rake CHANGED
@@ -1,5 +1,5 @@
1
+ require 'wax_tasks'
1
2
  require 'html-proofer'
2
- require 'colorized_string'
3
3
 
4
4
  namespace :wax do
5
5
  desc 'run htmlproofer, rspec if exists'
@@ -1,22 +1,15 @@
1
- require 'yaml'
2
- require 'csv'
3
- require 'json'
4
- require 'fileutils'
5
- require 'colorized_string'
6
- require 'helpers'
7
-
8
1
  include FileUtils
9
2
 
10
- # WaxCollection class
11
- class WaxCollection
3
+ # initializes a wax collection for use with pagemaster,lunr,and iiif tasks
4
+ class Collection
12
5
  attr_reader :name, :config, :src, :layout, :dir, :data
13
6
 
14
7
  def initialize(collection_name, collection_config, collections_dir)
15
8
  @name = collection_name
16
9
  @config = collection_config
17
10
  @cdir = collections_dir
18
- @src = '_data/' + @config['source']
19
- @layout = File.basename(@config['layout'], '.*')
11
+ @src = '_data/' + @config.fetch('source')
12
+ @layout = File.basename(@config.fetch('layout'), '.*')
20
13
  @dir = @cdir + '_' + @name
21
14
  @data = []
22
15
  @lunr = {}
@@ -49,7 +42,7 @@ class WaxCollection
49
42
  completed = 0
50
43
  skipped = 0
51
44
  data.each do |item|
52
- pagename = slug(item['pid'])
45
+ pagename = slug(item.fetch('pid'))
53
46
  pagepath = @dir + '/' + pagename + '.md'
54
47
  permalink = '/' + @name + '/' + pagename + perma_ext
55
48
  if File.exist?(pagepath)
@@ -1,5 +1,3 @@
1
- require 'colorized_string'
2
-
3
1
  def clean(str)
4
2
  str.gsub!(/\A---(.|\n)*?---/, '') # remove yaml front matter
5
3
  str.gsub!(/{%(.*)%}/, '') # remove functional liquid
@@ -11,11 +9,10 @@ def clean(str)
11
9
  end
12
10
 
13
11
  def valid_pagemaster(collection_name)
14
- c = $config['collections'][collection_name]
15
- abort "Cannot find the collection '#{collection_name}' in _config.yml. Exiting.".magenta if c.nil?
16
- abort "Cannot find 'source' for the collection '#{collection_name}' in _config.yml. Exiting.".magenta if c['source'].nil?
17
- abort "Cannot find 'layout' for the collection '#{collection_name}' in _config.yml. Exiting.".magenta if c['layout'].nil?
18
- abort "Cannot find the file '#{'_data/' + c['source']}'. Exiting.".magenta unless File.file?('_data/' + c['source'])
12
+ c = $config.fetch('collections').fetch(collection_name)
13
+ abort "Cannot find 'source' for the collection '#{collection_name}' in _config.yml. Exiting.".magenta if c.fetch('source').nil?
14
+ abort "Cannot find 'layout' for the collection '#{collection_name}' in _config.yml. Exiting.".magenta if c.fetch('layout').nil?
15
+ abort "Cannot find the file '#{'_data/' + c['source']}'. Exiting.".magenta unless File.file?('_data/' + c.fetch('source'))
19
16
  c
20
17
  end
21
18
 
@@ -1,15 +1,13 @@
1
- require 'yaml'
2
- require 'colorized_string'
3
- require 'helpers'
1
+ include FileUtils
4
2
 
5
- # LunrIndex class
6
- class LunrIndex
3
+ # initializes a lunr index to be output to js/lunr-index.js
4
+ class Index
7
5
  attr_reader :output
8
6
 
9
7
  def initialize(collections, lunr_language)
10
8
  @collections = collections
11
9
  @lunr_language = lunr_language
12
- @cdir = $config['collections_dir'].nil? ? '' : $config['collections_dir'] + '/'
10
+ @cdir = $config['collections_dir'].nil? ? '' : $config.fetch('collections_dir') + '/'
13
11
  @lunr_collections = []
14
12
  @total_fields = []
15
13
  @output = ''
@@ -52,9 +50,9 @@ class LunrIndex
52
50
  yaml = YAML.load_file(page)
53
51
  hash = {
54
52
  'lunr_id' => count,
55
- 'link' => "{{'" + yaml['permalink'] + "' | relative_url }}"
53
+ 'link' => "{{'" + yaml.fetch('permalink') + "' | relative_url }}"
56
54
  }
57
- fields.each { |f| hash[f] = rm_diacritics(yaml[f]) }
55
+ fields.each { |f| hash[f] = rm_diacritics(yaml[f].to_s) }
58
56
  hash['content'] = rm_diacritics(clean(File.read(page))) if c[1]['lunr_index']['content']
59
57
  @output += "\nindex.addDoc(" + hash.to_json + "); "
60
58
  store_string += "\n" + hash.to_json + ", "
data/lib/wax_tasks.rb ADDED
@@ -0,0 +1,7 @@
1
+ require 'rubygems'
2
+ require 'bundler'
3
+ Bundler.require(:default)
4
+
5
+ require 'wax_tasks/helpers'
6
+ require 'wax_tasks/collection'
7
+ require 'wax_tasks/index'
data/spec/spec_helper.rb CHANGED
@@ -1,7 +1,7 @@
1
- require 'fake_helpers'
2
- require 'fake_site'
3
- require 'fake_data'
4
- require 'test_config'
5
- require 'test_pagemaster'
6
- require 'test_lunr'
7
- require 'test_iiif'
1
+ require 'fake/helpers'
2
+ require 'fake/site'
3
+ require 'fake/data'
4
+ require 'test/config'
5
+ require 'test/pagemaster'
6
+ require 'test/lunr'
7
+ require 'test/iiif'
metadata CHANGED
@@ -1,141 +1,141 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wax_tasks
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.40
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marii Nyrop
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-02-04 00:00:00.000000000 Z
11
+ date: 2018-02-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: bundler
14
+ name: colorize
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.16'
20
- type: :development
19
+ version: '0.8'
20
+ type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.16'
26
+ version: '0.8'
27
27
  - !ruby/object:Gem::Dependency
28
- name: faker
28
+ name: html-proofer
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.8'
34
- type: :development
33
+ version: '3.0'
34
+ type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '1.8'
40
+ version: '3.0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: rspec
42
+ name: iiif_s3
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '3.5'
48
- type: :development
47
+ version: '0.1'
48
+ type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '3.5'
54
+ version: '0.1'
55
55
  - !ruby/object:Gem::Dependency
56
- name: rubocop
56
+ name: jekyll
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '0.52'
62
- type: :development
61
+ version: '3.7'
62
+ type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '0.52'
68
+ version: '3.7'
69
69
  - !ruby/object:Gem::Dependency
70
- name: colorize
70
+ name: rake
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '0.8'
75
+ version: '12.0'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '0.8'
82
+ version: '12.0'
83
83
  - !ruby/object:Gem::Dependency
84
- name: html-proofer
84
+ name: bundler
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '3.0'
90
- type: :runtime
89
+ version: '1.16'
90
+ type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: '3.0'
96
+ version: '1.16'
97
97
  - !ruby/object:Gem::Dependency
98
- name: iiif_s3
98
+ name: faker
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: '0.1'
104
- type: :runtime
103
+ version: '1.8'
104
+ type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: '0.1'
110
+ version: '1.8'
111
111
  - !ruby/object:Gem::Dependency
112
- name: jekyll
112
+ name: rspec
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: '3.7'
118
- type: :runtime
117
+ version: '3.5'
118
+ type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - "~>"
123
123
  - !ruby/object:Gem::Version
124
- version: '3.7'
124
+ version: '3.5'
125
125
  - !ruby/object:Gem::Dependency
126
- name: rake
126
+ name: rubocop
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
129
  - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: '12.0'
132
- type: :runtime
131
+ version: '0.52'
132
+ type: :development
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - "~>"
137
137
  - !ruby/object:Gem::Version
138
- version: '12.0'
138
+ version: '0.52'
139
139
  description: Rake tasks for minimal iiif exhibition sites with Jekyll.
140
140
  email:
141
141
  - m.nyrop@columbia.edu
@@ -144,8 +144,6 @@ extensions: []
144
144
  extra_rdoc_files: []
145
145
  files:
146
146
  - Gemfile
147
- - lib/helpers.rb
148
- - lib/lunr_index.rb
149
147
  - lib/tasks/config.rake
150
148
  - lib/tasks/ghbranch.rake
151
149
  - lib/tasks/iiif.rake
@@ -153,15 +151,11 @@ files:
153
151
  - lib/tasks/pagemaster.rake
154
152
  - lib/tasks/s3branch.rake
155
153
  - lib/tasks/test.rake
156
- - lib/wax_collection.rb
157
- - spec/fake_data.rb
158
- - spec/fake_helpers.rb
159
- - spec/fake_site.rb
154
+ - lib/wax_tasks.rb
155
+ - lib/wax_tasks/collection.rb
156
+ - lib/wax_tasks/helpers.rb
157
+ - lib/wax_tasks/index.rb
160
158
  - spec/spec_helper.rb
161
- - spec/test_config.rb
162
- - spec/test_iiif.rb
163
- - spec/test_lunr.rb
164
- - spec/test_pagemaster.rb
165
159
  homepage: https://github.com/mnyrop/wax_tasks
166
160
  licenses:
167
161
  - MIT
@@ -188,10 +182,3 @@ specification_version: 4
188
182
  summary: Rake tasks for minimal exhibitions.
189
183
  test_files:
190
184
  - spec/spec_helper.rb
191
- - spec/test_iiif.rb
192
- - spec/test_config.rb
193
- - spec/test_lunr.rb
194
- - spec/fake_helpers.rb
195
- - spec/fake_data.rb
196
- - spec/fake_site.rb
197
- - spec/test_pagemaster.rb
data/spec/fake_data.rb DELETED
@@ -1,43 +0,0 @@
1
- require 'csv'
2
- require 'faker'
3
- require 'json'
4
- require 'rake'
5
-
6
- # make csvs
7
- I18n.enforce_available_locales = false
8
- Faker::Config.locale = 'zh-CN'
9
- Dir.mkdir('_data') unless File.exist?('_data')
10
-
11
- def fake_data(name, type)
12
- data = []
13
- keys = ['pid']
14
- 5.times { keys << slug(Faker::Lovecraft.unique.word) } # keys = pid + 5
15
- 5.times do # with 5 records
16
- record = {
17
- keys[0] => slug(Faker::Dune.unique.character),
18
- keys[1] => Faker::Lorem.sentence,
19
- keys[2] => Faker::TwinPeaks.quote,
20
- keys[3] => Faker::Name.name,
21
- keys[4] => Faker::Space.star,
22
- keys[5] => Faker::Lovecraft.sentence
23
- }
24
- data << record
25
- $collection_data[name] = { 'keys' => keys, 'type' => type }
26
- end
27
- data
28
- end
29
-
30
- 5.times do |i|
31
- name = slug(Faker::RuPaul.unique.queen)
32
- if i.even?
33
- data = fake_data(name, '.csv')
34
- path = '_data/' + name + '.csv'
35
- write_csv(path, data)
36
- else
37
- data = fake_data(name, '.json')
38
- path = '_data/' + name + '.json'
39
- File.open(path, 'w') { |f| f.write(data.to_json) }
40
- end
41
- Faker::Dune.unique.clear
42
- Faker::Lovecraft.unique.clear
43
- end
data/spec/fake_helpers.rb DELETED
@@ -1,22 +0,0 @@
1
- require 'csv'
2
- require 'colorized_string'
3
-
4
- # global
5
- $collection_data = {}
6
-
7
- # helper methods
8
- def slug(str)
9
- str.downcase.tr(' ', '_').gsub(/[^\w-]/, '')
10
- end
11
-
12
- def write_csv(path, hashes)
13
- CSV.open(path, 'wb:UTF-8') do |csv|
14
- csv << hashes.first.keys
15
- hashes.each do |hash|
16
- csv << hash.values
17
- end
18
- end
19
- puts "Writing csv data to #{path}."
20
- rescue StandardError
21
- abort "Cannot write csv data to #{path} for some reason.".magenta
22
- end
data/spec/fake_site.rb DELETED
@@ -1,27 +0,0 @@
1
- require 'fileutils'
2
- require 'jekyll'
3
- require 'yaml'
4
-
5
- include FileUtils
6
-
7
- site_dir = 'faker_site'
8
- mkdir_p(site_dir)
9
- image_dir = Dir.glob('spec/data/_iiif')
10
- cp_r(image_dir, site_dir)
11
- cd(site_dir)
12
-
13
- config_file = {
14
- 'title' => 'faker',
15
- 'url' => '',
16
- 'baseurl' => '',
17
- 'exclude' => ['Rakefile']
18
- }
19
- config_opts = {
20
- 'source' => '.',
21
- 'destination' => '_site',
22
- 'config' => '_config.yml'
23
- }
24
-
25
- File.open('_config.yml', 'w') { |f| f.puts(config_file.to_yaml) }
26
- File.open('Rakefile', 'w') { |f| f.puts('Dir.glob("../lib/tasks/*.rake").each { |r| load r }') }
27
- Jekyll::Site.new(Jekyll.configuration(config_opts)).process
data/spec/test_config.rb DELETED
@@ -1,28 +0,0 @@
1
- require 'rake'
2
- require 'yaml'
3
-
4
- # run + test wax:config
5
- describe 'wax:config' do
6
- it 'accesses _config.yml and argvs' do
7
- load File.expand_path("../../lib/tasks/config.rake", __FILE__)
8
- Rake::Task['wax:config'].invoke
9
-
10
- $collection_data.each { |col| $argv << col[0] }
11
- expect($config.length)
12
- expect($argv.length)
13
-
14
- # add collection data to config file
15
- collection_hash = {}
16
- $argv.each do |coll_name|
17
- ext = $collection_data[coll_name]['type']
18
- collection_hash[coll_name] = {
19
- 'source' => coll_name + ext,
20
- 'layout' => 'default'
21
- }
22
- end
23
-
24
- $config['collections'] = collection_hash
25
- output = YAML.dump $config
26
- File.write('_config.yml', output)
27
- end
28
- end
data/spec/test_iiif.rb DELETED
@@ -1,20 +0,0 @@
1
- require 'csv'
2
- require 'fileutils'
3
- require 'rake'
4
-
5
- include FileUtils
6
-
7
- describe 'wax:iiif' do
8
- it 'generates iiif tiles and data' do
9
- images = Dir.glob('./_iiif/source_images/*.jpg')
10
- $collection_data.each do |coll|
11
- new_dir = './_iiif/source_images/' + coll[0]
12
- mkdir_p(new_dir)
13
- images.each { |f| cp(File.expand_path(f), new_dir) }
14
- end
15
- rm_r(images)
16
- $argv = [$argv.first] # make tests faster by only running on 1/3 collections
17
- load File.expand_path("../../lib/tasks/iiif.rake", __FILE__)
18
- Rake::Task['wax:iiif'].invoke
19
- end
20
- end
data/spec/test_lunr.rb DELETED
@@ -1,24 +0,0 @@
1
- require 'rake'
2
-
3
- describe 'wax:lunr' do
4
- it 'generates a lunr index' do
5
- $config['collections'].each do |collection|
6
- name = collection[0]
7
- # get info on what to index
8
- lunr_hash = {
9
- 'content' => false,
10
- 'fields' => $collection_data[name]['keys']
11
- }
12
- # add it to config
13
- $config['collections'][name]['lunr_index'] = lunr_hash
14
- output = YAML.dump $config
15
- File.write('_config.yml', output)
16
- end
17
- # invoke lunr task
18
- load File.expand_path("../../lib/tasks/lunr.rake", __FILE__)
19
- Rake::Task['wax:lunr'].invoke
20
- # expect a populated index
21
- index = File.open('js/lunr-index.js', 'r').read
22
- expect(index.length > 1000)
23
- end
24
- end
@@ -1,9 +0,0 @@
1
- require 'rake'
2
- require 'yaml'
3
-
4
- describe 'wax:pagemaster' do
5
- it 'generates pages' do
6
- load File.expand_path("../../lib/tasks/pagemaster.rake", __FILE__)
7
- Rake::Task['wax:pagemaster'].invoke
8
- end
9
- end