ruby-ogginfo 0.7 → 0.7.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -34,35 +34,6 @@ class OggInfoTest < Test::Unit::TestCase
34
34
  end
35
35
  end
36
36
 
37
- def test_writing_to_spedial_filenames
38
- filename = "fichier éé.ogg"
39
- FileUtils.cp(@tempfile, filename)
40
- begin
41
- OggInfo.open(@tempfile) do |ogg|
42
- ogg.tag.title = "a"*200
43
- end
44
- #system("ls", "-l", filename)
45
- ensure
46
- FileUtils.rm_f(filename)
47
- end
48
- end
49
-
50
- def test_good_writing_of_utf8_strings
51
- tag = { "title" => "this is a éé utf8 string",
52
- "artist" => "and è another one à"}
53
- tag_test("tag_writing", tag)
54
- end
55
-
56
- def test_tag_writing
57
- data = "a"*256
58
- tag_test("tag_writing", "title" => data, "artist" => data )
59
- end
60
-
61
- def test_big_tags
62
- data = "a"*60000
63
- tag_test("big_tags", "title" => data, "artist" => data )
64
- end
65
-
66
37
  def test_should_not_fail_when_input_is_truncated
67
38
  ogg_length = nil
68
39
  OggInfo.open(@tempfile) do |ogg|
@@ -134,23 +105,4 @@ class OggInfoTest < Test::Unit::TestCase
134
105
  tf.close
135
106
  tf
136
107
  end
137
-
138
- def tag_test(test_name, tag)
139
- OggInfo.open(@tempfile) do |ogg|
140
- tag.each { |k,v| ogg.tag[k] = v }
141
- end
142
-
143
- OggInfo.open(@tempfile) do |ogg|
144
- assert_equal tag, ogg.tag
145
- end
146
- system("cp #{@tempfile} /tmp/test_#{RUBY_VERSION}_#{test_name}.ogg")
147
- test_length
148
- assert_nothing_raised do
149
- io = open(@tempfile)
150
- reader = Ogg::Reader.new(io)
151
- reader.each_pages do |page|
152
- page
153
- end
154
- end
155
- end
156
108
  end
@@ -9,17 +9,14 @@ require "tempfile"
9
9
  require File.join(File.dirname(__FILE__), "test_helper")
10
10
 
11
11
  class OtherCodecsInfoTest < Test::Unit::TestCase
12
- CODECS = [:speex, :opus]
13
-
14
12
  def setup
15
13
  @fixtures = load_fixtures
16
14
  end
17
15
 
18
16
  def test_generated_info
19
- CODECS.each do |codec|
20
- OggInfo.open(@fixtures[codec]) do |ogg|
17
+ @fixtures.each do |codec, tempfile|
18
+ OggInfo.open(tempfile) do |ogg|
21
19
  assert_equal 2, ogg.channels
22
- assert_equal 48000, ogg.samplerate
23
20
  case codec
24
21
  when :speex
25
22
  assert_equal "spxinfotest", ogg.tag.author
@@ -27,15 +24,21 @@ class OtherCodecsInfoTest < Test::Unit::TestCase
27
24
  assert_in_delta(3, ogg.length, 0.2, "length has not been correctly guessed for codec \"#{codec}\"")
28
25
  assert_in_delta 64000, ogg.bitrate, 2000
29
26
  assert_equal "artist", ogg.tag.artist
27
+ assert_equal 48000, ogg.samplerate
28
+ when :ogg
29
+ assert_in_delta(3, ogg.length, 0.5, "length has not been correctly guessed for codec \"#{codec}\"")
30
+ assert_in_delta 64000, ogg.bitrate, 10000
31
+ assert_equal "artist", ogg.tag.artist
32
+ assert_equal 44100, ogg.samplerate
30
33
  end
31
34
  end
32
35
  end
33
36
  end
34
37
 
35
38
  def test_tag_writing
36
- CODECS.each do |codec|
39
+ @fixtures.each do |codec, tempfile|
37
40
  tag = {"title" => "mytitle", "test" => "myartist" }
38
- OggInfo.open(@fixtures[codec]) do |ogg|
41
+ OggInfo.open(tempfile) do |ogg|
39
42
  ogg.tag.clear
40
43
  tag.each { |k,v| ogg.tag[k] = v }
41
44
  end
@@ -45,4 +48,57 @@ class OtherCodecsInfoTest < Test::Unit::TestCase
45
48
  end
46
49
  end
47
50
  end
51
+
52
+ def test_good_writing_of_utf8_strings
53
+ tag = { "title" => "this is a éé utf8 string",
54
+ "artist" => "and è another one à"}
55
+ tag_test("tag_writing", tag)
56
+ end
57
+
58
+ def test_tag_writing
59
+ data = "a"*256
60
+ tag_test("tag_writing", "title" => data, "artist" => data )
61
+ end
62
+
63
+ def test_big_tags
64
+ data = "a"*60000
65
+ tag_test("big_tags", "title" => data, "artist" => data )
66
+ end
67
+
68
+ def tag_test(test_name, tag)
69
+ @fixtures.each do |codec, tempfile|
70
+ OggInfo.open(tempfile) do |ogg|
71
+ ogg.tag.clear
72
+ tag.each { |k,v| ogg.tag[k] = v }
73
+ end
74
+
75
+ OggInfo.open(tempfile) do |ogg|
76
+ assert_equal tag, ogg.tag
77
+ end
78
+ FileUtils.cp(tempfile, "/tmp/test_#{RUBY_VERSION}_#{test_name}.ogg")
79
+ assert_nothing_raised do
80
+ io = open(tempfile)
81
+ reader = Ogg::Reader.new(io)
82
+ reader.each_pages do |page|
83
+ page
84
+ end
85
+ end
86
+ end
87
+ end
88
+
89
+ def test_unicode_support
90
+ @fixtures.each do |codec, tempfile|
91
+ filename = "fichier éé.#{codec}"
92
+ FileUtils.cp(tempfile, filename)
93
+ begin
94
+ OggInfo.open(tempfile) do |ogg|
95
+ ogg.tag.artist = "artistéoo"
96
+ ogg.tag.title = "a"*200
97
+ end
98
+ ensure
99
+ FileUtils.rm_f(filename)
100
+ end
101
+ end
102
+ end
103
+
48
104
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-ogginfo
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.7'
4
+ version: 0.7.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Guillaume Pierronnet