-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathJungle_Beat_test.rb
56 lines (43 loc) · 1.19 KB
/
Jungle_Beat_test.rb
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
50
51
52
53
54
55
56
require "minitest/autorun"
require "minitest/pride"
require "./Jungle_Beat"
require 'pry'
class JungleBeatTest < Minitest::Test
def test_jungle_beat_class_creates_new_list
jb = JungleBeat.new
assert_equal LinkedList, jb.list.class
end
def test_append_multi_word_string_works_on_empty_list
jb = JungleBeat.new
jb.append("boop bop beep")
result = jb.list.head.data
result_two = jb.list.head.next_node.data
result_three = jb.list.find_tail.data
assert_equal 3, jb.count
assert_equal "boop", result
assert_equal "bop", result_two
assert_equal "beep", result_three
end
def test_play_method_returns_beat
jb = JungleBeat.new
jb.append("ding dah oom oom ding oom oom oom ding dah oom oom ding dah oom oom ding dah oom oom")
jb.play
end
def test_give_me_a_four
jb = JungleBeat.new
jb.append("Tess, please give me a four")
jb.voice = "Alice"
jb.rate = 50
jb.play
end
def test_voice_rate_resets_work
jb = JungleBeat.new
jb.append("final test for jungle beats")
jb.voice = "Alice"
jb.rate = 50
jb.reset_rate
jb.reset_voice
assert_equal 400, jb.rate
assert_equal "Boing", jb.voice
end
end