def test_rank_for_finder(self): rep = repertoire.Repertoire() rep.songs = [ music.LeadSheet(songs.TUNE_UP), music.LeadSheet(songs.ALL_BLUES) ] ranked = rep.rank_for_finder(finders.Find251s) self.assertEqual(1, len(ranked))
def test_title_set(self): raw = """ title: Dominant Cycle --- A7 | D7 | G7 """ sheet = music.LeadSheet(raw) self.assertEqual('Dominant Cycle', sheet.title)
def test_find(self): sheet = music.LeadSheet("E-7 A7 | A-7 D7 | D-7 G7 | CM7 ") finder = finders.Find51s(sheet) count, instances = finder.find() self.assertEqual(1, count)
def test_timesig_set(self): raw = """ timesig: 3/4 --- A-7 | D7 | G7 """ sheet = music.LeadSheet(raw) self.assertEqual('3/4', sheet.timesig)
def test_repr_no_title(self): raw = """ A7 | D7 | G7 | C7 F7 | Bb7 | Eb7 | Ab7 """ expected = """[[A7], [D7], [G7], [C7, F7]] [[Bb7], [Eb7], [Ab7]]""" sheet = music.LeadSheet(raw) self.assertEqual(expected, sheet.__repr__())
def test_repr(self): raw = """ title: Dominant Cycle --- A7 | D7 | G7 | C7 F7 | Bb7 | Eb7 | Ab7 """ expected = """Dominant Cycle [[A7], [D7], [G7], [C7, F7]] [[Bb7], [Eb7], [Ab7]]""" sheet = music.LeadSheet(raw) self.assertEqual(expected, sheet.__repr__())
def test_expands_successive_repeats(self): raw = "A-7 | % | % |" sheet = music.LeadSheet(raw) self.assertEqual('A', sheet.bars[2].chords[0].root)
def test_expands_repeats(self): raw = "B-7 | % |" sheet = music.LeadSheet(raw) self.assertEqual('B', sheet.bars[1].chords[0].root)
def test_expands_repeats_with_alternate_blocks(self): raw = "{ D-7 | G7 | CM7 | [ % ][ E-7 A7 ]|}" sheet = music.LeadSheet(raw) self.assertEqual('C', sheet.bars[3].chords[0].root) self.assertEqual('E', sheet.bars[7].chords[0].root) self.assertEqual('A', sheet.bars[7].chords[1].root)
def test_expands_section_repeats(self): raw = "{ D-7 | G7 | CM7 | % |}" sheet = music.LeadSheet(raw) self.assertEqual(8, len(list([k for k in sheet])))
def test_set_beats(self): raw = "A-7 | D7 | G7" sheet = music.LeadSheet(raw) self.assertEqual(12, sheet.beats)
def test_default_timesig(self): raw = "A-7 | D7 | G7" sheet = music.LeadSheet(raw) self.assertEqual('4/4', sheet.timesig)