def test_incidence_ranges(model, corner_uuids, line_uuids, surface_uuids, block_uuids): corner_incidence_count = 0 for corner_incidence in model.incident_lines(model.corner( corner_uuids[0])): corner_incidence_count += 1 if corner_incidence.id().string() != line_uuids[0].string( ) and corner_incidence.id().string() != line_uuids[2].string( ) and corner_incidence.id().string() != line_uuids[5].string(): raise ValueError( "[Test] IncidentLineRange iteration result is not correct") if corner_incidence_count != 3: raise ValueError("[Test] IncidentLineRange should iterates on 3 Lines") line_incidence_count = 0 for line_incidence in model.incident_surfaces(model.line(line_uuids[0])): line_incidence_count += 1 if line_incidence.id().string() != surface_uuids[0].string( ) and line_incidence.id().string() != surface_uuids[1].string(): raise ValueError( "[Test] IncidentSurfaceRange iteration result is not correct") if line_incidence_count != 2: raise ValueError( "[Test] IncidentSurfaceRange should iterates on 2 Surfaces") surface_incidence_count = 0 for surface_incidence in model.incident_blocks( model.surface(surface_uuids[0])): surface_incidence_count += 1 if surface_incidence.id().string() != block_uuids[0].string(): raise ValueError( "[Test] IncidentBlockRange iteration result is not correct") if surface_incidence_count != 1: raise ValueError( "[Test] IncidentBlockRange should iterates on 1 Block")
def add_surface_block_relation(model, builder, surface_uuids, block_uuids): for surface_id in surface_uuids: builder.add_surface_block_boundary_relationship( model.surface(surface_id), model.block(block_uuids[0])) for surface_id in surface_uuids: for incidence in model.incident_blocks(model.surface(surface_id)): if block_uuids[0].string() != incidence.id().string(): raise ValueError( "[Test] All Surfaces incidences should be Blocks") if model.nb_incidences(surface_id) != 1: raise ValueError( "[Test] All Surfaces should be connected to 1 Block") if model.nb_boundaries(block_uuids[0]) != len(surface_uuids): raise ValueError( "[Test] The Block should be connected to all Surfaces")