Esempio n. 1
0
def _default_record_decoders():
    decoders = {}

    decoders['acknowledgement'] = AcknowledgementDictionaryDecoder()
    decoders['message'] = MessageDictionaryDecoder()
    decoders['agreement'] = AgreementDictionaryDecoder()
    decoders['territory_in_agreement'] = AgreementTerritoryDictionaryDecoder()
    decoders['additional_related_information'] = \
        AdditionalRelatedInformationDictionaryDecoder()
    decoders['group_header'] = GroupHeaderDictionaryDecoder()
    decoders['group_trailer'] = GroupTrailerDictionaryDecoder()
    decoders['group_trailer_base'] = GroupTrailerDictionaryDecoder()
    decoders['group_trailer_short'] = GroupTrailerDictionaryDecoder()
    decoders['interested_party_agreement'] = \
        InterestedPartyForAgreementDictionaryDecoder()
    decoders['nra_agreement_party'] = \
        NonRomanAlphabetAgreementPartyDictionaryDecoder()
    decoders['nra_publisher_name'] = \
        NonRomanAlphabetPublisherNameDictionaryDecoder()
    decoders['nra_writer_name'] = NonRomanAlphabetWriterNameDictionaryDecoder()
    decoders['nra_title'] = NonRomanAlphabetTitleDictionaryDecoder()
    decoders['nra_performance_data'] = \
        NonRomanAlphabetPerformanceDataDictionaryDecoder()
    decoders['nra_work'] = NonRomanAlphabetWorkDictionaryDecoder()
    decoders['nra_other_writer'] = \
        NonRomanAlphabetOtherWriterDictionaryDecoder()
    decoders['publisher'] = PublisherRecordDictionaryDecoder()
    decoders['publisher_territory'] = IPTerritoryOfControlDictionaryDecoder()
    decoders['transmission_header'] = TransmissionHeaderDictionaryDecoder()
    decoders['transmission_trailer'] = TransmissionTrailerDictionaryDecoder()
    decoders['work'] = WorkDictionaryDecoder()
    decoders['work_conflict'] = WorkDictionaryDecoder()
    decoders['work_alternate_title'] = AlternateTitleDictionaryDecoder()
    decoders['entire_work_title'] = AuthoredWorkDictionaryDecoder()
    decoders['original_work_title'] = AuthoredWorkDictionaryDecoder()
    decoders['performing_artist'] = PerformingArtistDictionaryDecoder()
    decoders['recording_detail'] = RecordingDetailDictionaryDecoder()
    decoders['work_origin'] = WorkOriginDictionaryDecoder()
    decoders['instrumentation_summary'] = \
        InstrumentationSummaryDictionaryDecoder()
    decoders['instrumentation_detail'] = \
        InstrumentationDetailDictionaryDecoder()
    decoders['component'] = ComponentDictionaryDecoder()
    decoders['writer'] = WriterRecordDictionaryDecoder()
    decoders['writer_publisher'] = PublisherForWriterDictionaryDecoder()
    decoders['writer_territory'] = IPTerritoryOfControlDictionaryDecoder()
    decoders['filename_new'] = FileTagDictionaryDecoder()
    decoders['filename_old'] = FileTagDictionaryDecoder()

    return decoders
Esempio n. 2
0
class TestComponentDictionaryDecoder(unittest.TestCase):
    def setUp(self):
        self._decoder = ComponentDictionaryDecoder()

    def test_encoded(self):
        data = {}

        data['record_type'] = 'COM'
        data['transaction_sequence_n'] = 3
        data['record_sequence_n'] = 15
        data['title'] = 'TITLE'
        data['submitter_work_n'] = 'ABCD123'
        data['writer_1_last_name'] = 'LAST NAME 1'
        data['writer_1_first_name'] = 'FIRST NAME 1'
        data['writer_2_last_name'] = 'LAST NAME 2'
        data['writer_2_first_name'] = 'FIRST NAME 2'
        data['writer_1_ipi_name_n'] = 14107338
        data['writer_1_ipi_base_n'] = 'I-000000229-7'
        data['writer_2_ipi_name_n'] = 14107400
        data['writer_2_ipi_base_n'] = 'I-000000339-7'
        data['iswc'] = ISWCCode(12345678, 9)
        data['duration'] = datetime.datetime.strptime('011200',
                                                      '%H%M%S').time()

        record = self._decoder.decode(data)

        self.assertEqual('COM', record.record_type)
        self.assertEqual(3, record.transaction_sequence_n)
        self.assertEqual(15, record.record_sequence_n)
        self.assertEqual('TITLE', record.title)
        self.assertEqual('LAST NAME 1', record.writer_1_last_name)
        self.assertEqual('ABCD123', record.submitter_work_n)
        self.assertEqual('FIRST NAME 1', record.writer_1_first_name)
        self.assertEqual('FIRST NAME 2', record.writer_2_first_name)
        self.assertEqual('LAST NAME 2', record.writer_2_last_name)
        self.assertEqual('LAST NAME 2', record.writer_2_last_name)
        self.assertEqual(14107338, record.writer_1_ipi_name_n)
        self.assertEqual(14107400, record.writer_2_ipi_name_n)
        self.assertEqual(12345678, record.iswc.id_code)
        self.assertEqual(9, record.iswc.check_digit)
        self.assertEqual(
            datetime.datetime.strptime('011200', '%H%M%S').time(),
            record.duration)

        self.assertEqual('I-000000229-7', record.writer_1_ipi_base_n)

        self.assertEqual('I-000000339-7', record.writer_2_ipi_base_n)
Esempio n. 3
0
class TestComponentDictionaryDecoder(unittest.TestCase):
    def setUp(self):
        self._decoder = ComponentDictionaryDecoder()

    def test_encoded(self):
        data = {}

        data['record_type'] = 'COM'
        data['transaction_sequence_n'] = 3
        data['record_sequence_n'] = 15
        data['title'] = 'TITLE'
        data['submitter_work_n'] = 'ABCD123'
        data['writer_1_last_name'] = 'LAST NAME 1'
        data['writer_1_first_name'] = 'FIRST NAME 1'
        data['writer_2_last_name'] = 'LAST NAME 2'
        data['writer_2_first_name'] = 'FIRST NAME 2'
        data['writer_1_ipi_name_n'] = 14107338
        data['writer_1_ipi_base_n'] = 'I-000000229-7'
        data['writer_2_ipi_name_n'] = 14107400
        data['writer_2_ipi_base_n'] = 'I-000000339-7'
        data['iswc'] = ISWCCode(12345678, 9)
        data['duration'] = datetime.datetime.strptime('011200', '%H%M%S').time()

        record = self._decoder.decode(data)

        self.assertEqual('COM', record.record_type)
        self.assertEqual(3, record.transaction_sequence_n)
        self.assertEqual(15, record.record_sequence_n)
        self.assertEqual('TITLE', record.title)
        self.assertEqual('LAST NAME 1', record.writer_1_last_name)
        self.assertEqual('ABCD123', record.submitter_work_n)
        self.assertEqual('FIRST NAME 1', record.writer_1_first_name)
        self.assertEqual('FIRST NAME 2', record.writer_2_first_name)
        self.assertEqual('LAST NAME 2', record.writer_2_last_name)
        self.assertEqual('LAST NAME 2', record.writer_2_last_name)
        self.assertEqual(14107338, record.writer_1_ipi_name_n)
        self.assertEqual(14107400, record.writer_2_ipi_name_n)
        self.assertEqual(12345678, record.iswc.id_code)
        self.assertEqual(9, record.iswc.check_digit)
        self.assertEqual(datetime.datetime.strptime('011200', '%H%M%S').time(),
                         record.duration)

        self.assertEqual('I-000000229-7', record.writer_1_ipi_base_n)

        self.assertEqual('I-000000339-7', record.writer_2_ipi_base_n)
Esempio n. 4
0
 def setUp(self):
     self._decoder = ComponentDictionaryDecoder()
Esempio n. 5
0
 def setUp(self):
     self._decoder = ComponentDictionaryDecoder()