alacit 1.0.0 → 1.0.1
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.
- data/CHANGELOG.md +4 -0
- data/Rakefile +1 -1
- data/lib/version.rb +1 -1
- metadata +9 -27
- data/alacit.gemspec +0 -21
- data/pkg/alacit-0.0.2.gem +0 -0
- data/pkg/alacit-0.0.3.gem +0 -0
- data/pkg/alacit-0.1.0.gem +0 -0
- data/pkg/alacit-0.1.1.gem +0 -0
- data/pkg/alacit-1.0.0.gem +0 -0
- data/test/converter_test.rb +0 -150
- data/test/fixtures/test.flac +0 -0
- data/test/fixtures/test.m4a +0 -0
- data/test/fixtures/test2.wav +0 -0
- data/test/fixtures/test3.ape +0 -0
- data/test/fixtures/test3.cue +0 -19
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,9 @@
|
|
1
1
|
# AlacIt Changelog
|
2
2
|
|
3
|
+
## 1.0.1
|
4
|
+
|
5
|
+
* Improve Alacit installation speed.
|
6
|
+
|
3
7
|
## 1.0.0
|
4
8
|
|
5
9
|
* Cue-Sheet Splitting (Extraction) - If a matching-named `.cue` sheet is found in the same directory as the audio file, then multiple M4A's are generated based on the Cue Sheet data.
|
data/Rakefile
CHANGED
data/lib/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: alacit
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -36,31 +36,19 @@ executables:
|
|
36
36
|
extensions: []
|
37
37
|
extra_rdoc_files: []
|
38
38
|
files:
|
39
|
-
- CHANGELOG.md
|
40
|
-
- Gemfile
|
41
|
-
- Gemfile.lock
|
42
|
-
- LICENSE.txt
|
43
|
-
- README.md
|
44
|
-
- Rakefile
|
45
|
-
- alacit.gemspec
|
46
39
|
- bin/alacit
|
47
40
|
- lib/alacit.rb
|
48
41
|
- lib/application.rb
|
49
42
|
- lib/cuesheet.rb
|
50
43
|
- lib/index.rb
|
51
44
|
- lib/version.rb
|
52
|
-
-
|
53
|
-
-
|
54
|
-
-
|
55
|
-
-
|
56
|
-
-
|
57
|
-
-
|
58
|
-
|
59
|
-
- test/fixtures/test.m4a
|
60
|
-
- test/fixtures/test2.wav
|
61
|
-
- test/fixtures/test3.ape
|
62
|
-
- test/fixtures/test3.cue
|
63
|
-
homepage: http://russbrooks.com
|
45
|
+
- CHANGELOG.md
|
46
|
+
- Gemfile
|
47
|
+
- Gemfile.lock
|
48
|
+
- LICENSE.txt
|
49
|
+
- Rakefile
|
50
|
+
- README.md
|
51
|
+
homepage: https://github.com/iq9/AlacIt
|
64
52
|
licenses: []
|
65
53
|
post_install_message:
|
66
54
|
rdoc_options: []
|
@@ -85,10 +73,4 @@ signing_key:
|
|
85
73
|
specification_version: 3
|
86
74
|
summary: APE, FLAC, and WAV to Apple Lossless (ALAC) batch conversion utility and
|
87
75
|
cue-sheet splitter.
|
88
|
-
test_files:
|
89
|
-
- test/converter_test.rb
|
90
|
-
- test/fixtures/test.flac
|
91
|
-
- test/fixtures/test.m4a
|
92
|
-
- test/fixtures/test2.wav
|
93
|
-
- test/fixtures/test3.ape
|
94
|
-
- test/fixtures/test3.cue
|
76
|
+
test_files: []
|
data/alacit.gemspec
DELETED
@@ -1,21 +0,0 @@
|
|
1
|
-
# Ensure we require the local version and not one we might have installed already
|
2
|
-
$:.push File.expand_path('../lib', __FILE__)
|
3
|
-
require 'version'
|
4
|
-
|
5
|
-
spec = Gem::Specification.new do |s|
|
6
|
-
s.name = 'alacit'
|
7
|
-
s.version = AlacIt::VERSION
|
8
|
-
s.author = 'Russell H. Brooks'
|
9
|
-
s.email = 'me@russbrooks.com'
|
10
|
-
s.homepage = 'http://russbrooks.com'
|
11
|
-
s.platform = Gem::Platform::RUBY
|
12
|
-
s.summary = 'APE, FLAC, and WAV to Apple Lossless (ALAC) batch conversion utility and cue-sheet splitter.'
|
13
|
-
s.description = 'Quickly convert entire directories of APE, FLAC, and WAV files to Apple Lossless (ALAC) for importation into iTunes, iPhones, iPads, and iPods. It does Cue-Sheet splitting too.'
|
14
|
-
s.files = `git ls-files`.split("\n")
|
15
|
-
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
16
|
-
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
17
|
-
s.require_paths = ['lib']
|
18
|
-
s.has_rdoc = false
|
19
|
-
s.bindir = 'bin'
|
20
|
-
s.add_development_dependency('rake')
|
21
|
-
end
|
data/pkg/alacit-0.0.2.gem
DELETED
Binary file
|
data/pkg/alacit-0.0.3.gem
DELETED
Binary file
|
data/pkg/alacit-0.1.0.gem
DELETED
Binary file
|
data/pkg/alacit-0.1.1.gem
DELETED
Binary file
|
data/pkg/alacit-1.0.0.gem
DELETED
Binary file
|
data/test/converter_test.rb
DELETED
@@ -1,150 +0,0 @@
|
|
1
|
-
require 'pathname'
|
2
|
-
require 'tmpdir'
|
3
|
-
require 'alacit'
|
4
|
-
require 'minitest/autorun'
|
5
|
-
|
6
|
-
class AlacItTest < MiniTest::Unit::TestCase
|
7
|
-
def setup
|
8
|
-
# Before each test.
|
9
|
-
@temp_dir = Pathname.new Dir.mktmpdir('alacit')
|
10
|
-
@app = AlacIt::Converter.new
|
11
|
-
end
|
12
|
-
|
13
|
-
def teardown
|
14
|
-
# After each test.
|
15
|
-
@temp_dir.rmtree
|
16
|
-
@app = nil
|
17
|
-
end
|
18
|
-
|
19
|
-
def test_no_args
|
20
|
-
ARGV.clear
|
21
|
-
_, err = capture_io do
|
22
|
-
assert_raises(SystemExit) { @app.convert }
|
23
|
-
end
|
24
|
-
assert_match /You must supply one or more file or directory names/, err
|
25
|
-
end
|
26
|
-
|
27
|
-
def test_nonexistant_directory
|
28
|
-
ARGV.clear
|
29
|
-
ARGV << '/bogus/dir'
|
30
|
-
_, err = capture_io do
|
31
|
-
assert_raises(SystemExit) { @app.convert }
|
32
|
-
end
|
33
|
-
assert_match /Not a file or directory/, err
|
34
|
-
ensure
|
35
|
-
ARGV.clear
|
36
|
-
end
|
37
|
-
|
38
|
-
def test_single_ape
|
39
|
-
FileUtils.cp 'test/fixtures/test3.ape', @temp_dir
|
40
|
-
ARGV.clear
|
41
|
-
ARGV << File.join(@temp_dir, 'test3.ape')
|
42
|
-
out, = capture_io { @app.convert }
|
43
|
-
assert_match /test3\.ape converted/, out
|
44
|
-
assert_equal File.exists?(File.join(@temp_dir, 'test3.m4a')), true
|
45
|
-
end
|
46
|
-
|
47
|
-
def test_single_flac
|
48
|
-
FileUtils.cp 'test/fixtures/test.flac', @temp_dir
|
49
|
-
ARGV.clear
|
50
|
-
ARGV << File.join(@temp_dir, 'test.flac')
|
51
|
-
out, = capture_io { @app.convert }
|
52
|
-
assert_match /test\.flac converted/, out
|
53
|
-
assert_equal File.exists?(File.join(@temp_dir, 'test.m4a')), true
|
54
|
-
end
|
55
|
-
|
56
|
-
def test_single_wav
|
57
|
-
FileUtils.cp 'test/fixtures/test2.wav', @temp_dir
|
58
|
-
ARGV.clear
|
59
|
-
ARGV << File.join(@temp_dir, 'test2.wav')
|
60
|
-
out, = capture_io { @app.convert }
|
61
|
-
assert_match /test2\.wav converted/, out
|
62
|
-
assert_equal File.exists?(File.join(@temp_dir, 'test2.m4a')), true
|
63
|
-
end
|
64
|
-
|
65
|
-
def test_single_ape_with_cue_file
|
66
|
-
FileUtils.cp 'test/fixtures/test3.ape', @temp_dir
|
67
|
-
FileUtils.cp 'test/fixtures/test3.cue', @temp_dir
|
68
|
-
ARGV.clear
|
69
|
-
ARGV << File.join(@temp_dir, 'test3.ape')
|
70
|
-
out, = capture_io { @app.convert }
|
71
|
-
refute_match /test3\.ape converted/, out
|
72
|
-
assert_match /01 - Track1.m4a\" extracted based on cue sheet/, out
|
73
|
-
assert_match /02 - Track2.m4a\" extracted based on cue sheet/, out
|
74
|
-
assert_match /03 - Track3.m4a\" extracted based on cue sheet/, out
|
75
|
-
assert_equal File.exists?(File.join(@temp_dir, 'test3.m4a')), false
|
76
|
-
assert_equal File.exists?(File.join(@temp_dir, '01 - Track1.m4a')), true
|
77
|
-
assert_equal File.exists?(File.join(@temp_dir, '02 - Track2.m4a')), true
|
78
|
-
assert_equal File.exists?(File.join(@temp_dir, '03 - Track3.m4a')), true
|
79
|
-
end
|
80
|
-
|
81
|
-
def test_mixed_directory
|
82
|
-
FileUtils.cp 'test/fixtures/test.flac', @temp_dir
|
83
|
-
FileUtils.cp 'test/fixtures/test2.wav', @temp_dir
|
84
|
-
ARGV.clear
|
85
|
-
ARGV << @temp_dir
|
86
|
-
out, = capture_io { @app.convert }
|
87
|
-
assert_match /test\.flac converted/, out
|
88
|
-
assert_match /test2\.wav converted/, out
|
89
|
-
assert_equal File.exists?(File.join(@temp_dir, 'test.m4a')), true
|
90
|
-
assert_equal File.exists?(File.join(@temp_dir, 'test2.m4a')), true
|
91
|
-
end
|
92
|
-
|
93
|
-
def test_single_flac_file_exists
|
94
|
-
FileUtils.cp 'test/fixtures/test.flac', @temp_dir
|
95
|
-
FileUtils.cp 'test/fixtures/test.m4a', @temp_dir
|
96
|
-
ARGV.clear
|
97
|
-
ARGV << File.join(@temp_dir, 'test.flac')
|
98
|
-
out, err = capture_io { @app.convert }
|
99
|
-
assert_match /test\.m4a\" exists/, err
|
100
|
-
end
|
101
|
-
|
102
|
-
def test_single_flac_file_exists_force_overwrite
|
103
|
-
FileUtils.cp 'test/fixtures/test.flac', @temp_dir
|
104
|
-
FileUtils.cp 'test/fixtures/test.m4a', @temp_dir
|
105
|
-
ARGV.clear
|
106
|
-
ARGV << '--force' << File.join(@temp_dir, 'test.flac')
|
107
|
-
out, = capture_io { @app.convert }
|
108
|
-
assert_match /test\.flac converted/, out
|
109
|
-
assert_equal File.exists?(File.join(@temp_dir, 'test.m4a')), true
|
110
|
-
end
|
111
|
-
|
112
|
-
def test_mixed_directory_file_exists
|
113
|
-
FileUtils.cp 'test/fixtures/test.flac', @temp_dir
|
114
|
-
FileUtils.cp 'test/fixtures/test2.wav', @temp_dir
|
115
|
-
FileUtils.cp 'test/fixtures/test.m4a', @temp_dir
|
116
|
-
ARGV.clear
|
117
|
-
ARGV << File.join(@temp_dir)
|
118
|
-
out, err = capture_io { @app.convert }
|
119
|
-
assert_match /test\.m4a\" exists/, err
|
120
|
-
assert_match /test2\.wav converted/, out
|
121
|
-
assert_equal File.exists?(File.join(@temp_dir, 'test2.m4a')), true
|
122
|
-
end
|
123
|
-
|
124
|
-
def test_mixed_directory_file_exists_force_overwrite
|
125
|
-
FileUtils.cp 'test/fixtures/test.flac', @temp_dir
|
126
|
-
FileUtils.cp 'test/fixtures/test2.wav', @temp_dir
|
127
|
-
FileUtils.cp 'test/fixtures/test.m4a', @temp_dir
|
128
|
-
ARGV.clear
|
129
|
-
ARGV << '--force' << File.join(@temp_dir)
|
130
|
-
out, = capture_io { @app.convert }
|
131
|
-
assert_match /test\.flac converted/, out
|
132
|
-
assert_match /test2\.wav converted/, out
|
133
|
-
assert_equal File.exists?(File.join(@temp_dir, 'test.m4a')), true
|
134
|
-
assert_equal File.exists?(File.join(@temp_dir, 'test2.m4a')), true
|
135
|
-
end
|
136
|
-
|
137
|
-
def test_standard_exception_handling_invalid_option
|
138
|
-
app = AlacIt::Application.new
|
139
|
-
out, err = capture_io do
|
140
|
-
e = assert_raises SystemExit do
|
141
|
-
app.standard_exception_handling do
|
142
|
-
raise OptionParser::InvalidOption, 'foo'
|
143
|
-
end
|
144
|
-
end
|
145
|
-
assert_equal 1, e.status
|
146
|
-
end
|
147
|
-
assert_empty out
|
148
|
-
assert_equal "invalid option: foo\n", err
|
149
|
-
end
|
150
|
-
end
|
data/test/fixtures/test.flac
DELETED
Binary file
|
data/test/fixtures/test.m4a
DELETED
Binary file
|
data/test/fixtures/test2.wav
DELETED
Binary file
|
data/test/fixtures/test3.ape
DELETED
Binary file
|
data/test/fixtures/test3.cue
DELETED
@@ -1,19 +0,0 @@
|
|
1
|
-
REM GENRE "Techno"
|
2
|
-
REM DATE 2012
|
3
|
-
REM DISCID CF0A720E
|
4
|
-
REM COMMENT "ExactAudioCopy v0.99pb5"
|
5
|
-
PERFORMER "Vader"
|
6
|
-
TITLE "Test Title"
|
7
|
-
FILE "test3.ape" WAVE
|
8
|
-
TRACK 01 AUDIO
|
9
|
-
TITLE "Track1"
|
10
|
-
PERFORMER "Faithless"
|
11
|
-
INDEX 01 00:00:00
|
12
|
-
TRACK 02 AUDIO
|
13
|
-
TITLE "Track2"
|
14
|
-
PERFORMER "Faithless"
|
15
|
-
INDEX 01 00:30:74
|
16
|
-
TRACK 03 AUDIO
|
17
|
-
TITLE "Track3"
|
18
|
-
PERFORMER "Faithless"
|
19
|
-
INDEX 01 00:60:39
|