def test_collect_file_resources___different_types(): from StringIO import StringIO as SIO from cStringIO import StringIO as cSIO file_obj = Mock(spec=file) sio_obj = SIO('GIF89a') csio_obj = cSIO('GIF89a') request_obj = dict( folder=dict( name='mordor', pic=file_obj, hd=sio_obj, ld=csio_obj ) ) file_cid_map = _collect_file_resources(request_obj) assert type(request_obj['folder']['pic']) == str assert type(request_obj['folder']['hd']) == str assert type(request_obj['folder']['ld']) == str assert file_cid_map[extract_cid(request_obj['folder']['pic'])] == file_obj assert file_cid_map[extract_cid(request_obj['folder']['hd'])] == sio_obj assert file_cid_map[extract_cid(request_obj['folder']['ld'])] == csio_obj
def getfilename(filename, param): result = cSIO() track = cSIO() stop = False stack = [] for i in range(len(filename)): if filename[i] == '{': stop = True if not stop: result.write(filename[i]) else: track.write(filename[i]) if filename[i] == '}': stop = False pa = track.getvalue() result.write(param[pa[1:len(pa)-1]]) track = cSIO() return result.getvalue()