예제 #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
class TestInterestedPartyForAgreementDictionaryEncoding(unittest.TestCase):
    def setUp(self):
        self._decoder = InterestedPartyForAgreementDictionaryDecoder()

    def test_encoded(self):
        data = {}

        data['record_type'] = 'IPA'
        data['transaction_sequence_n'] = 3
        data['record_sequence_n'] = 15
        data['ip_n'] = 'IP123'
        data['ip_last_name'] = 'LAST NAME'
        data['agreement_role_code'] = 'AS'
        data['ip_writer_first_name'] = 'FIRST NAME'
        data['ipi_name_n'] = 250165006
        data['ipi_base_n'] = 'I-000000229-7'
        data['pr_society'] = 1
        data['pr_share'] = 50.1
        data['mr_society'] = 2
        data['mr_share'] = 50.2
        data['sr_society'] = 3
        data['sr_share'] = 50.3

        record = self._decoder.decode(data)

        self.assertEqual('IPA', record.record_type)
        self.assertEqual(3, record.transaction_sequence_n)
        self.assertEqual(15, record.record_sequence_n)
        self.assertEqual('IP123', record.ip_n)
        self.assertEqual('LAST NAME', record.ip_last_name)
        self.assertEqual('AS', record.agreement_role_code)
        self.assertEqual('FIRST NAME', record.ip_writer_first_name)
        self.assertEqual(250165006, record.ipi_name_n)
        self.assertEqual(1, record.pr_society)
        self.assertEqual(50.1, record.pr_share)
        self.assertEqual(2, record.mr_society)
        self.assertEqual(50.2, record.mr_share)
        self.assertEqual(3, record.sr_society)
        self.assertEqual(50.3, record.sr_share)

        self.assertEqual('I-000000229-7', record.ipi_base_n)
 def setUp(self):
     self._decoder = InterestedPartyForAgreementDictionaryDecoder()