ENH: Add a convenient testing class for observing errors

Adds a new class vtkTest::ErrorObserver that facilitates catching
errors and warnings in vtk tests. This mechanism can be used in vtk
tests to cover errors and warnings.

The original functionality was in vtkTestImagingHybrid.

Change-Id: If527f7e3896a99377d54f453dd9e7fb51e034669
ENH: Coverage is 100%

Using the new vtkTest::ErrorObserver increase coverage to 100%.

Change-Id: I012b5fef33f41d3108477de0a7a501cc9250d396
BUG: Fix 64-bit indexing, extent errors in CopyStructuredData.

The offset for sub-extents was always computed as zero, instead
of the proper offset from the full extent to the sub extent.
Also, the data copy segfaulted for vtkStringArray data.

Increment math was done with 32-bit ints instead of vtkIdType.

Add a test, because there was none.

Change-Id: I6979a79b1226036c133d8a6e991620a978ea470d
Merge topic 'TestErrorObserver' into master

28332fd4 ENH: Coverage is 100%
e256de28 ENH: Add a convenient testing class for observing errors
COMP: fixed dead store warned about by clang static analyzer

In this case, it revealed a more than a harmless dead store, but a copy-paste bug where incorrect behaviour was occurring (at least I think).

Change-Id: I1ac6c47a225c79c9fb8f248d309e787dcd2f88b7
BUG: fixed memory leak warned about by clang static analyzer.

Change-Id: Ic4334f509e64697c7eecc73ad0e78ac03e1a7403
BUG: changed a deliberate a null pointer deference to an assert.

null deference is undefined behaviour, so never acceptable. warned about by clang static analyzer.

Change-Id: Ib48790fc0e971443c375df8f5194fbba4a33847a
BUG: switch statement was missing many 'break's.

Found by clang static analyzer.

Change-Id: Ide3b43fd6206accaa7be2f4265b90de9451e0296
COMP: added assert to deal with clang static analyzer warning

The assert is not merely a warning suppression, but will catch potential invalid behaviour at runtime.

Change-Id: I3cd2e9f4f1824b315e8624caaf8653397e00d42e
COMP: fixed several dead stores warned about by clang static analyzer

Fixed several places where a value was uselessly (but harmlessly) stored to a variable but then overwritten shortly thereafter or just never used. Where possible, my favoured solution was to declare and initialise at the same time, instead of K&R C style declarations at the top of the function.

Change-Id: I87f6a35d64ed28ef1c89e282ac36ffab5fa522b3
Silence redefinition warnings in matplotlib.

Change-Id: I9612c447a7f8b376940e9cb159647f535b6384f5
Fix warning.

/Users/builder/external/VTK/Domains/Chemistry/Testing/Cxx/TestPeriodicTable.cxx:42:29:
warning: expression which evaluates to zero treated as a null pointer
constant of type 'const char *' [-Wnon-literal-null-conversion]
  const char *nullString = {'\0'};

Change-Id: Ic73d1fd1bbdbb172d4a6fa2995aa3d39f10ed8e1
Merge topic 'WarningFixes' into master

d5402712 Fix warning.
668cc25b Silence redefinition warnings in matplotlib.
Merge topic 'clang-analyzer-fixes' into master

818eedcc COMP: fixed several dead stores warned about by clang static analyzer
2d081989 COMP: added assert to deal with clang static analyzer warning
db77d961 BUG: switch statement was missing many 'break's.
0450d395 BUG: changed a deliberate a null pointer deference to an assert.
322f5d31 BUG: fixed memory leak warned about by clang static analyzer.
609ca2fe COMP: fixed dead store warned about by clang static analyzer
Merge topic 'CopyStructuredDataAttributes' into master

67478f3c BUG: Fix 64-bit indexing, extent errors in CopyStructuredData.
Remove new object return by vtkColorSeries::BuildLookupTable.

The BuildLookupTable() method would return a new vtkLookupTable object
if its argument was NULL, else it would return an existing object.
Split it into a BuildLookupTable() method and a CreateLookupTable()
method, so that the Create method that returns a new object can be
hinted for the wrappers.

Change-Id: I18d3a3697acac72c3acce24cdbab8cda159a7fe8
Merge topic 'ColorSeries-BuildLookupTable' into master

32b44694 Remove new object return by vtkColorSeries::BuildLookupTable.