/usr/share/pyspread/src/lib/testlib.py is in pyspread 1.0.1-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 | #!/usr/bin/env python
# -*- coding: utf-8 -*-
# Copyright Martin Manns
# Distributed under the terms of the GNU General Public License
# --------------------------------------------------------------------
# pyspread is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# pyspread is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with pyspread. If not, see <http://www.gnu.org/licenses/>.
# --------------------------------------------------------------------
"""
testlib.py
==========
Helper functions for unit tests
"""
import wx
# Standard grid values for initial filling
grid_values = { \
(0, 0, 0): "'Test'",
(999, 0, 0): "1",
(999, 99, 0): "$^%&$^",
(0, 1, 0): "1",
(0, 2, 0): "2",
(1, 1, 0): "3",
(1, 2, 0): "4",
(1, 2, 2): "78",
}
# Helper methods for efficient testing
def _fill_grid(grid, values):
"""Fills grid with values (use e. g. grid_values)"""
for key in values:
grid.code_array[key] = values[key]
def restore_basic_grid(grid):
"""Restores basic, filled grid"""
default_test_shape = (1000, 100, 3)
grid.actions.clear(default_test_shape)
_fill_grid(grid, grid_values)
def basic_setup_test(grid, func, test_key, test_val, *args, **kwargs):
"""Sets up basic test env, runs func and tests test_key in grid"""
restore_basic_grid(grid)
func(*args, **kwargs)
grid.code_array.result_cache.clear()
assert grid.code_array(test_key) == test_val
def params(funcarglist):
"""Test function parameter decorator
Provides arguments based on the dict funcarglist.
"""
def wrapper(function):
function.funcarglist = funcarglist
return function
return wrapper
def pytest_generate_tests(metafunc):
"""Enables params to work in py.test environment"""
for funcargs in getattr(metafunc.function, 'funcarglist', ()):
metafunc.addcall(funcargs=funcargs)
|