コード例 #1
0
ファイル: test_package.py プロジェクト: Cromlech/dolmen.batch
def test_batch():

    sequence = [1, 3, 5, 7, 9, 11, 13, 15]

    @implementer(IPublicationRoot)
    class Publishable(Location):
        pass

    root = Publishable()
    request = Request()
    batcher = Batcher(root, request)
    batcher.update(sequence)
    assert not XMLDiff(batcher.render(), NO_BATCH)

    request = Request(form={'batch.size': 2})
    batcher = Batcher(root, request)
    batcher.update(sequence)
    assert not XMLDiff(batcher.render(), BATCHED)

    request = Request(form={'batch.size': 2, 'batch.start': 4})
    batcher = Batcher(root, request)
    batcher.update(sequence)
    assert not XMLDiff(batcher.render(), BATCHED_ADV)
コード例 #2
0
ファイル: test_package.py プロジェクト: Cromlech/dolmen.batch
def test_batch_unicode_param():

    sequence = range(10)

    @implementer(IPublicationRoot)
    class Publishable(Location):
        pass

    root = Publishable()
    request = Request(form={'batch.size': 2, 'batch.start': 4, 'x': u'héhô'})
    batcher = Batcher(root, request)
    batcher.update(sequence)
    content = batcher.render()  # must not raise
    # assert page param is url encoded
    assert 'http://localhost?x=h%C3%A9h%C3%B4' in content
コード例 #3
0
ファイル: test_package.py プロジェクト: Cromlech/dolmen.batch
def test_batch_multi_param():

    sequence = range(10)

    @implementer(IPublicationRoot)
    class Publishable(Location):
        pass

    root = Publishable()
    request = Request(form={
        'batch.size': 2,
        'batch.start': 4,
        'x': [u'a', u'b']
    })
    batcher = Batcher(root, request)
    batcher.update(sequence)
    assert ('http://localhost?x=a&x=b&batch.start=0&batch.size=2'
            in batcher.render())