def test__strip_sort_key(): """ Make sure they key used to sort data is stripped out before being sent down the pipe. """ input = { u"Editor's Circle": [ u'Alinger Account:Mark Alinger', u'Blinger Account:Mark Blinger', u'Zlinger Account:Mark Zlinger' ], u"Chairman's Circle": [ 'Bar', 'Baz', 'Foo', ] } expected = { u"Editor's Circle": [ u'Mark Alinger', u'Mark Blinger', u'Mark Zlinger' ], u"Chairman's Circle": [ 'Bar', 'Baz', 'Foo', ] } actual = _strip_sort_key(input) assert expected == actual
def generate_circle_data(): """ Create a JSON file based on current circle members that identifies the level of circle membership. Save this file to S3. """ # circle wall sf = SalesforceConnection() response = sf.query(circle_query) new_dict = _extract_and_map(argument=response, key='Text_For_Donor_Wall__c', value='Membership_Level_TT__c', sort_key='Name') intermediate = _invert_and_aggregate(new_dict) now_sorted = _sort_circle(intermediate) final = _strip_sort_key(now_sorted) json_output = json.dumps(final) push_to_s3(filename='circle-members.json', contents=json_output)