示例#1
0
    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))
示例#2
0
 def test_title_set(self):
     raw = """
     title: Dominant Cycle
     ---
     A7 | D7 | G7
     """
     sheet = music.LeadSheet(raw)
     self.assertEqual('Dominant Cycle', sheet.title)
示例#3
0
    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)
示例#4
0
 def test_timesig_set(self):
     raw = """
     timesig: 3/4
     ---
     A-7 | D7 | G7
     """
     sheet = music.LeadSheet(raw)
     self.assertEqual('3/4', sheet.timesig)
示例#5
0
    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__())
示例#6
0
    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__())
示例#7
0
 def test_expands_successive_repeats(self):
     raw = "A-7 | % | % |"
     sheet = music.LeadSheet(raw)
     self.assertEqual('A', sheet.bars[2].chords[0].root)
示例#8
0
 def test_expands_repeats(self):
     raw = "B-7 | % |"
     sheet = music.LeadSheet(raw)
     self.assertEqual('B', sheet.bars[1].chords[0].root)
示例#9
0
 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)
示例#10
0
 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])))
示例#11
0
 def test_set_beats(self):
     raw = "A-7 | D7 | G7"
     sheet = music.LeadSheet(raw)
     self.assertEqual(12, sheet.beats)
示例#12
0
 def test_default_timesig(self):
     raw = "A-7 | D7 | G7"
     sheet = music.LeadSheet(raw)
     self.assertEqual('4/4', sheet.timesig)