tests for enum & internals
This commit is contained in:
parent
4388b17f78
commit
fdbd272971
0
csdl/tests/__init__.py
Normal file
0
csdl/tests/__init__.py
Normal file
23
csdl/tests/test_enum.py
Normal file
23
csdl/tests/test_enum.py
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
from csdl.enum import CEnum, CEnumSymbol
|
||||||
|
|
||||||
|
class TestEnum(CEnum):
|
||||||
|
FIRST = 0
|
||||||
|
SPECIAL = 2, 'a special case'
|
||||||
|
BIG = 9001
|
||||||
|
|
||||||
|
def test_enumsymbol():
|
||||||
|
assert isinstance(TestEnum.FIRST, int)
|
||||||
|
assert TestEnum.FIRST == 0
|
||||||
|
assert TestEnum.SPECIAL == 2
|
||||||
|
assert TestEnum.FIRST.name == 'FIRST'
|
||||||
|
assert TestEnum.SPECIAL.name == 'SPECIAL'
|
||||||
|
assert TestEnum.FIRST.description == 'FIRST'
|
||||||
|
assert TestEnum.SPECIAL.description == 'a special case'
|
||||||
|
assert repr(TestEnum.FIRST) == '<FIRST>'
|
||||||
|
assert repr(TestEnum.SPECIAL) == '<SPECIAL>'
|
||||||
|
|
||||||
|
def test_cenum():
|
||||||
|
assert len(TestEnum.values()) == 3
|
||||||
|
big_hopefully = TestEnum.from_int(9001)
|
||||||
|
assert isinstance(big_hopefully, CEnumSymbol)
|
||||||
|
assert big_hopefully.name == 'BIG'
|
24
csdl/tests/test_internals.py
Normal file
24
csdl/tests/test_internals.py
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
from nose.tools import with_setup, raises
|
||||||
|
|
||||||
|
from ..internal import _SDL, errcheck, Version, SDLError
|
||||||
|
|
||||||
|
def setup_func():
|
||||||
|
_SDL.SDL_ClearError()
|
||||||
|
|
||||||
|
@with_setup(setup_func)
|
||||||
|
def test_errcheck_noerr():
|
||||||
|
# set an error to ensure that errors aren't cleared
|
||||||
|
_SDL.SDL_SetError("test")
|
||||||
|
assert errcheck(2) == 2 # positive values should pass through
|
||||||
|
assert errcheck(0) == 0 # as should zero
|
||||||
|
assert _SDL.SDL_GetError() == "test"
|
||||||
|
|
||||||
|
@raises(SDLError)
|
||||||
|
@with_setup(setup_func)
|
||||||
|
def test_errcheck_err():
|
||||||
|
_SDL.SDL_SetError("err!")
|
||||||
|
try:
|
||||||
|
errcheck(-1) # negative values should trigger the SDLError
|
||||||
|
except SDLError as e:
|
||||||
|
assert str(e) == "err!"
|
||||||
|
raise # reraise error
|
Loading…
Reference in New Issue
Block a user