brandeins 0.1.3 → 0.1.5
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +1 -0
- data/Rakefile +4 -4
- data/lib/brandeins.rb +6 -5
- data/lib/brandeins/pdf-tools.rb +7 -8
- data/lib/brandeins/version.rb +1 -1
- data/test/brandeins_test.rb +0 -19
- metadata +4 -4
data/.gitignore
CHANGED
data/Rakefile
CHANGED
@@ -6,13 +6,13 @@ Rake::TestTask.new do |t|
|
|
6
6
|
t.pattern = 'test/*_test.rb'
|
7
7
|
end
|
8
8
|
|
9
|
-
task :
|
10
|
-
sh
|
9
|
+
task :install do
|
10
|
+
sh "gem install ./pkg/brandeins-#{BrandEins::VERSION}.gem"
|
11
11
|
end
|
12
12
|
|
13
|
-
task :
|
13
|
+
task publish: [ :build ] do
|
14
14
|
version = BrandEins::VERSION
|
15
|
-
sh "gem push brandeins-#{
|
15
|
+
sh "gem push ./pkg/brandeins-#{BrandEins::VERSION}.gem"
|
16
16
|
end
|
17
17
|
|
18
18
|
task :default => :test
|
data/lib/brandeins.rb
CHANGED
@@ -32,7 +32,7 @@ module BrandEins
|
|
32
32
|
method_option :all
|
33
33
|
method_option :year, :type => :numeric
|
34
34
|
def download
|
35
|
-
path = options.path
|
35
|
+
path = options.path ? File.expand_path(options.path) : Dir.pwd
|
36
36
|
year = options.year || Time.new.year
|
37
37
|
all = options.all
|
38
38
|
volume = options.volume
|
@@ -40,11 +40,11 @@ module BrandEins
|
|
40
40
|
if volume.nil? && all.nil?
|
41
41
|
puts "If you want to download a specific volune use the --volume flag or use --all to download all volumes of a year"
|
42
42
|
else
|
43
|
-
|
43
|
+
downloader = BrandEins::Downloader.new path
|
44
44
|
if !all.nil?
|
45
|
-
|
45
|
+
downloader.get_magazines_of_year year
|
46
46
|
else
|
47
|
-
|
47
|
+
downloader.get_magazine year, volume
|
48
48
|
end
|
49
49
|
end
|
50
50
|
end
|
@@ -112,7 +112,8 @@ module BrandEins
|
|
112
112
|
pdf_files = pdf_files.reverse.push(pdf_cover).reverse
|
113
113
|
|
114
114
|
if !@pdftool.nil?
|
115
|
-
@
|
115
|
+
target_pdf_path = "#{@dl_dir}/#{target_pdf}"
|
116
|
+
@pdftool.merge_pdf_files(pdf_files, target_pdf_path)
|
116
117
|
cleanup
|
117
118
|
else
|
118
119
|
if RUBY_PLATFORM.include? 'darwin'
|
data/lib/brandeins/pdf-tools.rb
CHANGED
@@ -20,11 +20,10 @@ module BrandEins
|
|
20
20
|
|
21
21
|
def merge_pdf_files(pdf_files, target_pdf)
|
22
22
|
begin
|
23
|
-
|
24
|
-
|
25
|
-
args = self.args.gsub(/__pdf_files__/, arg_files).gsub(/__target_pdf__/, target_pdf)
|
23
|
+
pdf_files_arg = pdf_files.map {|pdf_file| "'#{pdf_file}'" }.join ' '
|
24
|
+
args = self.args.join(' ').gsub(/__pdf_files__/, pdf_files_arg).gsub(/__target_pdf__/, target_pdf)
|
26
25
|
puts "executing: #{@cmd} #{args}"
|
27
|
-
|
26
|
+
IO.popen("#{@cmd} #{args}") { |f| puts f.gets }
|
28
27
|
rescue Exception => e
|
29
28
|
puts "error: #{e.inspect}"
|
30
29
|
return false
|
@@ -49,16 +48,16 @@ module BrandEins
|
|
49
48
|
class PdftkOSX < TemplateOSX
|
50
49
|
def initialize
|
51
50
|
@cmd = 'pdftk'
|
52
|
-
@args = '__pdf_files__ output __target_pdf__'
|
53
|
-
@noop = '
|
51
|
+
@args = ['__pdf_files__', 'output', '__target_pdf__']
|
52
|
+
@noop = ['--version']
|
54
53
|
end
|
55
54
|
end
|
56
55
|
|
57
56
|
class GhostscriptWin < TemplateWin
|
58
57
|
def initialize
|
59
58
|
@cmd = 'gswin64c.exe'
|
60
|
-
@args = '
|
61
|
-
@noop = '
|
59
|
+
@args = ['-dNOPAUSE', '-dBATCH', '-sDEVICE=pdfwrite', '-sOutputFile=__target_pdf__', '__pdf_files__']
|
60
|
+
@noop = ['--version']
|
62
61
|
end
|
63
62
|
end
|
64
63
|
|
data/lib/brandeins/version.rb
CHANGED
data/test/brandeins_test.rb
CHANGED
@@ -13,14 +13,6 @@ class TestBrandEinsDownload < MiniTest::Unit::TestCase
|
|
13
13
|
# testing im allgemeinen: http://holmwood.id.au/~lindsay/2008/04/26/hints-for-testing-your-evolving-ruby-scripts/
|
14
14
|
end
|
15
15
|
|
16
|
-
def test_tmp_directories_get_created
|
17
|
-
skip
|
18
|
-
FakeFS do
|
19
|
-
#bdl = BrandEins::Downloader.new @dir
|
20
|
-
#assert File.directory?(File.expand_path("./#{@dir}/tmp"))
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
16
|
def test_magazine_url_scraping
|
25
17
|
html = <<-EOF
|
26
18
|
<div class="jahrgang jahrgang-2012 jahrgang-latest">
|
@@ -71,15 +63,4 @@ class TestBrandEinsDownload < MiniTest::Unit::TestCase
|
|
71
63
|
assert_equal "Checking requirements for your system\n\nIt seems you have magic running on your system. You are ready to go!\n", out.string
|
72
64
|
end
|
73
65
|
|
74
|
-
def test_brandeins_setup_missing_pdf_tool_path
|
75
|
-
pdf_tool = Object.new
|
76
|
-
pdf_tool.define_singleton_method :available? do false end
|
77
|
-
pdf_tool.define_singleton_method :cmd do 'magic' end
|
78
|
-
|
79
|
-
capture_stdout do
|
80
|
-
BrandEins::Setup.new :os => 'x86_64-darwin12.2.0', :pdf_tool => pdf_tool
|
81
|
-
end
|
82
|
-
|
83
|
-
assert_equal "Checking requirements for your system\n\nIt seems you have magic running on your system. You are ready to go!\n", out.string
|
84
|
-
end
|
85
66
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: brandeins
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.5
|
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:
|
12
|
+
date: 2013-01-02 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rake
|
@@ -119,7 +119,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
119
119
|
version: '0'
|
120
120
|
segments:
|
121
121
|
- 0
|
122
|
-
hash:
|
122
|
+
hash: 1431581098543037223
|
123
123
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
124
124
|
none: false
|
125
125
|
requirements:
|
@@ -128,7 +128,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
128
128
|
version: '0'
|
129
129
|
segments:
|
130
130
|
- 0
|
131
|
-
hash:
|
131
|
+
hash: 1431581098543037223
|
132
132
|
requirements: []
|
133
133
|
rubyforge_project:
|
134
134
|
rubygems_version: 1.8.24
|