diff --git a/tests/regression_tests/dagmc_py/__init__.py b/tests/regression_tests/dagmc_py/__init__.py
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/tests/regression_tests/dagmc_py/dagmc.h5m b/tests/regression_tests/dagmc_py/dagmc.h5m
new file mode 120000
index 0000000000..c178f8ddbf
--- /dev/null
+++ b/tests/regression_tests/dagmc_py/dagmc.h5m
@@ -0,0 +1 @@
+../dagmc/dagmc.h5m
\ No newline at end of file
diff --git a/tests/regression_tests/dagmc_py/inputs_true.dat b/tests/regression_tests/dagmc_py/inputs_true.dat
new file mode 100644
index 0000000000..2fa32eb424
--- /dev/null
+++ b/tests/regression_tests/dagmc_py/inputs_true.dat
@@ -0,0 +1,184 @@
+
+
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+
+ 1.26 1.26
+ 17 17
+ -10.71 -10.71
+
+1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+1 1 1 1 1 2 1 1 2 1 1 2 1 1 1 1 1
+1 1 1 2 1 1 1 1 1 1 1 1 1 2 1 1 1
+1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+1 1 2 1 1 2 1 1 2 1 1 2 1 1 2 1 1
+1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+1 1 2 1 1 2 1 1 2 1 1 2 1 1 2 1 1
+1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+1 1 2 1 1 2 1 1 2 1 1 2 1 1 2 1 1
+1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+1 1 1 2 1 1 1 1 1 1 1 1 1 2 1 1 1
+1 1 1 1 1 2 1 1 2 1 1 2 1 1 1 1 1
+1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
+
+
+ 1.26 1.26
+ 17 17
+ -10.71 -10.71
+
+3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
+3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
+3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3
+3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3
+3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
+3 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 3
+3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
+3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
+3 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 3
+3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
+3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
+3 3 4 3 3 4 3 3 4 3 3 4 3 3 4 3 3
+3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
+3 3 3 4 3 3 3 3 3 3 3 3 3 4 3 3 3
+3 3 3 3 3 4 3 3 4 3 3 4 3 3 3 3 3
+3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
+3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
+
+
+ 21.42 21.42
+ 21 21
+ -224.91 -224.91
+
+5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5
+5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5
+5 5 5 5 5 5 5 6 6 6 6 6 6 6 5 5 5 5 5 5 5
+5 5 5 5 5 6 6 6 6 6 6 6 6 6 6 6 5 5 5 5 5
+5 5 5 5 6 6 6 6 6 6 6 6 6 6 6 6 6 5 5 5 5
+5 5 5 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 5 5 5
+5 5 5 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 5 5 5
+5 5 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 5 5
+5 5 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 5 5
+5 5 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 5 5
+5 5 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 5 5
+5 5 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 5 5
+5 5 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 5 5
+5 5 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 5 5
+5 5 5 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 5 5 5
+5 5 5 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 5 5 5
+5 5 5 5 6 6 6 6 6 6 6 6 6 6 6 6 6 5 5 5 5
+5 5 5 5 5 6 6 6 6 6 6 6 6 6 6 6 5 5 5 5 5
+5 5 5 5 5 5 5 6 6 6 6 6 6 6 5 5 5 5 5 5 5
+5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5
+5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5
+
+
+ 21.42 21.42
+ 21 21
+ -224.91 -224.91
+
+7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7
+7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7
+7 7 7 7 7 7 7 8 8 8 8 8 8 8 7 7 7 7 7 7 7
+7 7 7 7 7 8 8 8 8 8 8 8 8 8 8 8 7 7 7 7 7
+7 7 7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 7 7 7 7
+7 7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 7 7 7
+7 7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 7 7 7
+7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 7 7
+7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 7 7
+7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 7 7
+7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 7 7
+7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 7 7
+7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 7 7
+7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 7 7
+7 7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 7 7 7
+7 7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 7 7 7
+7 7 7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 7 7 7 7
+7 7 7 7 7 8 8 8 8 8 8 8 8 8 8 8 7 7 7 7 7
+7 7 7 7 7 7 7 8 8 8 8 8 8 8 7 7 7 7 7 7 7
+7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7
+7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ eigenvalue
+ 100
+ 5
+ 0
+
+
+ -4 -4 -4 4 4 4
+
+
+ true
+
+
+
+
+ 1
+
+
+ 1
+ total
+
+
diff --git a/tests/regression_tests/dagmc_py/results_true.dat b/tests/regression_tests/dagmc_py/results_true.dat
new file mode 100644
index 0000000000..8961719efd
--- /dev/null
+++ b/tests/regression_tests/dagmc_py/results_true.dat
@@ -0,0 +1 @@
+d229fdde717cef748e965199a6ff797d3e3f552f34cc6187008025c330a9bedd676e2a6ff2288bdbf04c852a528fd862d2c959d1d5ca44d7b18890fcd58fa5de
\ No newline at end of file
diff --git a/tests/regression_tests/dagmc_py/test.py b/tests/regression_tests/dagmc_py/test.py
new file mode 100644
index 0000000000..1cce2dfd7c
--- /dev/null
+++ b/tests/regression_tests/dagmc_py/test.py
@@ -0,0 +1,50 @@
+import openmc
+import openmc.capi
+from openmc.stats import Box
+
+import pytest
+from tests.testing_harness import HashedPyAPITestHarness
+
+pytestmark = pytest.mark.skipif(
+ not openmc.capi.dagmc_enabled,
+ reason="DAGMC CAD geometry is not enabled.")
+
+def test_dagmc():
+ harness = HashedPyAPITestHarness('statepoint.5.h5')
+ model = harness._model
+
+ # settings
+ model.settings.batches = 5
+ model.settings.inactive = 0
+ model.settings.particles = 100
+
+ source = openmc.Source(space=Box([-4, -4, -4],
+ [ 4, 4, 4]))
+ model.settings.source = source
+
+ model.settings.dagmc = True
+
+ # tally
+ tally = openmc.Tally()
+ tally.scores = ['total']
+ tally.filters = [openmc.CellFilter(1)]
+ model.tallies = [tally]
+
+ # materials
+ u235 = openmc.Material()
+ u235.add_nuclide('U235', 1.0, 'ao')
+ u235.set_density('g/cc', 11)
+ u235.id = 40
+
+ water = openmc.Material()
+ water.add_nuclide('H1', 2.0, 'ao')
+ water.add_nuclide('O16', 1.0, 'ao')
+ water.add_s_alpha_beta('c_H_in_H2O')
+ water.set_density('g/cc', 1.0)
+ water.id = 41
+ print(water)
+
+ mats = openmc.Materials([u235, water])
+ model.materials = mats
+
+ harness.main()