Пример #1
0
def test_FingeringNotation_02():
    event_a = modeltools.Event.objects.get(name='event__alto_saxophone__br_042.aif')
    fingering_a = event_a.fingering.get_compact_representation(
        event_a.fingering.key_names,
        event_a.fingering.instrument.key_names,
        )
    instrument_a = stringtools.to_snake_case(event_a.fingering.instrument.name)
    event_b = modeltools.Event.objects.get(name='event__alto_saxophone__br_123.aif')
    fingering_b = event_b.fingering.get_compact_representation(
        event_b.fingering.key_names,
        event_b.fingering.instrument.key_names,
        )
    instrument_b = stringtools.to_snake_case(event_b.fingering.instrument.name)
    analysis_a = assettools.FingeringNotation(event_a)
    analysis_b = assettools.FingeringNotation(event_b)
    assert analysis_a.path == os.path.join(
        sasha_configuration.get_media_path('scores'),
        'fingering__{}__{}__fingering.svg'.format(
            instrument_a,
            fingering_a,
            ),
        )
    assert analysis_b.path == os.path.join(
        sasha_configuration.get_media_path('scores'),
        'fingering__{}__{}__fingering.svg'.format(
            instrument_b,
            fingering_b,
            ),
        )
def test_LogHarmonicityAnalysis_02():
    event_a = modeltools.Event.objects.get(name="event__alto_saxophone__br_042.aif")
    event_b = modeltools.Event.objects.get(name="event__alto_saxophone__br_123.aif")
    analysis_a = assettools.LogHarmonicityAnalysis(event_a)
    analysis_b = assettools.LogHarmonicityAnalysis(event_b)
    assert analysis_a.path == os.path.join(
        sasha_configuration.get_media_path("analyses"), "event__{}.log_harmonicity".format(event_a.md5)
    )
    assert analysis_b.path == os.path.join(
        sasha_configuration.get_media_path("analyses"), "event__{}.log_harmonicity".format(event_b.md5)
    )
Пример #3
0
def test_ChordAnalysis_02():
    event_a = modeltools.Event.objects.get(name='event__alto_saxophone__br_042.aif')
    event_b = modeltools.Event.objects.get(name='event__alto_saxophone__br_123.aif')
    analysis_a = assettools.ChordAnalysis(event_a)
    analysis_b = assettools.ChordAnalysis(event_b)
    assert analysis_a.path == os.path.join(
        sasha_configuration.get_media_path('analyses'),
        'event__{}.chord'.format(event_a.md5),
        )
    assert analysis_b.path == os.path.join(
        sasha_configuration.get_media_path('analyses'),
        'event__{}.chord'.format(event_b.md5),
        )
Пример #4
0
def test_CroppedAudio_02():
    event_a = modeltools.Event.objects.get(name='event__alto_saxophone__br_042.aif')
    event_b = modeltools.Event.objects.get(name='event__alto_saxophone__br_123.aif')
    analysis_a = assettools.CroppedAudio(event_a)
    analysis_b = assettools.CroppedAudio(event_b)
    assert analysis_a.path == os.path.join(
        sasha_configuration.get_media_path('source_audio'),
        'event__{}__cropped.aif'.format(event_a.md5),
        )
    assert analysis_b.path == os.path.join(
        sasha_configuration.get_media_path('source_audio'),
        'event__{}__cropped.aif'.format(event_b.md5),
        )
Пример #5
0
def test_PartialTrackingPlot_02():
    event_a = modeltools.Event.objects.get(name='event__alto_saxophone__br_042.aif')
    event_b = modeltools.Event.objects.get(name='event__alto_saxophone__br_123.aif')
    analysis_a = assettools.PartialTrackingPlot(event_a)
    analysis_b = assettools.PartialTrackingPlot(event_b)
    assert analysis_a.path == os.path.join(
        sasha_configuration.get_media_path('plots'),
        'event__{}__partials.svg'.format(event_a.md5),
        )
    assert analysis_b.path == os.path.join(
        sasha_configuration.get_media_path('plots'),
        'event__{}__partials.svg'.format(event_b.md5),
        )
Пример #6
0
 def _path_to_lilypond_path(self, path):
     from sasha import sasha_configuration
     _, filename = os.path.split(path)
     suffixless_filename, _ = os.path.splitext(filename)
     lilypond_directory = sasha_configuration.get_media_path('lilypond')
     lilypond_filename = suffixless_filename + '.ly'
     return os.path.join(lilypond_directory, lilypond_filename)
Пример #7
0
 def _build_path(self):
     from sasha import sasha_configuration
     name = str(self.client.canonical_event_name)
     if self.asset_label:
         name += '__{}'.format(self.asset_label)
     if self.file_suffix:
         name += '.{}'.format(self.file_suffix)
     media_path = sasha_configuration.get_media_path(self.media_type)
     build_path = os.path.join(media_path, name)
     return build_path
 def test___init__(self):
     event_a = modeltools.Event.objects.get(
         name='event__alto_saxophone__br_042.aif')
     event_b = modeltools.Event.objects.get(
         name='event__alto_saxophone__br_123.aif')
     analysis_a = assettools.LinearSpectrumAnalysis(event_a)
     analysis_b = assettools.LinearSpectrumAnalysis(event_b)
     self.assertEqual(
         analysis_a.path,
         os.path.join(
             sasha_configuration.get_media_path('analyses'),
             'event__{}.linear_spectrum'.format(event_a.md5),
             ),
         )
     self.assertEqual(
         analysis_b.path,
         os.path.join(
             sasha_configuration.get_media_path('analyses'),
             'event__{}.linear_spectrum'.format(event_b.md5),
             ),
         )
Пример #9
0
 def get_fixtures(self, cls):
     from sasha import sasha_configuration
     cls_name = stringtools.to_snake_case(cls.__name__)
     fixtures_path = os.path.join(
         sasha_configuration.get_media_path('fixtures'),
         cls_name + 's',
         #cls.__tablename__,
         )
     fixture_file_names = os.listdir(fixtures_path)
     fixture_file_names = (
         _ for _ in fixture_file_names
         if _.startswith(cls_name) and _.endswith('.json')
         )
     fixture_file_paths = (
         os.path.join(fixtures_path, _)
         for _ in fixture_file_names
         )
     fixtures = []
     for fixture_file_path in fixture_file_paths:
         with open(fixture_file_path, 'r') as file_pointer:
             fixture = json.load(file_pointer)
         fixtures.append(fixture)
     return fixtures
Пример #10
0
 def path(self):
     from sasha import sasha_configuration
     media_path = sasha_configuration.get_media_path(self.media_type)
     asset_path = os.path.join(media_path, self.client.name)
     return asset_path