From 30fc1411bb74484c44dabe87fce2e1be59011c61 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Sun, 17 Jan 2016 00:14:09 +0100 Subject: [PATCH] Adapted to Corrade changes. --- src/Magnum/Math/Test/ComplexTest.cpp | 6 +-- src/Magnum/Math/Test/DualComplexTest.cpp | 4 +- src/Magnum/Math/Test/DualQuaternionTest.cpp | 8 +-- src/Magnum/Math/Test/Matrix3Test.cpp | 10 ++-- src/Magnum/Math/Test/Matrix4Test.cpp | 12 ++--- src/Magnum/Math/Test/MatrixTest.cpp | 2 +- src/Magnum/Math/Test/QuaternionTest.cpp | 14 +++--- src/Magnum/Math/Test/VectorTest.cpp | 4 +- .../Test/CombineIndexedArraysTest.cpp | 2 +- .../MeshTools/Test/CompressIndicesTest.cpp | 2 +- src/Magnum/MeshTools/Test/FlipNormalsTest.cpp | 2 +- .../Test/GenerateFlatNormalsTest.cpp | 2 +- src/Magnum/MeshTools/Test/InterleaveTest.cpp | 2 +- src/Magnum/MeshTools/Test/SubdivideTest.cpp | 2 +- .../Test/DualComplexTransformationTest.cpp | 4 +- .../Test/DualQuaternionTransformationTest.cpp | 6 +-- src/Magnum/SceneGraph/Test/ObjectTest.cpp | 4 +- .../Test/RigidMatrixTransformation2DTest.cpp | 6 +-- .../Test/RigidMatrixTransformation3DTest.cpp | 6 +-- .../Test/TranslationTransformationTest.cpp | 2 +- .../Test/AbstractShaderProgramGLTest.cpp | 4 +- src/Magnum/Test/DebugOutputGLTest.cpp | 4 +- src/Magnum/Test/ResourceManagerTest.cpp | 6 +-- src/Magnum/TextureTools/Test/AtlasTest.cpp | 2 +- src/MagnumPlugins/ObjImporter/Test/Test.cpp | 50 +++++++++---------- .../Test/TgaImageConverterTest.cpp | 4 +- .../TgaImporter/Test/TgaImporterTest.cpp | 10 ++-- .../WavAudioImporter/Test/WavImporterTest.cpp | 8 +-- 28 files changed, 94 insertions(+), 94 deletions(-) diff --git a/src/Magnum/Math/Test/ComplexTest.cpp b/src/Magnum/Math/Test/ComplexTest.cpp index 7da891290..4232cf1f6 100644 --- a/src/Magnum/Math/Test/ComplexTest.cpp +++ b/src/Magnum/Math/Test/ComplexTest.cpp @@ -302,7 +302,7 @@ void ComplexTest::inverted() { void ComplexTest::invertedNormalized() { std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; Complex a(-0.6f, 0.8f); Complex b(-0.6f, -0.8f); @@ -318,7 +318,7 @@ void ComplexTest::invertedNormalized() { void ComplexTest::angle() { std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; Math::angle(Complex(1.5f, -2.0f).normalized(), {-4.0f, 3.5f}); CORRADE_COMPARE(o.str(), "Math::angle(): complex numbers must be normalized\n"); @@ -356,7 +356,7 @@ void ComplexTest::matrix() { CORRADE_COMPARE(a.toMatrix(), m); std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; Complex::fromMatrix(m*2); CORRADE_COMPARE(o.str(), "Math::Complex::fromMatrix(): the matrix is not orthogonal\n"); diff --git a/src/Magnum/Math/Test/DualComplexTest.cpp b/src/Magnum/Math/Test/DualComplexTest.cpp index 134f2bea3..5d8056d13 100644 --- a/src/Magnum/Math/Test/DualComplexTest.cpp +++ b/src/Magnum/Math/Test/DualComplexTest.cpp @@ -274,7 +274,7 @@ void DualComplexTest::invertedNormalized() { DualComplex b({-0.316228f, -0.9486831f}, {3.320391f, 2.05548f}); std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; DualComplex({-1.0f, -2.5f}, {}).invertedNormalized(); CORRADE_COMPARE(o.str(), "Math::Complex::invertedNormalized(): complex number must be normalized\n"); @@ -322,7 +322,7 @@ void DualComplexTest::matrix() { CORRADE_COMPARE(a.toMatrix(), m); std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; DualComplex::fromMatrix(m*2); CORRADE_COMPARE(o.str(), "Math::DualComplex::fromMatrix(): the matrix doesn't represent rigid transformation\n"); diff --git a/src/Magnum/Math/Test/DualQuaternionTest.cpp b/src/Magnum/Math/Test/DualQuaternionTest.cpp index c4f98c6b5..f057f5bf0 100644 --- a/src/Magnum/Math/Test/DualQuaternionTest.cpp +++ b/src/Magnum/Math/Test/DualQuaternionTest.cpp @@ -294,7 +294,7 @@ void DualQuaternionTest::invertedNormalized() { DualQuaternion b({{-1.0f, -2.0f, -3.0f}, -4.0f}, {{-2.5f, 3.1f, -3.3f}, 2.0f}); std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; CORRADE_COMPARE(a.invertedNormalized(), DualQuaternion()); CORRADE_COMPARE(o.str(), "Math::DualQuaternion::invertedNormalized(): dual quaternion must be normalized\n"); @@ -307,7 +307,7 @@ void DualQuaternionTest::invertedNormalized() { void DualQuaternionTest::rotation() { std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; Vector3 axis(1.0f/Constants::sqrt3()); @@ -357,7 +357,7 @@ void DualQuaternionTest::matrix() { CORRADE_COMPARE((-q).toMatrix(), m); std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; DualQuaternion::fromMatrix(m*2); CORRADE_COMPARE(o.str(), "Math::DualQuaternion::fromMatrix(): the matrix doesn't represent rigid transformation\n"); @@ -389,7 +389,7 @@ void DualQuaternionTest::transformPointNormalized() { Vector3 v(0.0f, -3.6f, 0.7f); std::ostringstream o; - Corrade::Utility::Error::setOutput(&o); + Error redirectError{&o}; (a*Dual(2)).transformPointNormalized(v); CORRADE_COMPARE(o.str(), "Math::DualQuaternion::transformPointNormalized(): dual quaternion must be normalized\n"); diff --git a/src/Magnum/Math/Test/Matrix3Test.cpp b/src/Magnum/Math/Test/Matrix3Test.cpp index 9d8249f27..153c46c1d 100644 --- a/src/Magnum/Math/Test/Matrix3Test.cpp +++ b/src/Magnum/Math/Test/Matrix3Test.cpp @@ -258,7 +258,7 @@ void Matrix3Test::rotation() { void Matrix3Test::reflection() { std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; Vector2 normal(-1.0f, 2.0f); @@ -332,7 +332,7 @@ void Matrix3Test::rotationScalingPart() { void Matrix3Test::rotationNormalizedPart() { std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; Matrix3 a({1.0f, 0.0f, 8.0f}, {1.0f, 0.1f, 7.0f}, @@ -368,7 +368,7 @@ void Matrix3Test::rotationPart() { /* Fails on non-uniform scaling */ std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; Matrix2x2 rotationScaling2 = (rotation*Matrix3::scaling(Vector2::yScale(3.5f))).rotation(); CORRADE_COMPARE(o.str(), "Math::Matrix3::rotation(): the matrix doesn't have uniform scaling\n"); CORRADE_COMPARE(rotationScaling2, Matrix2x2()); @@ -382,7 +382,7 @@ void Matrix3Test::uniformScalingPart() { /* Fails on non-uniform scaling */ std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; const Float nonUniformScaling = (rotation*Matrix3::scaling(Vector2::yScale(3.0f))).uniformScaling(); CORRADE_COMPARE(o.str(), "Math::Matrix3::uniformScaling(): the matrix doesn't have uniform scaling\n"); CORRADE_COMPARE(nonUniformScaling, 0.0f); @@ -419,7 +419,7 @@ void Matrix3Test::invertedRigid() { Matrix3::rotation(Deg(74.0f)); std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; (2*actual).invertedRigid(); CORRADE_COMPARE(o.str(), "Math::Matrix3::invertedRigid(): the matrix doesn't represent rigid transformation\n"); diff --git a/src/Magnum/Math/Test/Matrix4Test.cpp b/src/Magnum/Math/Test/Matrix4Test.cpp index 9ebd4b2ac..c6951bcfc 100644 --- a/src/Magnum/Math/Test/Matrix4Test.cpp +++ b/src/Magnum/Math/Test/Matrix4Test.cpp @@ -287,7 +287,7 @@ void Matrix4Test::scaling() { void Matrix4Test::rotation() { std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; CORRADE_COMPARE(Matrix4::rotation(Deg(-74.0f), {-1.0f, 2.0f, 2.0f}), Matrix4()); CORRADE_COMPARE(o.str(), "Math::Matrix4::rotation(): axis must be normalized\n"); @@ -328,7 +328,7 @@ void Matrix4Test::rotationZ() { void Matrix4Test::reflection() { std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; Vector3 normal(-1.0f, 2.0f, 2.0f); @@ -434,7 +434,7 @@ void Matrix4Test::rotationScalingPart() { void Matrix4Test::rotationNormalizedPart() { std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; Matrix4 a({0.0f, 0.0f, 1.0f, 4.0f}, {1.0f, 0.0f, 0.0f, 3.0f}, @@ -473,7 +473,7 @@ void Matrix4Test::rotationPart() { /* Fails on non-uniform scaling */ std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; Matrix3x3 rotationScaling2 = (rotation*Matrix4::scaling(Vector3::yScale(3.5f))).rotation(); CORRADE_COMPARE(o.str(), "Math::Matrix4::rotation(): the matrix doesn't have uniform scaling\n"); CORRADE_COMPARE(rotationScaling2, Matrix3x3()); @@ -487,7 +487,7 @@ void Matrix4Test::uniformScalingPart() { /* Fails on non-uniform scaling */ std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; const Float nonUniformScaling = (rotation*Matrix4::scaling(Vector3::yScale(3.0f))).uniformScaling(); CORRADE_COMPARE(o.str(), "Math::Matrix4::uniformScaling(): the matrix doesn't have uniform scaling\n"); CORRADE_COMPARE(nonUniformScaling, 0.0f); @@ -530,7 +530,7 @@ void Matrix4Test::invertedRigid() { Matrix4::rotation(Deg(74.0f), Vector3(-1.0f, 0.5f, 2.0f).normalized()); std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; (2*actual).invertedRigid(); CORRADE_COMPARE(o.str(), "Math::Matrix4::invertedRigid(): the matrix doesn't represent rigid transformation\n"); diff --git a/src/Magnum/Math/Test/MatrixTest.cpp b/src/Magnum/Math/Test/MatrixTest.cpp index 810307ecc..68a1506d5 100644 --- a/src/Magnum/Math/Test/MatrixTest.cpp +++ b/src/Magnum/Math/Test/MatrixTest.cpp @@ -283,7 +283,7 @@ void MatrixTest::inverted() { void MatrixTest::invertedOrthogonal() { std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; Matrix3x3 a(Vector3(Constants::sqrt3()/2.0f, 0.5f, 0.0f), Vector3(-0.5f, Constants::sqrt3()/2.0f, 0.0f), diff --git a/src/Magnum/Math/Test/QuaternionTest.cpp b/src/Magnum/Math/Test/QuaternionTest.cpp index b0f428ec3..7350d90ce 100644 --- a/src/Magnum/Math/Test/QuaternionTest.cpp +++ b/src/Magnum/Math/Test/QuaternionTest.cpp @@ -300,7 +300,7 @@ void QuaternionTest::invertedNormalized() { Quaternion a = Quaternion({1.0f, 3.0f, -2.0f}, -4.0f); std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; a.invertedNormalized(); CORRADE_COMPARE(o.str(), "Math::Quaternion::invertedNormalized(): quaternion must be normalized\n"); @@ -313,7 +313,7 @@ void QuaternionTest::invertedNormalized() { void QuaternionTest::rotation() { std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; Vector3 axis(1.0f/Constants::sqrt3()); @@ -340,7 +340,7 @@ void QuaternionTest::rotation() { void QuaternionTest::angle() { std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; Math::angle(Quaternion({1.0f, 2.0f, -3.0f}, -4.0f).normalized(), {{4.0f, -3.0f, 2.0f}, -1.0f}); CORRADE_COMPARE(o.str(), "Math::angle(): quaternions must be normalized\n"); @@ -367,7 +367,7 @@ void QuaternionTest::matrix() { CORRADE_COMPARE((-q).toMatrix(), m); std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; Quaternion::fromMatrix(m*2); CORRADE_COMPARE(o.str(), "Math::Quaternion::fromMatrix(): the matrix is not orthogonal\n"); @@ -404,7 +404,7 @@ void QuaternionTest::lerp() { Quaternion b = Quaternion::rotation(Deg(23.0f), Vector3::xAxis()); std::ostringstream o; - Corrade::Utility::Error::setOutput(&o); + Error redirectError{&o}; Math::lerp(a*3.0f, b, 0.35f); CORRADE_COMPARE(o.str(), "Math::lerp(): quaternions must be normalized\n"); @@ -422,7 +422,7 @@ void QuaternionTest::slerp() { Quaternion b = Quaternion::rotation(Deg(23.0f), Vector3::xAxis()); std::ostringstream o; - Corrade::Utility::Error::setOutput(&o); + Error redirectError{&o}; Math::slerp(a*3.0f, b, 0.35f); CORRADE_COMPARE(o.str(), "Math::slerp(): quaternions must be normalized\n"); @@ -455,7 +455,7 @@ void QuaternionTest::transformVectorNormalized() { Vector3 v(5.0f, -3.6f, 0.7f); std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; (a*2).transformVectorNormalized(v); CORRADE_COMPARE(o.str(), "Math::Quaternion::transformVectorNormalized(): quaternion must be normalized\n"); diff --git a/src/Magnum/Math/Test/VectorTest.cpp b/src/Magnum/Math/Test/VectorTest.cpp index f49b54eb4..6966dcd9a 100644 --- a/src/Magnum/Math/Test/VectorTest.cpp +++ b/src/Magnum/Math/Test/VectorTest.cpp @@ -441,7 +441,7 @@ void VectorTest::projected() { void VectorTest::projectedOntoNormalized() { std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; Vector3 vector(1.0f, 2.0f, 3.0f); Vector3 line(1.0f, -1.0f, 0.5f); @@ -456,7 +456,7 @@ void VectorTest::projectedOntoNormalized() { void VectorTest::angle() { std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; Math::angle(Vector3(2.0f, 3.0f, 4.0f).normalized(), {1.0f, -2.0f, 3.0f}); CORRADE_COMPARE(o.str(), "Math::angle(): vectors must be normalized\n"); diff --git a/src/Magnum/MeshTools/Test/CombineIndexedArraysTest.cpp b/src/Magnum/MeshTools/Test/CombineIndexedArraysTest.cpp index d40dfecb4..2c69ead05 100644 --- a/src/Magnum/MeshTools/Test/CombineIndexedArraysTest.cpp +++ b/src/Magnum/MeshTools/Test/CombineIndexedArraysTest.cpp @@ -48,7 +48,7 @@ CombineIndexedArraysTest::CombineIndexedArraysTest() { void CombineIndexedArraysTest::wrongIndexCount() { std::stringstream ss; - Error::setOutput(&ss); + Error redirectError{&ss}; std::vector a{0, 1, 0}; std::vector b{3, 4}; std::vector result = MeshTools::combineIndexArrays({a, b}); diff --git a/src/Magnum/MeshTools/Test/CompressIndicesTest.cpp b/src/Magnum/MeshTools/Test/CompressIndicesTest.cpp index 3a6125287..3c26c46c5 100644 --- a/src/Magnum/MeshTools/Test/CompressIndicesTest.cpp +++ b/src/Magnum/MeshTools/Test/CompressIndicesTest.cpp @@ -120,7 +120,7 @@ void CompressIndicesTest::compressAsShort() { TestSuite::Compare::Container); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; MeshTools::compressIndicesAs({65536}); CORRADE_COMPARE(out.str(), "MeshTools::compressIndicesAs(): type too small to represent value 65536\n"); } diff --git a/src/Magnum/MeshTools/Test/FlipNormalsTest.cpp b/src/Magnum/MeshTools/Test/FlipNormalsTest.cpp index 578836b3f..af2120bb2 100644 --- a/src/Magnum/MeshTools/Test/FlipNormalsTest.cpp +++ b/src/Magnum/MeshTools/Test/FlipNormalsTest.cpp @@ -47,7 +47,7 @@ FlipNormalsTest::FlipNormalsTest() { void FlipNormalsTest::wrongIndexCount() { std::stringstream ss; - Error::setOutput(&ss); + Error redirectError{&ss}; std::vector indices{0, 1}; MeshTools::flipFaceWinding(indices); diff --git a/src/Magnum/MeshTools/Test/GenerateFlatNormalsTest.cpp b/src/Magnum/MeshTools/Test/GenerateFlatNormalsTest.cpp index df1c3ae87..639349362 100644 --- a/src/Magnum/MeshTools/Test/GenerateFlatNormalsTest.cpp +++ b/src/Magnum/MeshTools/Test/GenerateFlatNormalsTest.cpp @@ -45,7 +45,7 @@ GenerateFlatNormalsTest::GenerateFlatNormalsTest() { void GenerateFlatNormalsTest::wrongIndexCount() { std::stringstream ss; - Error::setOutput(&ss); + Error redirectError{&ss}; std::vector indices; std::vector normals; std::tie(indices, normals) = MeshTools::generateFlatNormals({ diff --git a/src/Magnum/MeshTools/Test/InterleaveTest.cpp b/src/Magnum/MeshTools/Test/InterleaveTest.cpp index 9616fd5c4..dcc3ae5a3 100644 --- a/src/Magnum/MeshTools/Test/InterleaveTest.cpp +++ b/src/Magnum/MeshTools/Test/InterleaveTest.cpp @@ -58,7 +58,7 @@ InterleaveTest::InterleaveTest() { void InterleaveTest::attributeCount() { std::stringstream ss; - Error::setOutput(&ss); + Error redirectError{&ss}; CORRADE_COMPARE((Implementation::AttributeCount{}(std::vector{0, 1, 2}, std::vector{0, 1, 2, 3, 4, 5})), std::size_t(0)); CORRADE_COMPARE(ss.str(), "MeshTools::interleave(): attribute arrays don't have the same length, expected 3 but got 6\n"); diff --git a/src/Magnum/MeshTools/Test/SubdivideTest.cpp b/src/Magnum/MeshTools/Test/SubdivideTest.cpp index 5a70aad95..f966a3ea9 100644 --- a/src/Magnum/MeshTools/Test/SubdivideTest.cpp +++ b/src/Magnum/MeshTools/Test/SubdivideTest.cpp @@ -53,7 +53,7 @@ SubdivideTest::SubdivideTest() { void SubdivideTest::wrongIndexCount() { std::stringstream ss; - Error::setOutput(&ss); + Error redirectError{&ss}; std::vector positions; std::vector indices{0, 1}; diff --git a/src/Magnum/SceneGraph/Test/DualComplexTransformationTest.cpp b/src/Magnum/SceneGraph/Test/DualComplexTransformationTest.cpp index 0dfacc46b..572229231 100644 --- a/src/Magnum/SceneGraph/Test/DualComplexTransformationTest.cpp +++ b/src/Magnum/SceneGraph/Test/DualComplexTransformationTest.cpp @@ -92,7 +92,7 @@ void DualComplexTransformationTest::setTransformation() { /* Can't transform with non-rigid transformation */ std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; o.setTransformation(DualComplex({1.0f, 2.0f}, {})); CORRADE_COMPARE(out.str(), "SceneGraph::DualComplexTransformation::setTransformation(): the dual complex number is not normalized\n"); @@ -124,7 +124,7 @@ void DualComplexTransformationTest::transform() { /* Can't transform with non-rigid transformation */ Object2D o; std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; o.transform(DualComplex({1.0f, 2.0f}, {})); CORRADE_COMPARE(out.str(), "SceneGraph::DualComplexTransformation::transform(): the dual complex number is not normalized\n"); } { diff --git a/src/Magnum/SceneGraph/Test/DualQuaternionTransformationTest.cpp b/src/Magnum/SceneGraph/Test/DualQuaternionTransformationTest.cpp index 35e7101d1..c0298b37d 100644 --- a/src/Magnum/SceneGraph/Test/DualQuaternionTransformationTest.cpp +++ b/src/Magnum/SceneGraph/Test/DualQuaternionTransformationTest.cpp @@ -66,7 +66,7 @@ DualQuaternionTransformationTest::DualQuaternionTransformationTest() { void DualQuaternionTransformationTest::fromMatrix() { std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; Implementation::Transformation::fromMatrix(Matrix4::scaling(Vector3(4.0f))); CORRADE_COMPARE(o.str(), "SceneGraph::DualQuaternionTransformation: the matrix doesn't represent rigid transformation\n"); @@ -97,7 +97,7 @@ void DualQuaternionTransformationTest::setTransformation() { /* Can't transform with non-rigid transformation */ std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; o.setTransformation(DualQuaternion({{1.0f, 2.0f, 3.0f}, 4.0f}, {})); CORRADE_COMPARE(out.str(), "SceneGraph::DualQuaternionTransformation::setTransformation(): the dual quaternion is not normalized\n"); @@ -130,7 +130,7 @@ void DualQuaternionTransformationTest::transform() { /* Can't transform with non-rigid transformation */ Object3D o; std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; o.transform(DualQuaternion({{1.0f, 2.0f, 3.0f}, 4.0f}, {})); CORRADE_COMPARE(out.str(), "SceneGraph::DualQuaternionTransformation::transform(): the dual quaternion is not normalized\n"); } { diff --git a/src/Magnum/SceneGraph/Test/ObjectTest.cpp b/src/Magnum/SceneGraph/Test/ObjectTest.cpp index d084482e9..87447e7fe 100644 --- a/src/Magnum/SceneGraph/Test/ObjectTest.cpp +++ b/src/Magnum/SceneGraph/Test/ObjectTest.cpp @@ -172,7 +172,7 @@ void ObjectTest::setParentKeepTransformation() { /* Old parent and new parent must share the same scene */ std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; Scene3D scene; childOne->setParentKeepTransformation(&scene); CORRADE_COMPARE(o.str(), "SceneGraph::Object::setParentKeepTransformation(): both parents must be in the same scene\n"); @@ -278,7 +278,7 @@ void ObjectTest::transformationsRelative() { void ObjectTest::transformationsOrphan() { std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; /* Transformation of objects not part of the same scene */ Scene3D s; diff --git a/src/Magnum/SceneGraph/Test/RigidMatrixTransformation2DTest.cpp b/src/Magnum/SceneGraph/Test/RigidMatrixTransformation2DTest.cpp index 8fca0cba9..c1914fbfe 100644 --- a/src/Magnum/SceneGraph/Test/RigidMatrixTransformation2DTest.cpp +++ b/src/Magnum/SceneGraph/Test/RigidMatrixTransformation2DTest.cpp @@ -68,7 +68,7 @@ RigidMatrixTransformation2DTest::RigidMatrixTransformation2DTest() { void RigidMatrixTransformation2DTest::fromMatrix() { std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; Implementation::Transformation::fromMatrix(Matrix3::scaling(Vector2(4.0f))); CORRADE_COMPARE(o.str(), "SceneGraph::RigidMatrixTransformation2D: the matrix doesn't represent rigid transformation\n"); @@ -97,7 +97,7 @@ void RigidMatrixTransformation2DTest::setTransformation() { /* Can't transform with non-rigid transformation */ std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; o.setTransformation(Matrix3::scaling(Vector2(3.0f))); CORRADE_COMPARE(out.str(), "SceneGraph::RigidMatrixTransformation2D::setTransformation(): the matrix doesn't represent rigid transformation\n"); @@ -129,7 +129,7 @@ void RigidMatrixTransformation2DTest::transform() { /* Can't transform with non-rigid transformation */ Object2D o; std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; o.transform(Matrix3::scaling(Vector2(3.0f))); CORRADE_COMPARE(out.str(), "SceneGraph::RigidMatrixTransformation2D::transform(): the matrix doesn't represent rigid transformation\n"); } { diff --git a/src/Magnum/SceneGraph/Test/RigidMatrixTransformation3DTest.cpp b/src/Magnum/SceneGraph/Test/RigidMatrixTransformation3DTest.cpp index a89758013..f1c3c8ddb 100644 --- a/src/Magnum/SceneGraph/Test/RigidMatrixTransformation3DTest.cpp +++ b/src/Magnum/SceneGraph/Test/RigidMatrixTransformation3DTest.cpp @@ -68,7 +68,7 @@ RigidMatrixTransformation3DTest::RigidMatrixTransformation3DTest() { void RigidMatrixTransformation3DTest::fromMatrix() { std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; Implementation::Transformation::fromMatrix(Matrix4::scaling(Vector3(4.0f))); CORRADE_COMPARE(o.str(), "SceneGraph::RigidMatrixTransformation3D: the matrix doesn't represent rigid transformation\n"); @@ -97,7 +97,7 @@ void RigidMatrixTransformation3DTest::setTransformation() { /* Can't transform with non-rigid transformation */ std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; o.setTransformation(Matrix4::scaling(Vector3(3.0f))); CORRADE_COMPARE(out.str(), "SceneGraph::RigidMatrixTransformation3D::setTransformation(): the matrix doesn't represent rigid transformation\n"); @@ -130,7 +130,7 @@ void RigidMatrixTransformation3DTest::transform() { /* Can't transform with non-rigid transformation */ Object3D o; std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; o.transform(Matrix4::scaling(Vector3(3.0f))); CORRADE_COMPARE(out.str(), "SceneGraph::RigidMatrixTransformation3D::transform(): the matrix doesn't represent rigid transformation\n"); } { diff --git a/src/Magnum/SceneGraph/Test/TranslationTransformationTest.cpp b/src/Magnum/SceneGraph/Test/TranslationTransformationTest.cpp index 6d6564ddd..ada40127a 100644 --- a/src/Magnum/SceneGraph/Test/TranslationTransformationTest.cpp +++ b/src/Magnum/SceneGraph/Test/TranslationTransformationTest.cpp @@ -67,7 +67,7 @@ TranslationTransformationTest::TranslationTransformationTest() { void TranslationTransformationTest::fromMatrix() { std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; Implementation::Transformation::fromMatrix(Matrix3::scaling(Vector2(4.0f))); CORRADE_COMPARE(o.str(), "SceneGraph::TranslationTransformation: the matrix doesn't represent pure translation\n"); diff --git a/src/Magnum/Test/AbstractShaderProgramGLTest.cpp b/src/Magnum/Test/AbstractShaderProgramGLTest.cpp index 649042a9e..1bc1dd612 100644 --- a/src/Magnum/Test/AbstractShaderProgramGLTest.cpp +++ b/src/Magnum/Test/AbstractShaderProgramGLTest.cpp @@ -387,7 +387,7 @@ void AbstractShaderProgramGLTest::uniformNotFound() { CORRADE_VERIFY(program.link()); std::ostringstream out; - Warning::setOutput(&out); + Warning redirectWarning{&out}; program.uniformLocation("nonexistent"); program.uniformLocation(std::string{"another"}); CORRADE_COMPARE(out.str(), @@ -579,7 +579,7 @@ void AbstractShaderProgramGLTest::uniformBlockIndexNotFound() { CORRADE_VERIFY(program.link()); std::ostringstream out; - Warning::setOutput(&out); + Warning redirectWarning{&out}; program.uniformBlockIndex("nonexistent"); program.uniformBlockIndex(std::string{"another"}); CORRADE_COMPARE(out.str(), diff --git a/src/Magnum/Test/DebugOutputGLTest.cpp b/src/Magnum/Test/DebugOutputGLTest.cpp index 2aa8fd2be..d0d2f10c9 100644 --- a/src/Magnum/Test/DebugOutputGLTest.cpp +++ b/src/Magnum/Test/DebugOutputGLTest.cpp @@ -103,7 +103,7 @@ void DebugOutputGLTest::message() { /* Need to be careful, because the test runner is using debug output too */ std::ostringstream out; - Debug::setOutput(&out); + Debug redirectDebug{&out}; DebugMessage::insert(DebugMessage::Source::Application, DebugMessage::Type::Marker, 1337, DebugOutput::Severity::High, "Hello from OpenGL command stream!"); @@ -145,7 +145,7 @@ void DebugOutputGLTest::group() { /* Need to be careful, because the test runner is using debug output too */ std::ostringstream out; - Debug::setOutput(&out); + Debug redirectDebug{&out}; { DebugGroup g1{DebugGroup::Source::Application, 42, "Automatic debug group"}; DebugGroup g2; diff --git a/src/Magnum/Test/ResourceManagerTest.cpp b/src/Magnum/Test/ResourceManagerTest.cpp index 2585eb35a..d06060046 100644 --- a/src/Magnum/Test/ResourceManagerTest.cpp +++ b/src/Magnum/Test/ResourceManagerTest.cpp @@ -126,7 +126,7 @@ void ResourceManagerTest::stateDisallowed() { ResourceManager rm; std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; rm.set("data", Data(), ResourceDataState::Loading, ResourcePolicy::Resident); CORRADE_COMPARE(out.str(), "ResourceManager::set(): data should be null if and only if state is NotFound or Loading\n"); @@ -156,7 +156,7 @@ void ResourceManagerTest::basic() { /* Cannot change already final resource */ std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; rm.set(answerKey, 43, ResourceDataState::Mutable, ResourcePolicy::Resident); CORRADE_COMPARE(*theAnswer, 42); CORRADE_COMPARE(out.str(), "ResourceManager::set(): cannot change already final resource " + answerKey.hexString() + '\n'); @@ -256,7 +256,7 @@ void ResourceManagerTest::clearWhileReferenced() { /* Should cover also the destruction case */ std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; ResourceManager rm; rm.set("blah", Int()); diff --git a/src/Magnum/TextureTools/Test/AtlasTest.cpp b/src/Magnum/TextureTools/Test/AtlasTest.cpp index 8ba7ce764..1f33bd143 100644 --- a/src/Magnum/TextureTools/Test/AtlasTest.cpp +++ b/src/Magnum/TextureTools/Test/AtlasTest.cpp @@ -82,7 +82,7 @@ void AtlasTest::createEmpty() { void AtlasTest::createTooSmall() { std::ostringstream o; - Error::setOutput(&o); + Error redirectError{&o}; std::vector atlas = TextureTools::atlas({64, 32}, { {8, 16}, diff --git a/src/MagnumPlugins/ObjImporter/Test/Test.cpp b/src/MagnumPlugins/ObjImporter/Test/Test.cpp index d307464be..6583c5662 100644 --- a/src/MagnumPlugins/ObjImporter/Test/Test.cpp +++ b/src/MagnumPlugins/ObjImporter/Test/Test.cpp @@ -206,7 +206,7 @@ void ObjImporterTest::mixedPrimitives() { CORRADE_COMPARE(importer.mesh3DCount(), 1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(0)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): mixed primitive MeshPrimitive::Points and MeshPrimitive::Lines\n"); } @@ -406,7 +406,7 @@ void ObjImporterTest::wrongFloat() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): error while converting numeric data\n"); } @@ -418,7 +418,7 @@ void ObjImporterTest::wrongInteger() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): error while converting numeric data\n"); } @@ -430,7 +430,7 @@ void ObjImporterTest::unmergedIndexOutOfRange() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): index out of range\n"); } @@ -442,7 +442,7 @@ void ObjImporterTest::mergedIndexOutOfRange() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): index out of range\n"); } @@ -454,7 +454,7 @@ void ObjImporterTest::zeroIndex() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): index out of range\n"); } @@ -494,7 +494,7 @@ void ObjImporterTest::unsupportedOptionalPositionCoordinate() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): homogeneous coordinates are not supported\n"); } @@ -506,7 +506,7 @@ void ObjImporterTest::unsupportedOptionalTextureCoordinate() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): 3D texture coordinates are not supported\n"); } @@ -518,7 +518,7 @@ void ObjImporterTest::shortFloatData() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): invalid float array size\n"); } @@ -530,7 +530,7 @@ void ObjImporterTest::longFloatData() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): invalid float array size\n"); } @@ -542,7 +542,7 @@ void ObjImporterTest::longOptionalFloatData() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): invalid float array size\n"); } @@ -554,7 +554,7 @@ void ObjImporterTest::longIndexData() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): invalid index data\n"); } @@ -566,7 +566,7 @@ void ObjImporterTest::wrongPointIndexData() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): wrong index count for point\n"); } @@ -578,7 +578,7 @@ void ObjImporterTest::wrongLineIndexData() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): wrong index count for line\n"); } @@ -590,7 +590,7 @@ void ObjImporterTest::wrongTriangleIndexData() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): wrong index count for triangle\n"); } @@ -602,7 +602,7 @@ void ObjImporterTest::polygonIndexData() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): polygons are not supported\n"); } @@ -614,7 +614,7 @@ void ObjImporterTest::missingPositionData() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): incomplete position data\n"); } @@ -626,7 +626,7 @@ void ObjImporterTest::missingPositionIndices() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): incomplete position data\n"); } @@ -638,7 +638,7 @@ void ObjImporterTest::missingNormalData() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): incomplete normal data\n"); } @@ -650,7 +650,7 @@ void ObjImporterTest::missingNormalIndices() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): incomplete normal data\n"); } @@ -662,7 +662,7 @@ void ObjImporterTest::missingTextureCoordinateData() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): incomplete texture coordinate data\n"); } @@ -674,7 +674,7 @@ void ObjImporterTest::missingTextureCoordinateIndices() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): incomplete texture coordinate data\n"); } @@ -686,7 +686,7 @@ void ObjImporterTest::wrongNormalIndexCount() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): some normal indices are missing\n"); } @@ -698,7 +698,7 @@ void ObjImporterTest::wrongTextureCoordinateIndexCount() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): some texture coordinate indices are missing\n"); } @@ -727,7 +727,7 @@ void ObjImporterTest::unknownKeyword() { CORRADE_VERIFY(id > -1); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; CORRADE_VERIFY(!importer.mesh3D(id)); CORRADE_COMPARE(out.str(), "Trade::ObjImporter::mesh3D(): unknown keyword bleh\n"); } diff --git a/src/MagnumPlugins/TgaImageConverter/Test/TgaImageConverterTest.cpp b/src/MagnumPlugins/TgaImageConverter/Test/TgaImageConverterTest.cpp index b71bfaa1e..6e68608f8 100644 --- a/src/MagnumPlugins/TgaImageConverter/Test/TgaImageConverterTest.cpp +++ b/src/MagnumPlugins/TgaImageConverter/Test/TgaImageConverterTest.cpp @@ -90,7 +90,7 @@ void TgaImageConverterTest::wrongFormat() { ImageView2D image(PixelFormat::RG, PixelType::UnsignedByte, {}, nullptr); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; const auto data = TgaImageConverter().exportToData(image); CORRADE_VERIFY(!data); @@ -101,7 +101,7 @@ void TgaImageConverterTest::wrongType() { ImageView2D image(PixelFormat::Red, PixelType::Float, {}, nullptr); std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; const auto data = TgaImageConverter().exportToData(image); CORRADE_VERIFY(!data); diff --git a/src/MagnumPlugins/TgaImporter/Test/TgaImporterTest.cpp b/src/MagnumPlugins/TgaImporter/Test/TgaImporterTest.cpp index 1cc780cc6..be22bff2d 100644 --- a/src/MagnumPlugins/TgaImporter/Test/TgaImporterTest.cpp +++ b/src/MagnumPlugins/TgaImporter/Test/TgaImporterTest.cpp @@ -77,7 +77,7 @@ void TgaImporterTest::openShort() { CORRADE_VERIFY(importer.openData(data)); std::ostringstream debug; - Error::setOutput(&debug); + Error redirectError{&debug}; CORRADE_VERIFY(!importer.image2D(0)); CORRADE_COMPARE(debug.str(), "Trade::TgaImporter::image2D(): the file is too short: 17 bytes\n"); } @@ -88,7 +88,7 @@ void TgaImporterTest::paletted() { CORRADE_VERIFY(importer.openData(data)); std::ostringstream debug; - Error::setOutput(&debug); + Error redirectError{&debug}; CORRADE_VERIFY(!importer.image2D(0)); CORRADE_COMPARE(debug.str(), "Trade::TgaImporter::image2D(): paletted files are not supported\n"); } @@ -99,7 +99,7 @@ void TgaImporterTest::compressed() { CORRADE_VERIFY(importer.openData(data)); std::ostringstream debug; - Error::setOutput(&debug); + Error redirectError{&debug}; CORRADE_VERIFY(!importer.image2D(0)); CORRADE_COMPARE(debug.str(), "Trade::TgaImporter::image2D(): unsupported (compressed?) image type: 9\n"); } @@ -110,7 +110,7 @@ void TgaImporterTest::colorBits16() { CORRADE_VERIFY(importer.openData(data)); std::ostringstream debug; - Error::setOutput(&debug); + Error redirectError{&debug}; CORRADE_VERIFY(!importer.image2D(0)); CORRADE_COMPARE(debug.str(), "Trade::TgaImporter::image2D(): unsupported color bits-per-pixel: 16\n"); } @@ -195,7 +195,7 @@ void TgaImporterTest::grayscaleBits16() { CORRADE_VERIFY(importer.openData(data)); std::ostringstream debug; - Error::setOutput(&debug); + Error redirectError{&debug}; CORRADE_VERIFY(!importer.image2D(0)); CORRADE_COMPARE(debug.str(), "Trade::TgaImporter::image2D(): unsupported grayscale bits-per-pixel: 16\n"); } diff --git a/src/MagnumPlugins/WavAudioImporter/Test/WavImporterTest.cpp b/src/MagnumPlugins/WavAudioImporter/Test/WavImporterTest.cpp index 6d6d03b57..e69b0d54f 100644 --- a/src/MagnumPlugins/WavAudioImporter/Test/WavImporterTest.cpp +++ b/src/MagnumPlugins/WavAudioImporter/Test/WavImporterTest.cpp @@ -58,7 +58,7 @@ WavImporterTest::WavImporterTest() { void WavImporterTest::wrongSize() { std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; WavImporter importer; CORRADE_VERIFY(!importer.openData(Containers::Array(43))); @@ -67,7 +67,7 @@ void WavImporterTest::wrongSize() { void WavImporterTest::wrongSignature() { std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; WavImporter importer; CORRADE_VERIFY(!importer.openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "wrongSignature.wav"))); @@ -76,7 +76,7 @@ void WavImporterTest::wrongSignature() { void WavImporterTest::unsupportedFormat() { std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; WavImporter importer; CORRADE_VERIFY(!importer.openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "unsupportedFormat.wav"))); @@ -85,7 +85,7 @@ void WavImporterTest::unsupportedFormat() { void WavImporterTest::unsupportedChannelCount() { std::ostringstream out; - Error::setOutput(&out); + Error redirectError{&out}; WavImporter importer; CORRADE_VERIFY(!importer.openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "unsupportedChannelCount.wav")));