Example #1
0
 def test_tie_2notes(self):
     voice = self.score.voice11
     n1 = Note.new_from_string("c'4")
     n2 = Note.new_from_string("c'8")
     voice.append(n1)
     voice.append(n2)
     voice.tie([n1, n2])
Example #2
0
 def test_relative(self):
     s = r"\staff\relative d'{ d f }"
     score = parse_to_score_object(s)
     self.assertEquals(score.voice11.m_tdict[Rat(0, 1)]['elem'][0],
                       Note.new_from_string("d'4"))
     self.assertEquals(score.voice11.m_tdict[Rat(1, 4)]['elem'][0],
                       Note.new_from_string("f'4"))
Example #3
0
 def test_tie_2notes(self):
     voice = self.score.voice11
     n1 = Note.new_from_string("c'4")
     n2 = Note.new_from_string("c'8")
     voice.append(n1)
     voice.append(n2)
     voice.tie([n1, n2])
Example #4
0
 def test_no_chords_in_rhythm_staff(self):
     self.score.add_staff(RhythmStaff)
     self.score.voice21.append(Note.new_from_string("cis4"))
     self.assertRaises(
         Voice.NoChordsInRhythmStaffException, self.score.voice21.append,
         [Note.new_from_string("gis4"),
          Note.new_from_string("fis4")])
Example #5
0
 def test_relative(self):
     s = r"\staff\relative d'{ d f }"
     score = parse_to_score_object(s)
     self.assertEqual(score.voice11.m_tdict[Rat(0, 1)]['elem'][0],
                      Note.new_from_string("d'4"))
     self.assertEqual(score.voice11.m_tdict[Rat(1, 4)]['elem'][0],
                      Note.new_from_string("f'4"))
Example #6
0
 def test_is_bar_full(self):
     self.assertTrue(self.score.voice11.is_bar_full())
     self.score.voice11.append(Note.new_from_string("c2"))
     self.assertFalse(self.score.voice11.is_bar_full())
     self.score.voice11.append(Note.new_from_string("c4"))
     self.assertFalse(self.score.voice11.is_bar_full())
     self.score.voice11.append(Note.new_from_string("c4"))
     self.assertTrue(self.score.voice11.is_bar_full())
Example #7
0
 def test_is_bar_full(self):
     self.assertTrue(self.score.voice11.is_bar_full())
     self.score.voice11.append(Note.new_from_string("c2"))
     self.assertFalse(self.score.voice11.is_bar_full())
     self.score.voice11.append(Note.new_from_string("c4"))
     self.assertFalse(self.score.voice11.is_bar_full())
     self.score.voice11.append(Note.new_from_string("c4"))
     self.assertTrue(self.score.voice11.is_bar_full())
Example #8
0
 def test_stem_down(self):
     self.score.voice11.append(Note.new_from_string("c'8"))
     self.score.voice11.append(Note.new_from_string("c'8"), const.DOWN)
     self.assertEqual(
         self.score.voice11.m_tdict[Rat(0, 1)]['elem'].m_stemdir,
         const.BOTH)
     self.assertEqual(
         self.score.voice11.m_tdict[Rat(1, 8)]['elem'].m_stemdir,
         const.DOWN)
Example #9
0
 def test_is_last(self):
     voice = self.score.voice11
     voice.append(Note.new_from_string("c2"))
     voice.append(Note.new_from_string("d2"))
     voice.append(Note.new_from_string("f1"))
     voice.append(Note.new_from_string("g4"))
     self.assertTrue(voice.is_last(Rat(1, 2)))
     self.assertFalse(voice.is_last(Rat(0, 1)))
     self.assertTrue(voice.is_last(Rat(1, 2)))
     self.assertTrue(voice.is_last(Rat(1, 1)))
     self.assertFalse(voice.is_last(Rat(2, 1)))
Example #10
0
 def test_is_last(self):
     voice = self.score.voice11
     voice.append(Note.new_from_string("c2"))
     voice.append(Note.new_from_string("d2"))
     voice.append(Note.new_from_string("f1"))
     voice.append(Note.new_from_string("g4"))
     self.assertTrue(voice.is_last(Rat(1, 2)))
     self.assertFalse(voice.is_last(Rat(0, 1)))
     self.assertTrue(voice.is_last(Rat(1, 2)))
     self.assertTrue(voice.is_last(Rat(1, 1)))
     self.assertFalse(voice.is_last(Rat(2, 1)))
Example #11
0
 def test_beam(self):
     voice = self.score.voice11
     n1 = Note.new_from_string("c'8")
     n2 = Note.new_from_string("d'8")
     voice.append(n1)
     voice.append(n2)
     voice.beam([n1, n2])
     self.score.staff1.add_voice()
     n3 = Note.new_from_string("d'8")
     n4 = Note.new_from_string("d'8")
     self.assertRaises(Voice.NoteDontBelongHere, voice.beam, [n3, n4])
Example #12
0
 def test_add_partial_bar(self):
     self.score.add_partial_bar(Duration.new_from_string("4"), TimeSignature(4, 4))
     self.score.add_bar(None)
     self.assertEqual(self.score.m_bars[0].m_timepos, Rat(0, 1))
     self.assertEqual(self.score.m_bars[0].end(), Rat(1, 4))
     self.assertEqual(self.score.m_bars[1].m_timepos, Rat(1, 4))
     self.assertEqual(self.score.get_bar_at(Rat(0, 1)), self.score.m_bars[0])
     self.assertEqual(self.score.get_bar_at(Rat(1, 4)), self.score.m_bars[1])
     self.score.voice11.append(Note.new_from_string("c4"))
     self.score.voice11.append(Note.new_from_string("c1"))
     self.score.voice11.append(Note.new_from_string("c1"))
Example #13
0
 def test_tuplets(self):
     n1 = Note(MusicalPitch.new_from_notename("g'"),
               Duration(8, 0, Rat(2, 3)))
     n2 = Note(MusicalPitch.new_from_notename("g'"),
               Duration(8, 0, Rat(2, 3)))
     n3 = Note(MusicalPitch.new_from_notename("g'"),
               Duration(8, 0, Rat(2, 3)))
     self.score.voice11.append(n1)
     self.score.voice11.append(n2)
     self.score.voice11.append(n3)
     self.score.voice11.tuplet(Rat(2, 3), const.UP, [n1, n2, n3])
Example #14
0
 def test_beam(self):
     voice = self.score.voice11
     n1 = Note.new_from_string("c'8")
     n2 = Note.new_from_string("d'8")
     voice.append(n1)
     voice.append(n2)
     voice.beam([n1, n2])
     self.score.staff1.add_voice()
     n3 = Note.new_from_string("d'8")
     n4 = Note.new_from_string("d'8")
     self.assertRaises(Voice.NoteDontBelongHere, voice.beam, [n3, n4])
Example #15
0
 def test_midigen_tie(self):
     n1 = Note.new_from_string("c4")
     n2 = Note.new_from_string("c4")
     n3 = Note.new_from_string("c4")
     n4 = Note.new_from_string("d4")
     self.score.voice11.append(n1)
     self.score.voice11.append(n2)
     self.score.voice11.append(n3)
     self.score.voice11.append(n4)
     self.score.voice11.tie([n1, n2, n3])
     t = mpd.score_to_tracks(self.score)
     self.assertEqual(t[0].str_repr(), "n48 d3/4 o48 n50 d1/4 o50")
Example #16
0
 def test_midigen_tie(self):
     n1 = Note.new_from_string("c4")
     n2 = Note.new_from_string("c4")
     n3 = Note.new_from_string("c4")
     n4 = Note.new_from_string("d4")
     self.score.voice11.append(n1)
     self.score.voice11.append(n2)
     self.score.voice11.append(n3)
     self.score.voice11.append(n4)
     self.score.voice11.tie([n1, n2, n3])
     t = mpd.score_to_tracks(self.score)
     self.assertEqual(t[0].str_repr(), "n48 d3/4 o48 n50 d1/4 o50")
Example #17
0
 def test_transpose(self):
     s = r"\staff\transpose d'{ c d }"
     score = parse_to_score_object(s)
     self.assertEquals(score.voice11.m_tdict[Rat(0, 1)]['elem'][0],
                       Note.new_from_string("d4"))
     self.assertEquals(score.voice11.m_tdict[Rat(1, 4)]['elem'][0],
                       Note.new_from_string("e4"))
     s = r"\staff\transpose d''{ c d }"
     score = parse_to_score_object(s)
     self.assertEquals(score.voice11.m_tdict[Rat(0, 1)]['elem'][0],
                       Note.new_from_string("d'4"))
     self.assertEquals(score.voice11.m_tdict[Rat(1, 4)]['elem'][0],
                       Note.new_from_string("e'4"))
Example #18
0
 def test_transpose(self):
     s = r"\staff\transpose d'{ c d }"
     score = parse_to_score_object(s)
     self.assertEqual(score.voice11.m_tdict[Rat(0, 1)]['elem'][0],
                      Note.new_from_string("d4"))
     self.assertEqual(score.voice11.m_tdict[Rat(1, 4)]['elem'][0],
                      Note.new_from_string("e4"))
     s = r"\staff\transpose d''{ c d }"
     score = parse_to_score_object(s)
     self.assertEqual(score.voice11.m_tdict[Rat(0, 1)]['elem'][0],
                      Note.new_from_string("d'4"))
     self.assertEqual(score.voice11.m_tdict[Rat(1, 4)]['elem'][0],
                      Note.new_from_string("e'4"))
Example #19
0
 def test_add_partial_bar(self):
     self.score.add_partial_bar(Duration.new_from_string("4"),
                                TimeSignature(4, 4))
     self.score.add_bar(None)
     self.assertEqual(self.score.m_bars[0].m_timepos, Rat(0, 1))
     self.assertEqual(self.score.m_bars[0].end(), Rat(1, 4))
     self.assertEqual(self.score.m_bars[1].m_timepos, Rat(1, 4))
     self.assertEqual(self.score.get_bar_at(Rat(0, 1)),
                      self.score.m_bars[0])
     self.assertEqual(self.score.get_bar_at(Rat(1, 4)),
                      self.score.m_bars[1])
     self.score.voice11.append(Note.new_from_string("c4"))
     self.score.voice11.append(Note.new_from_string("c1"))
     self.score.voice11.append(Note.new_from_string("c1"))
Example #20
0
 def test_repack_bar_3(self):
     """
     One note is changed from 1/4 to 1/1 length. Then we call
     bar.repack and a BarFullException is raised.
     """
     self.score.voice11.append(Note.new_from_string("c4"))
     self.score.voice11.append(Note.new_from_string("d4"))
     self.score.voice11.append(Note.new_from_string("e4"))
     self.assertEqual(sorted(self.score.voice11.m_tdict.keys()),
         [Rat(0, 1), Rat(1, 4), Rat(1, 2)])
     self.score.voice11.m_tdict[Rat(1, 4)]['elem'][0] = Note.new_from_string("g1")
     self.assertEqual(sorted(self.score.voice11.m_tdict.keys()),
         [Rat(0, 1), Rat(1, 4), Rat(1, 2)])
     self.assertRaises(Voice.BarFullException, self.bp.repack)
Example #21
0
 def test_transpose_relative(self):
     s = r"\staff\transpose d'\relative c'{ c d }"
     score = parse_to_score_object(s)
     self.assertEquals(score.voice11.m_tdict[Rat(0, 1)]['elem'][0],
                       Note.new_from_string("d'4"))
     self.assertEquals(score.voice11.m_tdict[Rat(1, 4)]['elem'][0],
                       Note.new_from_string("e'4"))
     s = r"\staff\transpose d''\relative c'{ c d e}"
     score = parse_to_score_object(s)
     self.assertEquals(score.voice11.m_tdict[Rat(0, 1)]['elem'][0],
                       Note.new_from_string("d''4"))
     self.assertEquals(score.voice11.m_tdict[Rat(1, 4)]['elem'][0],
                       Note.new_from_string("e''4"))
     self.assertEquals(score.voice11.m_tdict[Rat(1, 2)]['elem'][0],
                       Note.new_from_string("fis''4"))
Example #22
0
 def test_transpose_relative(self):
     s = r"\staff\transpose d'\relative c'{ c d }"
     score = parse_to_score_object(s)
     self.assertEqual(score.voice11.m_tdict[Rat(0, 1)]['elem'][0],
                      Note.new_from_string("d'4"))
     self.assertEqual(score.voice11.m_tdict[Rat(1, 4)]['elem'][0],
                      Note.new_from_string("e'4"))
     s = r"\staff\transpose d''\relative c'{ c d e}"
     score = parse_to_score_object(s)
     self.assertEqual(score.voice11.m_tdict[Rat(0, 1)]['elem'][0],
                      Note.new_from_string("d''4"))
     self.assertEqual(score.voice11.m_tdict[Rat(1, 4)]['elem'][0],
                      Note.new_from_string("e''4"))
     self.assertEqual(score.voice11.m_tdict[Rat(1, 2)]['elem'][0],
                      Note.new_from_string("fis''4"))
Example #23
0
 def test_repack_bar_1(self):
     """
     We delete one note, and sees that the bar is packed correctly.
     """
     self.score.voice11.append(Note.new_from_string("c4"))
     self.score.voice11.append(Note.new_from_string("d4"))
     self.score.voice11.append(Note.new_from_string("e4"))
     self.score.voice11.append(Note.new_from_string("d4"))
     self.assertEqual(sorted(self.score.voice11.m_tdict.keys()),
         [Rat(0, 1), Rat(1, 4), Rat(1, 2), Rat(3, 4)])
     del self.score.voice11.m_tdict[Rat(1, 2)]
     self.assertEqual(sorted(self.score.voice11.m_tdict.keys()),
         [Rat(0, 1), Rat(1, 4), Rat(3, 4)])
     self.bp.repack()
     self.assertEqual(sorted(self.score.voice11.m_tdict.keys()),
         [Rat(0, 1), Rat(1, 4), Rat(1, 2)])
Example #24
0
 def test_contructor(self):
     Note(MusicalPitch.new_from_notename("c'"),
          Duration.new_from_string("4."))
     self.assertRaises(AssertionError, Note, "4.",
                       MusicalPitch.new_from_notename("c'"))
     self.assertRaises(AssertionError, Note, Duration.new_from_string("4."),
                       "c'")
Example #25
0
 def test_repack_bar_3(self):
     """
     One note is changed from 1/4 to 1/1 length. Then we call
     bar.repack and a BarFullException is raised.
     """
     self.score.voice11.append(Note.new_from_string("c4"))
     self.score.voice11.append(Note.new_from_string("d4"))
     self.score.voice11.append(Note.new_from_string("e4"))
     self.assertEqual(
         sorted(self.score.voice11.m_tdict.keys()),
         [Rat(0, 1), Rat(1, 4), Rat(1, 2)])
     self.score.voice11.m_tdict[Rat(
         1, 4)]['elem'][0] = Note.new_from_string("g1")
     self.assertEqual(
         sorted(self.score.voice11.m_tdict.keys()),
         [Rat(0, 1), Rat(1, 4), Rat(1, 2)])
     self.assertRaises(Voice.BarFullException, self.bp.repack)
Example #26
0
 def test_repack_bar_2(self):
     """
     One note is changed from 1/4 to 1/2 length. Then we call
     bar.repack(voice11) and we see that the last note is moved
     further out in the bar. This works ok since the bar was not
     full. There where not Skips at the end of the bar.
     """
     self.score.voice11.append(Note.new_from_string("c4"))
     self.score.voice11.append(Note.new_from_string("d4"))
     self.score.voice11.append(Note.new_from_string("e4"))
     self.assertEqual(sorted(self.score.voice11.m_tdict.keys()),
         [Rat(0, 1), Rat(1, 4), Rat(1, 2)])
     self.score.voice11.m_tdict[Rat(1, 4)]['elem'][0] = Note.new_from_string("g2")
     self.assertEqual(sorted(self.score.voice11.m_tdict.keys()),
         [Rat(0, 1), Rat(1, 4), Rat(1, 2)])
     self.bp.repack()
     self.assertEqual(sorted(self.score.voice11.m_tdict.keys()),
         [Rat(0, 1), Rat(1, 4), Rat(3, 4)])
Example #27
0
 def test_set_clef(self):
     self.score.voice11.set_clef("violin")
     self.assertEqual(self.score.staff1.m_tdict[Rat(0, 1)]['clef'].m_name, "violin")
     self.score.voice11.set_clef("bass")
     # The last clef set is remembered
     self.assertEqual(self.score.staff1.m_tdict[Rat(0, 1)]['clef'].m_name, "bass")
     self.score.voice11.append(Note.new_from_string("c'8"))
     self.score.voice11.set_clef("treble")
     self.assertEqual(self.score.staff1.m_tdict[Rat(0, 1)]['clef'].m_name, "bass")
     self.assertEqual(self.score.staff1.m_tdict[Rat(1, 8)]['clef'].m_name, "treble")
Example #28
0
 def test_repack_bar_1(self):
     """
     We delete one note, and sees that the bar is packed correctly.
     """
     self.score.voice11.append(Note.new_from_string("c4"))
     self.score.voice11.append(Note.new_from_string("d4"))
     self.score.voice11.append(Note.new_from_string("e4"))
     self.score.voice11.append(Note.new_from_string("d4"))
     self.assertEqual(
         sorted(self.score.voice11.m_tdict.keys()),
         [Rat(0, 1), Rat(1, 4), Rat(1, 2),
          Rat(3, 4)])
     del self.score.voice11.m_tdict[Rat(1, 2)]
     self.assertEqual(
         sorted(self.score.voice11.m_tdict.keys()),
         [Rat(0, 1), Rat(1, 4), Rat(3, 4)])
     self.bp.repack()
     self.assertEqual(
         sorted(self.score.voice11.m_tdict.keys()),
         [Rat(0, 1), Rat(1, 4), Rat(1, 2)])
Example #29
0
 def setUp(self):
     self.score = Score()
     self.staff = self.score.add_staff()
     v = self.score.voice11
     v.append(Note.new_from_string("c'4"))
     v.append(Note.new_from_string("d'2"))
     v.append(Note.new_from_string("c'4"))
     v.append(Note.new_from_string("c'4"))
     v.append(Note.new_from_string("c'4"))
     v.append(Note.new_from_string("c'4"))
     v.append(Note.new_from_string("c'4"))
Example #30
0
 def test_repack_bar_2(self):
     """
     One note is changed from 1/4 to 1/2 length. Then we call
     bar.repack(voice11) and we see that the last note is moved
     further out in the bar. This works ok since the bar was not
     full. There where not Skips at the end of the bar.
     """
     self.score.voice11.append(Note.new_from_string("c4"))
     self.score.voice11.append(Note.new_from_string("d4"))
     self.score.voice11.append(Note.new_from_string("e4"))
     self.assertEqual(
         sorted(self.score.voice11.m_tdict.keys()),
         [Rat(0, 1), Rat(1, 4), Rat(1, 2)])
     self.score.voice11.m_tdict[Rat(
         1, 4)]['elem'][0] = Note.new_from_string("g2")
     self.assertEqual(
         sorted(self.score.voice11.m_tdict.keys()),
         [Rat(0, 1), Rat(1, 4), Rat(1, 2)])
     self.bp.repack()
     self.assertEqual(
         sorted(self.score.voice11.m_tdict.keys()),
         [Rat(0, 1), Rat(1, 4), Rat(3, 4)])
Example #31
0
 def test_get_timeposes_of(self):
     self.score.add_bar(TimeSignature(4, 4))
     self.score.add_bar(TimeSignature(4, 4))
     self.assertEqual(
         self.score.voice11.get_timeposes_of(self.score.m_bars[0]), [])
     self.assertEqual(
         self.score.voice11.get_timeposes_of(self.score.m_bars[1]), [])
     self.score.voice11.append(Note.new_from_string("c4"))
     self.assertEqual(
         self.score.voice11.get_timeposes_of(self.score.m_bars[0]),
         [Rat(0, 1)])
     self.assertEqual(
         self.score.voice11.get_timeposes_of(self.score.m_bars[1]), [])
Example #32
0
 def test_bar_fill_skips(self):
     n1 = Note(MusicalPitch.new_from_notename("g'"), Duration(4, 0))
     self.score.voice11.append(n1)
     self.score.voice11.append(Rest(Duration.new_from_string("4")))
     self.bp.fill_skips()
     self.assertTrue(
         isinstance(self.score.voice11.m_tdict[Rat(0, 1)]['elem'][0], Note))
     self.assertTrue(
         isinstance(self.score.voice11.m_tdict[Rat(1, 4)]['elem'][0], Rest))
     self.assertTrue(
         isinstance(self.score.voice11.m_tdict[Rat(1, 2)]['elem'][0], Skip))
     self.assertTrue(
         isinstance(self.score.voice11.m_tdict[Rat(3, 4)]['elem'][0], Skip))
Example #33
0
 def test_get_timeposes_of(self):
     self.score.add_bar(TimeSignature(4, 4))
     self.score.add_bar(TimeSignature(4, 4))
     self.assertEqual(
         self.score.voice11.get_timeposes_of(self.score.m_bars[0]), [])
     self.assertEqual(
         self.score.voice11.get_timeposes_of(self.score.m_bars[1]), [])
     self.score.voice11.append(Note.new_from_string("c4"))
     self.assertEqual(
         self.score.voice11.get_timeposes_of(self.score.m_bars[0]),
         [Rat(0, 1)])
     self.assertEqual(
         self.score.voice11.get_timeposes_of(self.score.m_bars[1]), [])
Example #34
0
 def setUp(self):
     self.score = Score()
     self.staff = self.score.add_staff()
     v = self.score.voice11
     v.append(Note.new_from_string("c'4"))
     v.append(Note.new_from_string("d'2"))
     v.append(Note.new_from_string("c'4"))
     v.append(Note.new_from_string("c'4"))
     v.append(Note.new_from_string("c'4"))
     v.append(Note.new_from_string("c'4"))
     v.append(Note.new_from_string("c'4"))
Example #35
0
 def test_set_clef(self):
     self.score.voice11.set_clef("violin")
     self.assertEqual(self.score.staff1.m_tdict[Rat(0, 1)]['clef'].m_name,
                      "violin")
     self.score.voice11.set_clef("bass")
     # The last clef set is remembered
     self.assertEqual(self.score.staff1.m_tdict[Rat(0, 1)]['clef'].m_name,
                      "bass")
     self.score.voice11.append(Note.new_from_string("c'8"))
     self.score.voice11.set_clef("treble")
     self.assertEqual(self.score.staff1.m_tdict[Rat(0, 1)]['clef'].m_name,
                      "bass")
     self.assertEqual(self.score.staff1.m_tdict[Rat(1, 8)]['clef'].m_name,
                      "treble")
Example #36
0
 def test_add_note(self):
     self.score.voice11.append(Note.new_from_string("c'4"))
     self.score.voice11.append(Note.new_from_string("c'2"))
     self.score.voice11.append(Note.new_from_string("c'8"))
     self.assertIsInstance(self.score.voice11.m_tdict[Rat(0, 1)]['elem'][0], Note)
     self.assertIsInstance(self.score.voice11.m_tdict[Rat(0, 1)]['elem'][0].w_parent(), Stem)
     self.assertIsInstance(self.score.voice11.m_tdict[Rat(0, 1)]['elem'][0].w_parent().w_parent(), Voice)
     # bar full:
     self.assertRaises(Voice.BarFullException, self.score.voice11.append,
         Note.new_from_string("c'4"))
     self.score.voice11.append(Note.new_from_string("c'8"))
     self.score.voice11.append([
         Note.new_from_string("c'1"),
         Note.new_from_string("e'1"),
         Note.new_from_string("g'1"),
     ])
Example #37
0
 def test_add_note(self):
     self.score.voice11.append(Note.new_from_string("c'4"))
     self.score.voice11.append(Note.new_from_string("c'2"))
     self.score.voice11.append(Note.new_from_string("c'8"))
     self.assertIsInstance(self.score.voice11.m_tdict[Rat(0, 1)]['elem'][0],
                           Note)
     self.assertIsInstance(
         self.score.voice11.m_tdict[Rat(0, 1)]['elem'][0].w_parent(), Stem)
     self.assertIsInstance(
         self.score.voice11.m_tdict[Rat(
             0, 1)]['elem'][0].w_parent().w_parent(), Voice)
     # bar full:
     self.assertRaises(Voice.BarFullException, self.score.voice11.append,
                       Note.new_from_string("c'4"))
     self.score.voice11.append(Note.new_from_string("c'8"))
     self.score.voice11.append([
         Note.new_from_string("c'1"),
         Note.new_from_string("e'1"),
         Note.new_from_string("g'1"),
     ])
Example #38
0
 def test_new_from_string(self):
     Note.new_from_string("c'4.")
     self.assertRaises(InvalidNotenameException, Note.new_from_string, "x")
Example #39
0
 def test_midigen_rest(self):
     self.score.voice11.append(Note.new_from_string("c4"))
     self.score.voice11.append(Rest(Duration.new_from_string("4")))
     self.score.voice11.append(Note.new_from_string("c4"))
     t = mpd.score_to_tracks(self.score)
     self.assertEqual(t[0].str_repr(), "n48 d1/4 o48 d1/4 n48 d1/4 o48")
Example #40
0
 def test_single_tuplet(self):
     n1 = Note(MusicalPitch.new_from_notename("g'"),
               Duration(8, 0, Rat(2, 3)))
     self.score.voice11.append(n1)
     self.score.voice11.tuplet(Rat(2, 3), const.UP, [n1])
     self.assertEqual(n1.w_parent().m_tupletinfo, 'end')
Example #41
0
 def test_stem_down(self):
     self.score.voice11.append(Note.new_from_string("c'8"))
     self.score.voice11.append(Note.new_from_string("c'8"), const.DOWN)
     self.assertEqual(self.score.voice11.m_tdict[Rat(0, 1)]['elem'].m_stemdir, const.BOTH)
     self.assertEqual(self.score.voice11.m_tdict[Rat(1, 8)]['elem'].m_stemdir, const.DOWN)
Example #42
0
 def test_no_chords_in_rhythm_staff(self):
     self.score.add_staff(RhythmStaff)
     self.score.voice21.append(Note.new_from_string("cis4"))
     self.assertRaises(Voice.NoChordsInRhythmStaffException,
             self.score.voice21.append,
             [Note.new_from_string("gis4"), Note.new_from_string("fis4")])
Example #43
0
 def test_midigen_rest(self):
     self.score.voice11.append(Note.new_from_string("c4"))
     self.score.voice11.append(Rest(Duration.new_from_string("4")))
     self.score.voice11.append(Note.new_from_string("c4"))
     t = mpd.score_to_tracks(self.score)
     self.assertEqual(t[0].str_repr(), "n48 d1/4 o48 d1/4 n48 d1/4 o48")
Example #44
0
 def test_new_from_string(self):
     Note.new_from_string("c'4.")
     self.assertRaises(InvalidNotenameException, Note.new_from_string, "x")
Example #45
0
 def test_single_tuplet(self):
     n1 = Note(MusicalPitch.new_from_notename("g'"),
               Duration(8, 0, Rat(2, 3)))
     self.score.voice11.append(n1)
     self.score.voice11.tuplet(Rat(2, 3), const.UP, [n1])
     self.assertEqual(n1.w_parent().m_tupletinfo, 'end')