コード例 #1
0
ファイル: bulk.py プロジェクト: movermeyer/nicedjango
 def replace_into_mysql(self, values_list):
     for chunk in as_chunks(values_list, self.chunksize):
         lines = []
         for row in chunk:
             lines.append(('%s\n' % smart_text(','.join(
                 map(quote_value, row)))).encode('utf-8'))
         self.replace_into_mysql_lines(lines)
コード例 #2
0
ファイル: queries.py プロジェクト: movermeyer/nicedjango
def queryset_as_chunks(queryset, chunksize=None, name=None, pks=None):
    if name is not None and pks is not None:
        values_getter = queryset_in_list_getter(queryset, name)
        for chunk in as_chunks(pks, chunksize, None, values_getter):
            yield chunk
    else:
        for chunk in sliceable_as_chunks(queryset, chunksize):
            yield chunk
コード例 #3
0
ファイル: queries.py プロジェクト: katakumpo/nicedjango
def queryset_as_chunks(queryset, chunksize=None, name=None, pks=None):
    if name is not None and pks is not None:
        values_getter = queryset_in_list_getter(queryset, name)
        for chunk in as_chunks(pks, chunksize, None, values_getter):
            yield chunk
    else:
        for chunk in sliceable_as_chunks(queryset, chunksize):
            yield chunk
コード例 #4
0
def test_as_chunks_key():
    iterable = [1, 2, 3, 4, 5, 6, 7, 8, 9]
    chunks = list(as_chunks(iterable, 4, key=lambda v: v % 4 == 0))
    assert [[1, 2, 3], [4], [5, 6, 7], [8], [9]] == chunks
    assert [1, 2, 3, 4, 5] == list(map_attr(chunks, 'cpos'))
    assert [3, 3, 4, 4, 5] == list(map_attr(chunks, 'csize'))
    assert [1, 4, 5, 8, 9] == list(map_attr(chunks, 'pos'))
    assert [3, 4, 7, 8, 9] == list(map_attr(chunks, 'to_pos'))
    assert [9, 9, 9, 9, 9] == list(map_attr(chunks, 'size'))
    assert [3, 1, 3, 1, 1] == list(map_attr(chunks, 'len'))
コード例 #5
0
def test_as_chunks_unsized():
    iterable = iter([1, 2, 3, 4, 5, 6, 7, 8, 9])
    chunks = list(as_chunks(iterable, 4))
    assert [[1, 2, 3, 4], [5, 6, 7, 8], [9]] == chunks
    assert [1, 2, 3] == list(map_attr(chunks, 'cpos'))
    assert [0, 0, 0] == list(map_attr(chunks, 'csize'))
    assert [1, 5, 9] == list(map_attr(chunks, 'pos'))
    assert [4, 8, 9] == list(map_attr(chunks, 'to_pos'))
    assert [0, 0, 0] == list(map_attr(chunks, 'size'))
    assert [4, 4, 1] == list(map_attr(chunks, 'len'))
コード例 #6
0
ファイル: test_py_chunk.py プロジェクト: katakumpo/nicedjango
def test_as_chunks_key():
    iterable = [1, 2, 3, 4, 5, 6, 7, 8, 9]
    chunks = list(as_chunks(iterable, 4, key=lambda v: v % 4 == 0))
    assert [[1, 2, 3], [4], [5, 6, 7], [8], [9]] == chunks
    assert [1, 2, 3, 4, 5] == list(map_attr(chunks, 'cpos'))
    assert [3, 3, 4, 4, 5] == list(map_attr(chunks, 'csize'))
    assert [1, 4, 5, 8, 9] == list(map_attr(chunks, 'pos'))
    assert [3, 4, 7, 8, 9] == list(map_attr(chunks, 'to_pos'))
    assert [9, 9, 9, 9, 9] == list(map_attr(chunks, 'size'))
    assert [3, 1, 3, 1, 1] == list(map_attr(chunks, 'len'))
コード例 #7
0
ファイル: test_py_chunk.py プロジェクト: katakumpo/nicedjango
def test_as_chunks_unsized():
    iterable = iter([1, 2, 3, 4, 5, 6, 7, 8, 9])
    chunks = list(as_chunks(iterable, 4))
    assert [[1, 2, 3, 4], [5, 6, 7, 8], [9]] == chunks
    assert [1, 2, 3] == list(map_attr(chunks, 'cpos'))
    assert [0, 0, 0] == list(map_attr(chunks, 'csize'))
    assert [1, 5, 9] == list(map_attr(chunks, 'pos'))
    assert [4, 8, 9] == list(map_attr(chunks, 'to_pos'))
    assert [0, 0, 0] == list(map_attr(chunks, 'size'))
    assert [4, 4, 1] == list(map_attr(chunks, 'len'))
コード例 #8
0
def test_as_chunks_chunk_value():
    iterable = [1, 2, 3, 4, 5, 6, 7, 8, 9]
    chunks = list(as_chunks(iterable, 4, chunk_value=lambda vs: map(str, vs)))
    assert [['1', '2', '3', '4'], ['5', '6', '7', '8'], ['9']] == chunks
コード例 #9
0
ファイル: bulk.py プロジェクト: katakumpo/nicedjango
 def replace_into_mysql(self, values_list):
     for chunk in as_chunks(values_list, self.chunksize):
         lines = []
         for row in chunk:
             lines.append(('%s\n' % smart_text(','.join(map(quote_value, row)))).encode('utf-8'))
         self.replace_into_mysql_lines(lines)
コード例 #10
0
ファイル: test_py_chunk.py プロジェクト: katakumpo/nicedjango
def test_as_chunks_chunk_value():
    iterable = [1, 2, 3, 4, 5, 6, 7, 8, 9]
    chunks = list(as_chunks(iterable, 4, chunk_value=lambda vs: map(str, vs)))
    assert [['1', '2', '3', '4'], ['5', '6', '7', '8'], ['9']] == chunks