def METHOD_NAME(self):
    collection = Collection().createCollection('collection1', public=True)
    folder = Folder().createFolder(collection, 'folder1', parentType='collection', public=True)
    item = Item().createItem('item1', self.admin, folder)
    # Path to test files
    file1Path = os.path.join(self.filesDir, 'txt1.txt')
    file2Path = os.path.join(self.filesDir, 'txt2.txt')
    # Upload files to item
    with open(file1Path, 'rb') as fp:
        file1 = Upload().uploadFromFile(
            fp, os.path.getsize(file1Path), 'txt1.txt', parentType='item',
            parent=item, user=self.admin)
    with open(file2Path, 'rb') as fp:
        file2 = Upload().uploadFromFile(
            fp, os.path.getsize(file2Path), 'txt2.txt', mimeType='image/jpeg',
            parentType='item', parent=item, user=self.admin)
    # Download item and its files several times and ensure downloads are recorded
    # Each file is downloaded 10 times
    for _ in range(0, 5):
        self._downloadItem(item['_id'])
        self._downloadFile(file1['_id'])
        self._downloadFile(file2['_id'])
    # Download each file 1 time by downloading parent folder
    self._downloadFolder(folder['_id'])
    # Download each file over 2 requests
    self._downloadFileInTwoChunks(file1['_id'])
    self._downloadFileInTwoChunks(file2['_id'])
    # Download each file partially, adding 1 to start and 4 to requested
    self._downloadPartialFile(file1['_id'])
    self._downloadPartialFile(file2['_id'])
    # Download entire collection
    # Each file is downloaded 1 additional time
    path = '/collection/%s/download' % collection['_id']
    resp = self.request(path, user=self.admin, isJson=False)
    # Iterate through generator to trigger download events
    for data in resp.body:
        data
    # Download collection filtered by mime type
    # file2 is downloaded one additional time
    path = '/collection/%s/download' % collection['_id']
    resp = self.request(path, user=self.admin, isJson=False, method='GET',
                        params={
                            'id': collection['_id'],
                            'mimeFilter': json.dumps(['image/jpeg'])
                        })
    # iterate through generator to trigger download events
    for data in resp.body:
        data
    self._checkDownloadsCount(file1['_id'], 14, 18, 13)
    self._checkDownloadsCount(file2['_id'], 15, 19, 14)