示例#1
0
 def test_Get_OutOfRange_Pitch_Max(self):
     p = PythagoreanTuning()
     with self.assertRaises(ValueError) as ex:
         p.GetFrequency(12, 5)
     self.assertIn(
         f'引数pitchClassは{PitchClass.Min}〜{PitchClass.Max}までの整数値にしてください。',
         str(ex.exception))
示例#2
0
 def test_Get_AllOctave_432(self):
     f = FundamentalTone(hz=432, pitchClass=9, octaveClass=5)
     p = PythagoreanTuning(f)
     for octave in range(10 + 1):
         hz = p.GetFrequency(9, octave)
         self.assertEqual(math.floor(432 * pow(2, octave - 5)),
                          math.floor(hz))
示例#3
0
 def test_Get(self):
     f = FundamentalTone(hz=440, pitchClass=9, octaveClass=5)
     p = PythagoreanTuning(f)
     for pitch in range(PitchClass.Max + 1):
         hz = p.GetFrequency(pitch, 5)
         print(hz)
         if 9 == pitch: self.assertEqual(440, math.floor(hz))
示例#4
0
    def test_Get_OutOfRange_Octave_Max(self):
        p = PythagoreanTuning()
        with self.assertRaises(ValueError) as ex:
            p.GetFrequency(9, 11)


#        self.assertIn('ノート番号が0〜127の範囲外になりました。', str(ex.exception))
        self.assertIn('引数octaveは0〜10の値にしてください。', str(ex.exception))
示例#5
0
    def test_Get_Invalid_Type_OctaveClass(self):
        p = PythagoreanTuning()
        with self.assertRaises(TypeError) as ex:
            p.GetFrequency(9, 'octave')
#        self.assertIn('引数pitchClass, relativeOctaveはint型にしてください。', str(ex.exception))
        self.assertIn('引数octaveはint型にしてください。', str(ex.exception))