def tableau_multiple(gen):
    """Set up a Tableau that should yield multiple winners."""
    inputs = (('V1', 'C2', 'V3'), ('C4', 'C5'))
    yield Tableau(
        inputs=inputs,
        ranked_constraints=ConstraintSet([
            "align_left_root",
            "align_right_residue",
            "align_right_root",
            "c_adj_v",
            "contiguity",
        ]),
        candidates=gen.candidates(inputs)
    )
def tableau_arabic_like(gen):
    """Set up a Tableau, which should yield Arabic-like interleaving."""
    inputs = (('C1', 'C2', 'C3'), ('V4', 'V5'))
    yield Tableau(
        inputs=inputs,
        ranked_constraints=ConstraintSet([
            "c_adj_v",
            "align_left_root",
            "align_right_root",
            "align_left_residue",
            "align_right_residue",
            "contiguity",
        ]),
        candidates=gen.candidates(inputs)
    )
def tableau_concat_prefix(gen):
    """Set up a Tableau, which should yield prefixing residue, as a fixture."""
    inputs = (('C1', 'C2', 'V3'), ('V4', 'C5'))
    yield Tableau(
        inputs=inputs,
        ranked_constraints=ConstraintSet([
            "contiguity",
            "align_left_residue",
            "align_right_root",
            "align_left_root",
            "align_right_residue",
            "c_adj_v",
        ]),
        candidates=gen.candidates(inputs)
    )
def tableau_anchor_unattested(gen):
    """Set up a Tableau with ANCHOR constraints that should yield an unattested result."""
    inputs = (('C1', 'C2', 'V3'), ('V4', 'C5'))
    yield Tableau(
        inputs=inputs,
        ranked_constraints=ConstraintSet([
            "anchor_right_residue",
            "anchor_left_root",
            "anchor_right_root",
            "anchor_left_residue",
            "c_adj_v",
            "contiguity",
        ]),
        candidates=gen.candidates(inputs)
    )
Ejemplo n.º 5
0
def constraint_set():
    """Set up the ConstraintSet object as a fixture."""
    yield ConstraintSet()