Files
scgenerator/tests/test_parameters.py

25 lines
894 B
Python

import pytest
import scgenerator as sc
from scgenerator.evaluator import EvaluatorError
def test_dispersion_logic():
params = sc.Parameters(wavelength=1550e-9, dispersion_parameter=5e-6)
assert params.compute("beta2_coefficients") == pytest.approx([-6.3772409974749684e-27])
params = sc.Parameters(wavelength=1550e-9, dispersion_parameter=5e-6, dispersion_slope=25)
assert params.compute("beta2_coefficients") == pytest.approx(
[-6.3772409974749684e-27, 5.116448086629504e-41]
)
def test_relaxed_compute():
params = sc.Parameters(shape="gaussian", energy=1e-6, width=1e-12)
params.compute("peak_power")
with pytest.raises(EvaluatorError):
params = sc.Parameters(energy=1e-6, width=1e-12)
params.compute("peak_power")
params = sc.Parameters(energy=1e-6, width=1e-12)
assert params.compute("peak_power", strict=False) is None