def extract_record(self, record, values): fields = { 'contact': lambda r: extract_value(r, 'contact', 'name'), 'contact_email': lambda r: r.contact_email, 'contact_phone': lambda r: r.contact_phone, 'communication_type': lambda r: r.contact_type, 'created_on': lambda r: r.created_on, 'created_by': lambda r: extract_value(r, 'created_by', 'email'), 'date_time': lambda r: r.date_time, 'job_applications': lambda r: r.job_applications, 'job_hires': lambda r: r.job_hires, 'job_id': lambda r: r.job_id, 'job_interviews': lambda r: r.job_interviews, 'last_action_time': lambda r: r.last_action_time, 'length': lambda r: r.length, 'location': lambda r: r.location, 'notes': lambda r: self.normalize_html(r.notes), 'partner': lambda r: extract_value(r, 'partner', 'name'), 'subject': lambda r: r.subject, 'tags': lambda r: extract_tags(r.tags), } if values: return_values = values else: return_values = fields.keys() return { k: v(record) for k, v in fields.iteritems() if k in return_values }
def extract_record(self, record, values): """Translate from a query set record to a dictionary.""" fields = { 'name': lambda r: r.name, 'partner': lambda r: extract_value(r, 'partner', 'name'), 'email': lambda r: r.email, 'phone': lambda r: r.phone, 'notes': lambda r: r.notes, 'locations': lambda r: [{ 'city': l.city, 'state': l.state } for l in r.locations.all()], 'date': lambda r: r.last_action_time, 'tags': lambda r: extract_tags(r.tags.all()), } if values: return_values = values else: return_values = fields.keys() return { k: v(record) for k, v in fields.iteritems() if k in return_values }
def extract_record(self, record, values): """Translate from a query set record to a dictionary.""" fields = { 'name': lambda r: r.name, 'partner': lambda r: extract_value(r, 'partner', 'name'), 'email': lambda r: r.email, 'phone': lambda r: r.phone, 'notes': lambda r: r.notes, 'locations': lambda r: [ {'city': l.city, 'state': l.state} for l in r.locations.all() ], 'date': lambda r: r.last_action_time, 'tags': lambda r: extract_tags(r.tags.all()), } if values: return_values = values else: return_values = fields.keys() return { k: v(record) for k, v in fields.iteritems() if k in return_values }
def test_extract_tag_list(self): """Should grab only the names from the list.""" tag_list = [ MockTag(1, 'TagA', '#aaaaaa'), MockTag(2, 'TagB', '#bbbbbb'), ] result = extract_tags(MockQuerySet(data=tag_list)) expected = [ {'id': 1, 'name': 'TagA', 'hex_color': '#aaaaaa'}, {'id': 2, 'name': 'TagB', 'hex_color': '#bbbbbb'}, ] self.assertEqual(expected, result)
def extract_record(self, record): """Translate from a query set record to a dictionary.""" return { 'name': record.name, 'partner': record.partner.name, 'email': record.email, 'phone': record.phone, 'notes': record.notes, 'locations': [ {'city': l.city, 'state': l.state} for l in record.locations.all() ], 'date': record.last_action_time, 'tags': extract_tags(record.tags.all()), }
def extract_record(self, record): return { 'contact': record.contact.name, 'contact_email': record.contact_email, 'contact_phone': record.contact_phone, 'communication_type': record.contact_type, 'created_on': record.created_on, 'created_by': self.extract_user_email(record.created_by), 'date_time': record.date_time, 'job_applications': record.job_applications, 'job_hires': record.job_hires, 'job_id': record.job_id, 'job_interviews': record.job_interviews, 'last_action_time': record.last_action_time, 'length': record.length, 'location': record.location, 'notes': record.notes, 'partner': record.partner.name, 'subject': record.subject, 'tags': extract_tags(record.tags.all()), }
def test_extract_tag_list(self): """Should grab only the names from the list.""" tag_list = [ MockTag(1, 'TagA', '#aaaaaa'), MockTag(2, 'TagB', '#bbbbbb'), ] result = extract_tags(MockQuerySet(data=tag_list)) expected = [ { 'id': 1, 'name': 'TagA', 'hex_color': '#aaaaaa' }, { 'id': 2, 'name': 'TagB', 'hex_color': '#bbbbbb' }, ] self.assertEqual(expected, result)