Add slew of tests to Azure CI
A short look at recent PRs shows that Azure CI takes between 90 and 140 minutes to complete. More than 90% of that time is compiling the code. We also spend some time running the tests. Take a look at data from a recent example below.
I went looking for more tests we could add to Azure. The critiria were that the whole .py file take less than 20 seconds to complete and uses only either silo or blueprint data or no data files at all. That produced the list of tests below. If I sum all the time for running all these tests from recent runs on poodle, it amounts to 10.5 minutes of extra time. So, instead of taking 90 mins for Azure CI to complete, it will take 100 mins. I propose we add these tests to Azure CI.
../../src/test/tests/expressions/ghost_zoneid_expr.py
../../src/test/tests/expressions/global_stats.py
../../src/test/tests/expressions/math_expr.py
../../src/test/tests/expressions/tensor_expr.py
../../src/test/tests/faulttolerance/checkmode.py
../../src/test/tests/faulttolerance/savewindow.py
../../src/test/tests/hybrid/cleanzonesonly.py
../../src/test/tests/hybrid/conditional.py
../../src/test/tests/hybrid/conn_cmfe.py
../../src/test/tests/hybrid/coord_expr.py
../../src/test/tests/hybrid/cylindrical_radius.py
../../src/test/tests/hybrid/defvar_anim.py
../../src/test/tests/hybrid/expr2engine.py
../../src/test/tests/hybrid/exprList.py
../../src/test/tests/hybrid/expr_cmfe.py
../../src/test/tests/hybrid/expressions.py
../../src/test/tests/hybrid/field_operators.py
../../src/test/tests/hybrid/ghost_node.py
../../src/test/tests/hybrid/keyframe.py
../../src/test/tests/hybrid/math_expr.py
../../src/test/tests/hybrid/matsel.py
../../src/test/tests/hybrid/matvf.py
../../src/test/tests/hybrid/mesh_quality.py
../../src/test/tests/hybrid/multivar.py
../../src/test/tests/hybrid/pos_cmfe.py
../../src/test/tests/hybrid/py_exprs.py
../../src/test/tests/hybrid/replace.py
../../src/test/tests/hybrid/specmf.py
../../src/test/tests/hybrid/symm.py
../../src/test/tests/hybrid/time_cmfe.py
../../src/test/tests/hybrid/time_deriv_cmfe.py
../../src/test/tests/hybrid/time_iteration.py
../../src/test/tests/hybrid/val4mat.py
../../src/test/tests/hybrid/vtkm.py
../../src/test/tests/meshtype/arbpoly.py
../../src/test/tests/meshtype/emptydomains.py
../../src/test/tests/meshtype/globe.py
../../src/test/tests/meshtype/point.py
../../src/test/tests/meshtype/rect3d.py
../../src/test/tests/operators/box.py
../../src/test/tests/operators/defer_expr.py
../../src/test/tests/operators/dual_mesh.py
../../src/test/tests/operators/elevate.py
../../src/test/tests/operators/ex_surf.py
../../src/test/tests/operators/explode.py
../../src/test/tests/operators/ic_geometry.py
../../src/test/tests/operators/ic_integration.py
../../src/test/tests/operators/ic_termination.py
../../src/test/tests/operators/isovolume.py
../../src/test/tests/operators/moveoperators.py
../../src/test/tests/operators/operators.py
../../src/test/tests/operators/reflect.py
../../src/test/tests/operators/resample.py
../../src/test/tests/operators/revolve.py
../../src/test/tests/operators/threeslice.py
../../src/test/tests/operators/threshold.py
../../src/test/tests/plots/contour.py
../../src/test/tests/plots/filledboundary.py
../../src/test/tests/plots/multicolor.py
../../src/test/tests/plots/scatter.py
../../src/test/tests/plots/singlecolor.py
../../src/test/tests/plots/surface.py
../../src/test/tests/plots/tensor.py
../../src/test/tests/plots/vector.py
../../src/test/tests/plots/volumePlot.py
../../src/test/tests/queries/avg_value.py
../../src/test/tests/queries/casetest.py
../../src/test/tests/queries/centroid.py
../../src/test/tests/queries/consistencyChecks.py
../../src/test/tests/queries/curvature.py
../../src/test/tests/queries/error_queries.py
../../src/test/tests/queries/py_queries.py
../../src/test/tests/queries/queryMultiWindow.py
../../src/test/tests/queries/revolved_surface_area.py
../../src/test/tests/queries/scf.py
../../src/test/tests/queries/variable_sum_volume.py
../../src/test/tests/queries/watertight.py
../../src/test/tests/quickrecipes/cl_args.py
../../src/test/tests/quickrecipes/colortables.py
../../src/test/tests/quickrecipes/expressions.py
../../src/test/tests/quickrecipes/operators.py
../../src/test/tests/quickrecipes/quantitative_operations.py
../../src/test/tests/quickrecipes/saving_images.py
../../src/test/tests/quickrecipes/subsetting.py
../../src/test/tests/quickrecipes/view.py
../../src/test/tests/quickrecipes/working_with_annotations.py
../../src/test/tests/quickrecipes/working_with_plots.py
../../src/test/tests/rendering/annotation.py
../../src/test/tests/rendering/axistitles.py
../../src/test/tests/rendering/bigdata.py
../../src/test/tests/rendering/colortexture.py
../../src/test/tests/rendering/evalcubic.py
../../src/test/tests/rendering/image.py
../../src/test/tests/rendering/line2d.py
../../src/test/tests/rendering/line3d.py
../../src/test/tests/rendering/offscreensave.py
../../src/test/tests/rendering/renderpoints.py
../../src/test/tests/rendering/shadows.py
../../src/test/tests/rendering/specular.py
../../src/test/tests/rendering/text2d.py
../../src/test/tests/rendering/text3d.py
../../src/test/tests/rendering/transparency.py
../../src/test/tests/session/colortable.py
../../src/test/tests/session/correlationsession.py
../../src/test/tests/session/legendproperties.py
../../src/test/tests/session/rect3d-contour.py
../../src/test/tests/session/restorewithsources.py
../../src/test/tests/session/selection.py
../../src/test/tests/session/sessionexpression.py
../../src/test/tests/session/sessionview.py
../../src/test/tests/session/simplekeyframe.py
../../src/test/tests/session/textannot.py
../../src/test/tests/session/view3d.py
../../src/test/tests/session/wavecontour.py
../../src/test/tests/unit/annotation_objects.py
../../src/test/tests/unit/atts_assign.py
../../src/test/tests/unit/convert2to3.py
../../src/test/tests/unit/default_methods.py
../../src/test/tests/unit/launcher.py
../../src/test/tests/unit/mrucache.py
../../src/test/tests/unit/namescheme.py
../../src/test/tests/unit/protocol.py
../../src/test/tests/unit/stringhelpers.py
../../src/test/tests/unit/test_value_simple.py
../../src/test/tests/unit/utility.py
I like this idea.
We may consider splitting up large test files like blueprint.py into smaller files.