39 lines
942 B
Python
39 lines
942 B
Python
import os
|
|
|
|
import pytest
|
|
|
|
from util.Flag import Flag
|
|
|
|
class TestFlag:
|
|
def testFlagging(self):
|
|
flag = Flag()
|
|
@flag.admin
|
|
@flag.no_multiuser
|
|
def testFn(anything):
|
|
return anything
|
|
|
|
assert "admin" in flag.db["testFn"]
|
|
assert "no_multiuser" in flag.db["testFn"]
|
|
|
|
def testSubclassedFlagging(self):
|
|
flag = Flag()
|
|
class Test:
|
|
@flag.admin
|
|
@flag.no_multiuser
|
|
def testFn(anything):
|
|
return anything
|
|
|
|
class SubTest(Test):
|
|
pass
|
|
|
|
assert "admin" in flag.db["testFn"]
|
|
assert "no_multiuser" in flag.db["testFn"]
|
|
|
|
def testInvalidFlag(self):
|
|
flag = Flag()
|
|
with pytest.raises(Exception) as err:
|
|
@flag.no_multiuser
|
|
@flag.unknown_flag
|
|
def testFn(anything):
|
|
return anything
|
|
assert "Invalid flag" in str(err.value)
|