Skip to content

test_region_parser

converter.tests.fluka.test_region_parser

test_parse_regions

test_parse_regions(zones_json, project_fluka_json)

Test if regions are parsed correctly

Source code in yaptide/converter/tests/fluka/test_region_parser.py
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
def test_parse_regions(zones_json, project_fluka_json):
    """Test if regions are parsed correctly"""
    figures = parse_figures(project_fluka_json["figureManager"].get('figures'))

    regions, _ = parse_regions(zones_json, figures)
    regions = list(regions.values())

    assert regions[0].name == "region0"
    assert regions[0].figures_operators == [[(BoolOperation.INTERSECTION, "fig0"), (BoolOperation.SUBTRACTION, "fig1"),
                                            (BoolOperation.SUBTRACTION, "fig2")]]

    assert regions[1].name == "region1"
    assert regions[1].figures_operators == [[(BoolOperation.INTERSECTION, "fig1")]]

    assert regions[2].name == "region2"
    assert regions[2].figures_operators == [[(BoolOperation.INTERSECTION, "fig2"), (BoolOperation.SUBTRACTION, "fig3")]]

    assert regions[3].name == "region3"
    assert regions[3].figures_operators == [[(BoolOperation.INTERSECTION, "fig3")]]

    assert regions[4].name == "world"
    assert regions[4].figures_operators == [[(BoolOperation.INTERSECTION, "figworld"), (BoolOperation.SUBTRACTION, "fig0"),
                                             (BoolOperation.SUBTRACTION, "fig1"), (BoolOperation.SUBTRACTION, "fig2"),
                                             (BoolOperation.SUBTRACTION, "fig3"), (BoolOperation.SUBTRACTION, "fig4")]]

    assert regions[5].name == "boundary"
    assert regions[5].figures_operators == [[(BoolOperation.INTERSECTION, "figbound"), (BoolOperation.SUBTRACTION, "figworld")]]

zones_json

zones_json(project_fluka_json)

zoneManager part of Fluka project.json file

Source code in yaptide/converter/tests/fluka/test_region_parser.py
5
6
7
8
@pytest.fixture(scope='module')
def zones_json(project_fluka_json):
    """zoneManager part of Fluka project.json file"""
    return project_fluka_json['zoneManager']