mirror of https://github.com/pyodide/pyodide.git
36 lines
961 B
Python
36 lines
961 B
Python
import pytest
|
|
from pyodide_build.testing import run_in_pyodide
|
|
|
|
|
|
@pytest.mark.parametrize(
|
|
"pattern,name,flags,expected",
|
|
[
|
|
("foo", "bar", 0, False),
|
|
("f*", "foo", 0, True),
|
|
("f*bar", "f/bar", 0, True),
|
|
("f*bar", "f/bar", "fnmatch.FNM_PATHNAME", False),
|
|
],
|
|
)
|
|
def test_fnmatch(selenium_module_scope, pattern, name, flags, expected):
|
|
selenium = selenium_module_scope
|
|
selenium.load_package("cffi_example")
|
|
result = selenium.run(
|
|
f"""
|
|
from cffi_example import fnmatch
|
|
fnmatch.fnmatch({pattern!r}, {name!r}, {flags})
|
|
"""
|
|
)
|
|
assert result == expected
|
|
|
|
|
|
@run_in_pyodide(packages=["cffi_example"], module_scope=True)
|
|
def test_person():
|
|
from cffi_example.person import Person
|
|
|
|
p = Person("Alex", "Smith", 72)
|
|
assert p.get_age() == 72
|
|
assert p.get_full_name() == "Alex Smith"
|
|
|
|
p = Person("x" * 100, "y" * 100, 72)
|
|
assert p.get_full_name() == "x" * 100
|