35 lines
1.0 KiB
Python
35 lines
1.0 KiB
Python
import os
|
|
|
|
import pytest
|
|
from sage.all import * # noqa: F401
|
|
from sage.geometry.lattice_polytope import set_palp_dimension
|
|
|
|
load(os.path.join(os.path.dirname(__file__), "..", "sage", "toric_topdata.sage"))
|
|
load(os.path.join(os.path.dirname(__file__), "test_models.sage"))
|
|
|
|
set_palp_dimension(11)
|
|
|
|
TEST_MODELS_PARAMETRISED = [pytest.param(*row[1:], id=row[0]) for row in TEST_MODELS]
|
|
|
|
|
|
@pytest.mark.parametrize(
|
|
"make_model, expected_cy_dimension, expected_no_divs, expected_disc, expected_intersection_numbers_CY",
|
|
TEST_MODELS_PARAMETRISED,
|
|
)
|
|
def test_topdata_and_disc(
|
|
make_model,
|
|
expected_cy_dimension,
|
|
expected_no_divs,
|
|
expected_disc,
|
|
expected_intersection_numbers_CY,
|
|
):
|
|
polytope = make_model()
|
|
|
|
discriminants = polytope.disc()
|
|
assert [(str(factor), codim) for factor, codim in discriminants] == expected_disc
|
|
|
|
polytope.topdata()
|
|
assert polytope.cy_dimension == expected_cy_dimension
|
|
assert polytope.no_divs == expected_no_divs
|
|
assert polytope.intersection_numbers_CY == expected_intersection_numbers_CY
|