[cig-commits] r22614 - short/3D/PyLith/trunk/unittests/libtests/bc

knepley at geodynamics.org knepley at geodynamics.org
Mon Jul 15 06:19:57 PDT 2013


Author: knepley
Date: 2013-07-15 06:19:57 -0700 (Mon, 15 Jul 2013)
New Revision: 22614

Modified:
   short/3D/PyLith/trunk/unittests/libtests/bc/TestBoundaryMesh.cc
Log:
Prevent cascading test failures

Modified: short/3D/PyLith/trunk/unittests/libtests/bc/TestBoundaryMesh.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/bc/TestBoundaryMesh.cc	2013-07-15 13:13:18 UTC (rev 22613)
+++ short/3D/PyLith/trunk/unittests/libtests/bc/TestBoundaryMesh.cc	2013-07-15 13:19:57 UTC (rev 22614)
@@ -101,17 +101,18 @@
   CPPUNIT_ASSERT_EQUAL(_data->numCells, cellsStratum.size());
   PetscErrorCode err = 0;
   for (PetscInt c = cStart, index = 0; c < cEnd; ++c) {
+    PetscInt  vertices[32];
     PetscInt *closure = NULL;
     PetscInt  closureSize, numVertices = 0;
 
     err = DMPlexGetTransitiveClosure(dmMesh, c, PETSC_TRUE, &closureSize, &closure);PYLITH_CHECK_ERROR(err);
     for (PetscInt p = 0; p < closureSize*2; p += 2) {
-      if ((closure[p] >= vStart) && (closure[p] < vEnd)) closure[numVertices++] = closure[p];
+      if ((closure[p] >= vStart) && (closure[p] < vEnd)) vertices[numVertices++] = closure[p];
     } // for
+    err = DMPlexRestoreTransitiveClosure(dmMesh, c, PETSC_TRUE, &closureSize, &closure);PYLITH_CHECK_ERROR(err);
     CPPUNIT_ASSERT_EQUAL(_data->numCorners, numVertices);
     for (PetscInt v = 0; v < numVertices; ++v, ++index)
-      CPPUNIT_ASSERT_EQUAL(_data->cellsNoFault[index], subpointMap[closure[v]]);
-    err = DMPlexRestoreTransitiveClosure(dmMesh, c, PETSC_TRUE, &closureSize, &closure);PYLITH_CHECK_ERROR(err);
+      CPPUNIT_ASSERT_EQUAL(_data->cellsNoFault[index], subpointMap[vertices[v]]);
   } // for
 
   PYLITH_METHOD_END;
@@ -154,6 +155,9 @@
   // Create submesh
   topology::Mesh submesh(mesh, _data->bcLabel);
   PetscDM dmMesh = submesh.dmMesh();CPPUNIT_ASSERT(dmMesh);
+  PetscViewerPushFormat(PETSC_VIEWER_STDOUT_WORLD, PETSC_VIEWER_ASCII_INFO_DETAIL);
+  DMView(mesh.dmMesh(), PETSC_VIEWER_STDOUT_WORLD);
+  PetscViewerPopFormat(PETSC_VIEWER_STDOUT_WORLD);
 
   // Check vertices
   topology::Stratum verticesStratum(dmMesh, topology::Stratum::DEPTH, 0);
@@ -173,17 +177,18 @@
   CPPUNIT_ASSERT_EQUAL(_data->numCells, cellsStratum.size());
 
   for (PetscInt c = cStart, index = 0; c < cEnd; ++c) {
+    PetscInt  vertices[32];
     PetscInt *closure = NULL;
     PetscInt  closureSize, numVertices = 0;
 
     err = DMPlexGetTransitiveClosure(dmMesh, c, PETSC_TRUE, &closureSize, &closure);PYLITH_CHECK_ERROR(err);
     for (PetscInt p = 0; p < closureSize*2; p += 2) {
-      if ((closure[p] >= vStart) && (closure[p] < vEnd)) closure[numVertices++] = closure[p];
+      if ((closure[p] >= vStart) && (closure[p] < vEnd)) vertices[numVertices++] = closure[p];
     } // for
+    err = DMPlexRestoreTransitiveClosure(dmMesh, c, PETSC_TRUE, &closureSize, &closure);PYLITH_CHECK_ERROR(err);
     CPPUNIT_ASSERT_EQUAL(_data->numCorners, numVertices);
     for (PetscInt v = 0; v < numVertices; ++v, ++index)
-      CPPUNIT_ASSERT_EQUAL(_data->cellsFault[index], subpointMap[closure[v]]);
-    err = DMPlexRestoreTransitiveClosure(dmMesh, c, PETSC_TRUE, &closureSize, &closure);PYLITH_CHECK_ERROR(err);
+      CPPUNIT_ASSERT_EQUAL(_data->cellsFault[index], subpointMap[vertices[v]]);
   } // for
 
   PYLITH_METHOD_END;



More information about the CIG-COMMITS mailing list