[vtk-developers] vtk Testing/Cxx and vtk Examples

David Doria daviddoria+vtk at gmail.com
Sun Dec 27 16:23:13 EST 2009


I thought the devel list should see this, too.

David

---------- Forwarded message ----------
From: Bill Lorensen <bill.lorensen at gmail.com>
Date: Sun, Dec 27, 2009 at 2:27 PM
Subject: [vtkusers] vtk Testing/Cxx and vtk Examples
To: vtkusers at public.kitware.com


Folks,

I have just checked in changes that simplify testing of vtk c++
classes and vtk examples.

1) Two new classes: Rendering/vtkTestingObjectFactory and
Rendering/vtkTestingInteractor as well as cmake code
vtkTestingObjectFactory.cmake.
// .NAME vtkTestingObjectFactory - Object overrides used during testing
// .SECTION Description
// Some vtk examples and tests need to perform differently when they
// are run as tests versus when they are run as individual
// programs. Many tests/examples are interactive and eventually call
// vtkRenderWindowInteration::Start() to initialise the
// interaction. But, when run as tests, these programs should
// exit. This factory overrides vtkRenderWindowInteractor so that the
// Start() method just returns.
// To use this factory:
//   #include "vtkTestingObjectFactory.h"
//   vtkTestingObjectFactory* factory = vtkTestingObjectFactory::New();
//   vtkObjectFactory::RegisterFactory(factory);
//
and
// .NAME vtkTestingInteractor - A RenderWindowInteractor for testing
// .SECTION Description
// Provides a Start() method that passes arguments to a test for
// regression testing and returns. This permits programs that
// run as tests to exit gracefully during the test run without needing
// interaction.

The vtkTestingObjectFactory.cmake uses these classes and the existing
CREATE_TEST_SOURCELIST
to build a test driver for examples and/or tests.

They permit tests and examples to be run without having to modify the
test or example. The tests and examples can be run interactively or as
non-interactive tests. Automatic support for regression testing is
supported.

I will be creating a wiki page to describe the new facility. These
changes are backward compatible with the existing tests.

Examples are now built the same as tests. They can still be built
within the vtk tree or externally.

Currently, only the examples have been changed to work with the new
facility. I have tested the new approach on many exiting Testing/Cxx
tests, but have not checked in the change to the tests.

I'll monitor the dashboard closely this week to fix any problem.

Bill
_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the VTK FAQ at:
http://www.vtk.org/Wiki/VTK_FAQ

Follow this link to subscribe/unsubscribe:
http://www.vtk.org/mailman/listinfo/vtkusers



More information about the vtk-developers mailing list