예제 #1
0
 def test_parse_tied_notes_song_item(self):
     region = as_region("~a+3q")
     parsed_item = SongItem.parse(region)
     self.assertEquals(parsed_item, Note(5, 1, duration=(3, 4), continued=True))
     region = as_region("a+3q~")
     parsed_item = SongItem.parse(region)
     self.assertEquals(parsed_item, Note(5, 1, duration=(3, 4), to_continue=True))
     region = as_region("~a+3q~")
     parsed_item = SongItem.parse(region)
     self.assertEquals(parsed_item, Note(5, 1, duration=(3, 4), to_continue=True, continued=True))
예제 #2
0
 def test_parse_tied_notes_song_item(self):
     region = as_region('~a+3q')
     parsed_item = SongItem.parse(region)
     self.assertEquals(parsed_item,
                       Note(5, 1, duration=(3, 4), continued=True))
     region = as_region('a+3q~')
     parsed_item = SongItem.parse(region)
     self.assertEquals(parsed_item,
                       Note(5, 1, duration=(3, 4), to_continue=True))
     region = as_region('~a+3q~')
     parsed_item = SongItem.parse(region)
     self.assertEquals(
         parsed_item,
         Note(5, 1, duration=(3, 4), to_continue=True, continued=True))
예제 #3
0
 def test_parse_chord_song_item(self):
     region = as_region("[:CE-G]")
     parsed_item = SongItem.parse(region)
     self.assertEquals(parsed_item.source, region)
     region = as_region("[:CE-G]")
     parsed_chord = Chord.parse(region)
     self.assertEquals(parsed_item, parsed_chord)
예제 #4
0
 def test_parse_chord_song_item(self):
     region = as_region('[:CE-G]')
     parsed_item = SongItem.parse(region)
     self.assertEquals(parsed_item.source, region)
     region = as_region('[:CE-G]')
     parsed_chord = Chord.parse(region)
     self.assertEquals(parsed_item, parsed_chord)
예제 #5
0
 def test_parse_note_song_item(self):
     region = as_region("a+'3q")
     parsed_item = SongItem.parse(region)
     region = as_region("a+'3q")
     parsed_note = Note.parse(region)
     self.assertEquals(parsed_item, parsed_note)
예제 #6
0
 def test_parse_tie_song_item(self):
     region = as_region("~")
     parsed_item = SongItem.parse(region)
     region = as_region("~")
     parsed_tie = Tie.parse(region)
     self.assertEquals(parsed_item, parsed_tie)
예제 #7
0
 def test_parse_barline_song_item(self):
     region = as_region("|")
     parsed_item = SongItem.parse(region)
     region = as_region("|")
     parsed_barline = BarLine.parse(region)
     self.assertEquals(parsed_item, parsed_barline)
예제 #8
0
 def test_parse_rest_no_duration(self):
     region = as_region("r")
     with self.parse_exception("Rest must specify duration", "r"):
         rest = SongItem.parse(region)
예제 #9
0
 def test_parse_rest_no_duration(self):
     region = as_region('r')
     with self.parse_exception('Rest must specify duration', 'r'):
         rest = SongItem.parse(region)
예제 #10
0
 def test_invalid_song_item_starts_like_note(self):
     with self.parse_exception(
             'Invalid note: "a\'wrong" (extra data "wrong")', 'wrong'):
         SongItem.parse(as_region('a\'wrong'))
예제 #11
0
 def test_invalid_song_item(self):
     with self.parse_exception("Invalid song item: 'wrong'", 'wrong'):
         SongItem.parse(as_region('wrong'))
예제 #12
0
 def test_parse_note_song_item(self):
     region = as_region('a+\'3q')
     parsed_item = SongItem.parse(region)
     region = as_region('a+\'3q')
     parsed_note = Note.parse(region)
     self.assertEquals(parsed_item, parsed_note)
예제 #13
0
 def test_parse_tie_song_item(self):
     region = as_region('~')
     parsed_item = SongItem.parse(region)
     region = as_region('~')
     parsed_tie = Tie.parse(region)
     self.assertEquals(parsed_item, parsed_tie)
예제 #14
0
 def test_parse_barline_song_item(self):
     region = as_region('|')
     parsed_item = SongItem.parse(region)
     region = as_region('|')
     parsed_barline = BarLine.parse(region)
     self.assertEquals(parsed_item, parsed_barline)
예제 #15
0
 def test_invalid_song_item(self):
     with self.parse_exception("Invalid song item: 'wrong'", "wrong"):
         SongItem.parse(as_region("wrong"))
예제 #16
0
 def test_parse_rest(self):
     region = as_region("r2.")
     rest = SongItem.parse(region)
     self.assertEquals(rest, Rest((6, 2)))
예제 #17
0
 def test_invalid_song_item_starts_like_note(self):
     with self.parse_exception('Invalid note: "a\'wrong" (extra data "wrong")', "wrong"):
         SongItem.parse(as_region("a'wrong"))
예제 #18
0
 def test_parse_rest(self):
     region = as_region('r2.')
     rest = SongItem.parse(region)
     self.assertEquals(rest, Rest((6, 2)))