blob: 0e89b8b7c9db4b1cb9fde1a6aa1f97ee7ce9c02d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
require 'ruby2d'
RSpec.describe Ruby2D::Music do
describe "#new" do
it "raises exception if audio file doesn't exist" do
expect { Music.new('bad_music.mp3') }.to raise_error(Ruby2D::Error)
end
it "creates music with options" do
mus = Music.new('test/media/music.mp3', loop: true)
expect(mus.path).to eq('test/media/music.mp3')
expect(mus.loop).to be true
end
end
describe "attributes" do
it "can be set and read" do
mus = Music.new('test/media/music.mp3')
expect(mus.loop).to be false
mus.loop = true
expect(mus.loop).to be true
end
end
describe "#volume" do
it "sets the volume on music instances" do
mus = Music.new('test/media/music.mp3')
expect(mus.volume).to eq(100)
mus.volume = 68
expect(mus.volume).to eq(68)
end
it "sets the volume using class methods" do
Music.volume = 27
expect(Music.volume).to eq(27)
end
it "sets volume to 0 or 100 if outside of range" do
Music.volume = 234
expect(Music.volume).to eq(100)
Music.volume = -312
expect(Music.volume).to eq(0)
Music.volume = -1
expect(Music.volume).to eq(0)
end
end
end
|