def test_enrich_with_lookup(self):
        '''
        Tests updating codes with the current config
        '''
        from build import TYPES as TYPES, read_file, enrich_data
        DATA = {
            'cm':{
                'fakeid1':{
                    'CMTE_TP':'S',
                    'CMTE_DSGN':'P',
                    'CMTE_PTY_AFFILIATION':'IGR',
                    'CMTE_FILING_FREQ':'W',
                    'ORG_TP':'',
                    'CAND_ID':'cn2'
                    },
                'cm1':{
                    'cn_1':3,
                    'cn_2':'cm-two',
                    'CAND_ID': 'cn1'
                },
                'cm2':{
                    'cn_1':4,
                    'cn_2':'cm-three',
                    'CAND_ID': 'cn5' #Missing
                }},
            'cn': {
                'cn1':{
                    'cn_1':1,
                    'cn_2':'cn-two',
                },
                'cn2':{
                    'cn_1':2,
                    'cn_2':'cn-three'}
                }
            }

        DMAP = {
            'CMTE_ID': {'d': 'cm'},
            'CAND_ID': {'d': 'cn'},
            'cn_lookup':{'d':'cn'},
            'cm_lookup': {'d':'cm'}
            }


        enrich_data('cm', data=DATA,dmap=DMAP)
        self.assertEqual(DATA['cm']['fakeid1']['CMTE_TP'], 'Senate')
        self.assertEqual(DATA['cm']['fakeid1']['CMTE_DSGN'], 'Principal campaign committee of a candidate')
        self.assertEqual(DATA['cm']['fakeid1']['CMTE_PTY_AFFILIATION'], 'Independent Green')
        self.assertEqual(DATA['cm']['fakeid1']['CMTE_FILING_FREQ'], 'Waived')
        self.assertEqual(DATA['cm']['fakeid1']['ORG_TP'], '')
 def test_data_replace3(self):
     '''
     Tests updating codes with the current config
     '''
     from build import TYPES as TYPES, read_file, enrich_data
     DATA = {
         'cn':{
             'fakeid1':{
                 'CAND_PTY_AFFILIATION':'IGR',
                 'CAND_OFFICE': 'H',
                 'CAND_ICI' : 'I',
                 'CAND_STATUS': 'P'
                 }
             }
         }
     enrich_data('cn', data=DATA)
     self.assertEqual(DATA['cn']['fakeid1']['CAND_PTY_AFFILIATION'], 'Independent Green')
     self.assertEqual(DATA['cn']['fakeid1']['CAND_OFFICE'], 'House')
     self.assertEqual(DATA['cn']['fakeid1']['CAND_ICI'], 'Incumbent')
     self.assertEqual(DATA['cn']['fakeid1']['CAND_STATUS'], 'Statutory candidate in prior cycle')
 def test_data_replace2(self):
     '''
     Tests updating codes with the current config
     '''
     from build import TYPES as TYPES, read_file, enrich_data
     DATA = {
         'cm':{
             'fakeid1':{
                 'CMTE_TP':'S',
                 'CMTE_DSGN':'P',
                 'CMTE_PTY_AFFILIATION':'IGR',
                 'CMTE_FILING_FREQ':'W',
                 'ORG_TP':''
                 }
             }
         }
     enrich_data('cm', data=DATA)
     self.assertEqual(DATA['cm']['fakeid1']['CMTE_TP'], 'Senate')
     self.assertEqual(DATA['cm']['fakeid1']['CMTE_DSGN'], 'Principal campaign committee of a candidate')
     self.assertEqual(DATA['cm']['fakeid1']['CMTE_PTY_AFFILIATION'], 'Independent Green')
     self.assertEqual(DATA['cm']['fakeid1']['CMTE_FILING_FREQ'], 'Waived')
     self.assertEqual(DATA['cm']['fakeid1']['ORG_TP'], '')
 def test_data_replace(self):
     '''
     Tests updating codes with the current config
     '''
     from build import TYPES as TYPES, read_file, enrich_data
     DATA = {
         'cm':{
             'fakeid1':{
                 'CMTE_TP':'H',
                 'CMTE_DSGN':'A',
                 'CMTE_PTY_AFFILIATION':'IGR',
                 'CMTE_FILING_FREQ':'M',
                 'ORG_TP':'C'
                 }
             }
         }
     enrich_data('cm', data=DATA)
     self.assertEqual(DATA['cm']['fakeid1']['CMTE_TP'], 'House')
     self.assertEqual(DATA['cm']['fakeid1']['CMTE_DSGN'], 'Authorized by a candidate')
     self.assertEqual(DATA['cm']['fakeid1']['CMTE_PTY_AFFILIATION'], 'Independent Green')
     self.assertEqual(DATA['cm']['fakeid1']['CMTE_FILING_FREQ'], 'Monthly filer')
     self.assertEqual(DATA['cm']['fakeid1']['ORG_TP'], 'Corporation')