mirror of https://github.com/kivy/pyjnius.git
68 lines
2.5 KiB
Python
68 lines
2.5 KiB
Python
import sys
|
|
import pytest
|
|
import jnius_config
|
|
|
|
|
|
class TestJniusConfig:
|
|
def setup_method(self):
|
|
"""Resets the options global."""
|
|
jnius_config.options = []
|
|
jnius_config.vm_running = False
|
|
jnius_config.classpath = None
|
|
|
|
def teardown_method(self):
|
|
self.setup_method()
|
|
|
|
@pytest.mark.parametrize(
|
|
"function,args",
|
|
[
|
|
(jnius_config.set_options, ("option1",)),
|
|
(jnius_config.add_options, ("option1",)),
|
|
(jnius_config.set_classpath, (".",)),
|
|
(jnius_config.add_classpath, (".",)),
|
|
],
|
|
)
|
|
def test_set_options_vm_running(self, function, args):
|
|
"""The functions should only raise an error when the vm is running."""
|
|
assert jnius_config.vm_running is False
|
|
function(*args)
|
|
jnius_config.vm_running = True
|
|
with pytest.raises(ValueError) as ex_info:
|
|
function(*args)
|
|
pytest.mark.skipif(
|
|
sys.version_info < (3, 5), reason="Exception args are different on Python 2"
|
|
)
|
|
assert "VM is already running, can't set" in ex_info.value.args[0]
|
|
|
|
def test_set_options(self):
|
|
assert jnius_config.vm_running is False
|
|
assert jnius_config.options == []
|
|
jnius_config.set_options("option1", "option2")
|
|
assert jnius_config.options == ["option1", "option2"]
|
|
jnius_config.set_options("option3")
|
|
assert jnius_config.options == ["option3"]
|
|
|
|
def test_add_options(self):
|
|
assert jnius_config.vm_running is False
|
|
assert jnius_config.options == []
|
|
jnius_config.add_options("option1", "option2")
|
|
assert jnius_config.options == ["option1", "option2"]
|
|
jnius_config.add_options("option3")
|
|
assert jnius_config.options == ["option1", "option2", "option3"]
|
|
|
|
def test_set_classpath(self):
|
|
assert jnius_config.vm_running is False
|
|
assert jnius_config.classpath is None
|
|
jnius_config.set_classpath(".")
|
|
assert jnius_config.classpath == ["."]
|
|
jnius_config.set_classpath(".", "/usr/local/fem/plugins/*")
|
|
assert jnius_config.classpath == [".", "/usr/local/fem/plugins/*"]
|
|
|
|
def test_add_classpath(self):
|
|
assert jnius_config.vm_running is False
|
|
assert jnius_config.classpath is None
|
|
jnius_config.add_classpath(".")
|
|
assert jnius_config.classpath == ["."]
|
|
jnius_config.add_classpath("/usr/local/fem/plugins/*")
|
|
assert jnius_config.classpath == [".", "/usr/local/fem/plugins/*"]
|