Exemplo n.º 1
0
def test_copy_missing_file(monkeypatch, doc):
    def mock_copy(source, dest):
        raise IOError

    monkeypatch.setattr('plasTeX.PackageResource.shutil.copy', mock_copy)
    mock_logger = Mock()
    monkeypatch.setattr('plasTeX.PackageResource.log.error', mock_logger)

    resource = PackageCss(path=Path('mypkg') / 'mystyle.css', renderers='html')
    resource.alter(document=doc,
                   rendererName='html',
                   renderer=Mock(),
                   target=Path('buildir'))

    assert mock_logger.call_count == 1
Exemplo n.º 2
0
def test_copy_file(monkeypatch, doc):
    copy_calls = []

    def mock_copy(source, dest):
        copy_calls.append((source, dest))

    monkeypatch.setattr('plasTeX.PackageResource.shutil.copy', mock_copy)

    resource = PackageCss(path=Path('mypkg') / 'mystyle.css', renderers='html')
    resource.alter(document=doc,
                   rendererName='html',
                   renderer=Mock(),
                   target=Path('buildir'))

    assert copy_calls == [(str(Path('mypkg') / 'mystyle.css'),
                           str(Path('buildir') / 'styles'))]
Exemplo n.º 3
0
def test_copy_missing_file(monkeypatch, doc):
    def mock_copy(source, dest):
        raise IOError

    monkeypatch.setattr('plasTeX.PackageResource.shutil.copy', mock_copy)
    monkeypatch.setattr(
        'plasTeX.PackageResource.rendererDir', 
        lambda x: 'html')

    mock_logger = Mock()
    monkeypatch.setattr('plasTeX.PackageResource.log.error', mock_logger)

    resource = PackageCss(data='mystyle.css', package='mypkg', renderers='html')
    resource.alter(
        document=doc, 
        rendererName='html',
        renderer=object(),
        target='buildir')

    mock_logger.assert_called_once()
Exemplo n.º 4
0
def test_copy_from_working_dir(monkeypatch, doc):
    copy_calls = []

    def mock_copy(source, dest):
        copy_calls.append((source, dest))

    monkeypatch.setattr('plasTeX.PackageResource.shutil.copy', mock_copy)
    monkeypatch.setattr('plasTeX.PackageResource.rendererDir',
                        lambda x: 'html')

    doc.userdata['working-dir'] = 'mydir'
    resource = PackageCss(data='mystyle.css',
                          package='mypkg',
                          renderers='html')
    resource.alter(document=doc,
                   rendererName='html',
                   renderer=object(),
                   target='buildir')

    assert copy_calls == [(os.path.join('mydir', 'mypkg', 'mystyle.css'),
                           os.path.join('buildir', 'styles'))]