From 54b48383e6af22be599d44f39f4aa33036b2d5f7 Mon Sep 17 00:00:00 2001 From: Christoph Ruegg Date: Sun, 22 Mar 2015 10:31:06 +0100 Subject: [PATCH] Tests: merge dense and sparse vector arithmetic tests, cover mixed cases --- .../Complex/DenseVectorArithmeticTheory.cs | 54 ------------------ .../Complex/SparseVectorArithmeticTheory.cs | 56 ------------------- .../Complex/VectorArithmeticTheory.cs | 17 +++++- .../Complex32/DenseVectorArithmeticTheory.cs | 48 ---------------- .../Complex32/SparseVectorArithmeticTheory.cs | 52 ----------------- .../Complex32/VectorArithmeticTheory.cs | 17 +++++- .../Double/DenseVectorArithmeticTheory.cs | 48 ---------------- .../Double/SparseVectorArithmeticTheory.cs | 50 ----------------- .../Double/VectorArithmeticTheory.cs | 17 +++++- .../Single/DenseVectorArithmeticTheory.cs | 48 ---------------- .../Single/SparseVectorArithmeticTheory.cs | 50 ----------------- .../Single/VectorArithmeticTheory.cs | 17 +++++- src/UnitTests/UnitTests.csproj | 8 --- 13 files changed, 64 insertions(+), 418 deletions(-) delete mode 100644 src/UnitTests/LinearAlgebraTests/Complex/DenseVectorArithmeticTheory.cs delete mode 100644 src/UnitTests/LinearAlgebraTests/Complex/SparseVectorArithmeticTheory.cs delete mode 100644 src/UnitTests/LinearAlgebraTests/Complex32/DenseVectorArithmeticTheory.cs delete mode 100644 src/UnitTests/LinearAlgebraTests/Complex32/SparseVectorArithmeticTheory.cs delete mode 100644 src/UnitTests/LinearAlgebraTests/Double/DenseVectorArithmeticTheory.cs delete mode 100644 src/UnitTests/LinearAlgebraTests/Double/SparseVectorArithmeticTheory.cs delete mode 100644 src/UnitTests/LinearAlgebraTests/Single/DenseVectorArithmeticTheory.cs delete mode 100644 src/UnitTests/LinearAlgebraTests/Single/SparseVectorArithmeticTheory.cs diff --git a/src/UnitTests/LinearAlgebraTests/Complex/DenseVectorArithmeticTheory.cs b/src/UnitTests/LinearAlgebraTests/Complex/DenseVectorArithmeticTheory.cs deleted file mode 100644 index 8773971f..00000000 --- a/src/UnitTests/LinearAlgebraTests/Complex/DenseVectorArithmeticTheory.cs +++ /dev/null @@ -1,54 +0,0 @@ -// -// Math.NET Numerics, part of the Math.NET Project -// http://numerics.mathdotnet.com -// http://github.com/mathnet/mathnet-numerics -// http://mathnetnumerics.codeplex.com -// -// Copyright (c) 2009-2015 Math.NET -// -// Permission is hereby granted, free of charge, to any person -// obtaining a copy of this software and associated documentation -// files (the "Software"), to deal in the Software without -// restriction, including without limitation the rights to use, -// copy, modify, merge, publish, distribute, sublicense, and/or sell -// copies of the Software, and to permit persons to whom the -// Software is furnished to do so, subject to the following -// conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -// OTHER DEALINGS IN THE SOFTWARE. -// - -using NUnit.Framework; - -namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex -{ -#if NOSYSNUMERICS - using Complex = Numerics.Complex; -#else - using Complex = System.Numerics.Complex; -#endif - - [TestFixture, Category("LA")] - public class DenseVectorArithmeticTheory : VectorArithmeticTheory - { - [Datapoints] - TestVector[] _denseVectors = - { - TestVector.Dense5, - TestVector.Dense5WithZeros - }; - - [Datapoints] - Complex[] scalars = { new Complex(2d, -1d) }; - } -} diff --git a/src/UnitTests/LinearAlgebraTests/Complex/SparseVectorArithmeticTheory.cs b/src/UnitTests/LinearAlgebraTests/Complex/SparseVectorArithmeticTheory.cs deleted file mode 100644 index 175a5a4a..00000000 --- a/src/UnitTests/LinearAlgebraTests/Complex/SparseVectorArithmeticTheory.cs +++ /dev/null @@ -1,56 +0,0 @@ -// -// Math.NET Numerics, part of the Math.NET Project -// http://numerics.mathdotnet.com -// http://github.com/mathnet/mathnet-numerics -// http://mathnetnumerics.codeplex.com -// -// Copyright (c) 2009-2015 Math.NET -// -// Permission is hereby granted, free of charge, to any person -// obtaining a copy of this software and associated documentation -// files (the "Software"), to deal in the Software without -// restriction, including without limitation the rights to use, -// copy, modify, merge, publish, distribute, sublicense, and/or sell -// copies of the Software, and to permit persons to whom the -// Software is furnished to do so, subject to the following -// conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -// OTHER DEALINGS IN THE SOFTWARE. -// - -using NUnit.Framework; - -namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex -{ -#if NOSYSNUMERICS - using Complex = Numerics.Complex; -#else - using Complex = System.Numerics.Complex; -#endif - - [TestFixture, Category("LA")] - public class SparseVectorArithmeticTheory : VectorArithmeticTheory - { - [Datapoints] - TestVector[] _sparseVectors = - { - TestVector.Sparse5, - TestVector.Sparse5WithZeros, - TestVector.Sparse5AllZeros, - TestVector.SparseMaxLengthAllZeros - }; - - [Datapoints] - Complex[] _scalars = { new Complex(2d, -1d) }; - } -} diff --git a/src/UnitTests/LinearAlgebraTests/Complex/VectorArithmeticTheory.cs b/src/UnitTests/LinearAlgebraTests/Complex/VectorArithmeticTheory.cs index daabc71b..5f39a0fa 100644 --- a/src/UnitTests/LinearAlgebraTests/Complex/VectorArithmeticTheory.cs +++ b/src/UnitTests/LinearAlgebraTests/Complex/VectorArithmeticTheory.cs @@ -40,7 +40,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex #endif [TestFixture, Category("LA")] - public abstract class VectorArithmeticTheory : VectorArithmeticTheory + public class VectorArithmeticTheory : VectorArithmeticTheory { protected override Vector GetVector(TestVector vector) { @@ -49,5 +49,20 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex protected override Complex Minus(Complex value) { return -value; } protected override Complex Add(Complex first, Complex second) { return first + second; } + + [Datapoints] + TestVector[] _vectors = + { + TestVector.Dense5, + TestVector.Dense5WithZeros, + + TestVector.Sparse5, + TestVector.Sparse5WithZeros, + TestVector.Sparse5AllZeros, + TestVector.SparseMaxLengthAllZeros + }; + + [Datapoints] + Complex[] _scalars = { new Complex(2d, -1d) }; } } diff --git a/src/UnitTests/LinearAlgebraTests/Complex32/DenseVectorArithmeticTheory.cs b/src/UnitTests/LinearAlgebraTests/Complex32/DenseVectorArithmeticTheory.cs deleted file mode 100644 index 9f9bb3be..00000000 --- a/src/UnitTests/LinearAlgebraTests/Complex32/DenseVectorArithmeticTheory.cs +++ /dev/null @@ -1,48 +0,0 @@ -// -// Math.NET Numerics, part of the Math.NET Project -// http://numerics.mathdotnet.com -// http://github.com/mathnet/mathnet-numerics -// http://mathnetnumerics.codeplex.com -// -// Copyright (c) 2009-2015 Math.NET -// -// Permission is hereby granted, free of charge, to any person -// obtaining a copy of this software and associated documentation -// files (the "Software"), to deal in the Software without -// restriction, including without limitation the rights to use, -// copy, modify, merge, publish, distribute, sublicense, and/or sell -// copies of the Software, and to permit persons to whom the -// Software is furnished to do so, subject to the following -// conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -// OTHER DEALINGS IN THE SOFTWARE. -// - -using NUnit.Framework; - -namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32 -{ - [TestFixture, Category("LA")] - public class DenseVectorArithmeticTheory : VectorArithmeticTheory - { - [Datapoints] - TestVector[] _denseVectors = - { - TestVector.Dense5, - TestVector.Dense5WithZeros - }; - - [Datapoints] - Numerics.Complex32[] _scalars = { new Numerics.Complex32(2f, -1f) }; - } -} diff --git a/src/UnitTests/LinearAlgebraTests/Complex32/SparseVectorArithmeticTheory.cs b/src/UnitTests/LinearAlgebraTests/Complex32/SparseVectorArithmeticTheory.cs deleted file mode 100644 index 8d7c0c0a..00000000 --- a/src/UnitTests/LinearAlgebraTests/Complex32/SparseVectorArithmeticTheory.cs +++ /dev/null @@ -1,52 +0,0 @@ -// -// Math.NET Numerics, part of the Math.NET Project -// http://numerics.mathdotnet.com -// http://github.com/mathnet/mathnet-numerics -// http://mathnetnumerics.codeplex.com -// -// Copyright (c) 2009-2015 Math.NET -// -// Permission is hereby granted, free of charge, to any person -// obtaining a copy of this software and associated documentation -// files (the "Software"), to deal in the Software without -// restriction, including without limitation the rights to use, -// copy, modify, merge, publish, distribute, sublicense, and/or sell -// copies of the Software, and to permit persons to whom the -// Software is furnished to do so, subject to the following -// conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -// OTHER DEALINGS IN THE SOFTWARE. -// - -using NUnit.Framework; - -namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32 -{ - using Numerics; - - [TestFixture, Category("LA")] - public class SparseVectorArithmeticTheory : VectorArithmeticTheory - { - [Datapoints] - TestVector[] _sparseVectors = - { - TestVector.Sparse5, - TestVector.Sparse5WithZeros, - TestVector.Sparse5AllZeros, - TestVector.SparseMaxLengthAllZeros - }; - - [Datapoints] - Complex32[] _scalars = { new Complex32(2f, -1f) }; - } -} diff --git a/src/UnitTests/LinearAlgebraTests/Complex32/VectorArithmeticTheory.cs b/src/UnitTests/LinearAlgebraTests/Complex32/VectorArithmeticTheory.cs index 45e0fa6e..d5a4010d 100644 --- a/src/UnitTests/LinearAlgebraTests/Complex32/VectorArithmeticTheory.cs +++ b/src/UnitTests/LinearAlgebraTests/Complex32/VectorArithmeticTheory.cs @@ -36,7 +36,7 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32 using Numerics; [TestFixture, Category("LA")] - public abstract class VectorArithmeticTheory : VectorArithmeticTheory + public class VectorArithmeticTheory : VectorArithmeticTheory { protected override Vector GetVector(TestVector vector) { @@ -45,5 +45,20 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Complex32 protected override Complex32 Minus(Complex32 value) { return -value; } protected override Complex32 Add(Complex32 first, Complex32 second) { return first + second; } + + [Datapoints] + TestVector[] _vectors = + { + TestVector.Dense5, + TestVector.Dense5WithZeros, + + TestVector.Sparse5, + TestVector.Sparse5WithZeros, + TestVector.Sparse5AllZeros, + TestVector.SparseMaxLengthAllZeros + }; + + [Datapoints] + Complex32[] _scalars = { new Complex32(2f, -1f) }; } } diff --git a/src/UnitTests/LinearAlgebraTests/Double/DenseVectorArithmeticTheory.cs b/src/UnitTests/LinearAlgebraTests/Double/DenseVectorArithmeticTheory.cs deleted file mode 100644 index 6ae68e77..00000000 --- a/src/UnitTests/LinearAlgebraTests/Double/DenseVectorArithmeticTheory.cs +++ /dev/null @@ -1,48 +0,0 @@ -// -// Math.NET Numerics, part of the Math.NET Project -// http://numerics.mathdotnet.com -// http://github.com/mathnet/mathnet-numerics -// http://mathnetnumerics.codeplex.com -// -// Copyright (c) 2009-2015 Math.NET -// -// Permission is hereby granted, free of charge, to any person -// obtaining a copy of this software and associated documentation -// files (the "Software"), to deal in the Software without -// restriction, including without limitation the rights to use, -// copy, modify, merge, publish, distribute, sublicense, and/or sell -// copies of the Software, and to permit persons to whom the -// Software is furnished to do so, subject to the following -// conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -// OTHER DEALINGS IN THE SOFTWARE. -// - -using NUnit.Framework; - -namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double -{ - [TestFixture, Category("LA")] - public class DenseVectorArithmeticTheory : VectorArithmeticTheory - { - [Datapoints] - TestVector[] _denseVectors = - { - TestVector.Dense5, - TestVector.Dense5WithZeros - }; - - [Datapoints] - double[] _scalars = { 2d }; - } -} diff --git a/src/UnitTests/LinearAlgebraTests/Double/SparseVectorArithmeticTheory.cs b/src/UnitTests/LinearAlgebraTests/Double/SparseVectorArithmeticTheory.cs deleted file mode 100644 index 1eae0640..00000000 --- a/src/UnitTests/LinearAlgebraTests/Double/SparseVectorArithmeticTheory.cs +++ /dev/null @@ -1,50 +0,0 @@ -// -// Math.NET Numerics, part of the Math.NET Project -// http://numerics.mathdotnet.com -// http://github.com/mathnet/mathnet-numerics -// http://mathnetnumerics.codeplex.com -// -// Copyright (c) 2009-2015 Math.NET -// -// Permission is hereby granted, free of charge, to any person -// obtaining a copy of this software and associated documentation -// files (the "Software"), to deal in the Software without -// restriction, including without limitation the rights to use, -// copy, modify, merge, publish, distribute, sublicense, and/or sell -// copies of the Software, and to permit persons to whom the -// Software is furnished to do so, subject to the following -// conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -// OTHER DEALINGS IN THE SOFTWARE. -// - -using NUnit.Framework; - -namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double -{ - [TestFixture, Category("LA")] - public class SparseVectorArithmeticTheory : VectorArithmeticTheory - { - [Datapoints] - TestVector[] _sparseVectors = - { - TestVector.Sparse5, - TestVector.Sparse5WithZeros, - TestVector.Sparse5AllZeros, - TestVector.SparseMaxLengthAllZeros - }; - - [Datapoints] - double[] _scalars = { 2d }; - } -} diff --git a/src/UnitTests/LinearAlgebraTests/Double/VectorArithmeticTheory.cs b/src/UnitTests/LinearAlgebraTests/Double/VectorArithmeticTheory.cs index a11b3557..756b4780 100644 --- a/src/UnitTests/LinearAlgebraTests/Double/VectorArithmeticTheory.cs +++ b/src/UnitTests/LinearAlgebraTests/Double/VectorArithmeticTheory.cs @@ -34,7 +34,7 @@ using NUnit.Framework; namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double { [TestFixture, Category("LA")] - public abstract class VectorArithmeticTheory : VectorArithmeticTheory + public class VectorArithmeticTheory : VectorArithmeticTheory { protected override Vector GetVector(TestVector vector) { @@ -43,5 +43,20 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Double protected override double Minus(double value) { return -value; } protected override double Add(double first, double second) { return first + second; } + + [Datapoints] + TestVector[] _vectors = + { + TestVector.Dense5, + TestVector.Dense5WithZeros, + + TestVector.Sparse5, + TestVector.Sparse5WithZeros, + TestVector.Sparse5AllZeros, + TestVector.SparseMaxLengthAllZeros + }; + + [Datapoints] + double[] _scalars = { 2d }; } } diff --git a/src/UnitTests/LinearAlgebraTests/Single/DenseVectorArithmeticTheory.cs b/src/UnitTests/LinearAlgebraTests/Single/DenseVectorArithmeticTheory.cs deleted file mode 100644 index 6e3dad3f..00000000 --- a/src/UnitTests/LinearAlgebraTests/Single/DenseVectorArithmeticTheory.cs +++ /dev/null @@ -1,48 +0,0 @@ -// -// Math.NET Numerics, part of the Math.NET Project -// http://numerics.mathdotnet.com -// http://github.com/mathnet/mathnet-numerics -// http://mathnetnumerics.codeplex.com -// -// Copyright (c) 2009-2015 Math.NET -// -// Permission is hereby granted, free of charge, to any person -// obtaining a copy of this software and associated documentation -// files (the "Software"), to deal in the Software without -// restriction, including without limitation the rights to use, -// copy, modify, merge, publish, distribute, sublicense, and/or sell -// copies of the Software, and to permit persons to whom the -// Software is furnished to do so, subject to the following -// conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -// OTHER DEALINGS IN THE SOFTWARE. -// - -using NUnit.Framework; - -namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single -{ - [TestFixture, Category("LA")] - public class DenseVectorArithmeticTheory : VectorArithmeticTheory - { - [Datapoints] - TestVector[] _denseVectors = - { - TestVector.Dense5, - TestVector.Dense5WithZeros - }; - - [Datapoints] - float[] _scalars = { 2f }; - } -} diff --git a/src/UnitTests/LinearAlgebraTests/Single/SparseVectorArithmeticTheory.cs b/src/UnitTests/LinearAlgebraTests/Single/SparseVectorArithmeticTheory.cs deleted file mode 100644 index 9824278c..00000000 --- a/src/UnitTests/LinearAlgebraTests/Single/SparseVectorArithmeticTheory.cs +++ /dev/null @@ -1,50 +0,0 @@ -// -// Math.NET Numerics, part of the Math.NET Project -// http://numerics.mathdotnet.com -// http://github.com/mathnet/mathnet-numerics -// http://mathnetnumerics.codeplex.com -// -// Copyright (c) 2009-2015 Math.NET -// -// Permission is hereby granted, free of charge, to any person -// obtaining a copy of this software and associated documentation -// files (the "Software"), to deal in the Software without -// restriction, including without limitation the rights to use, -// copy, modify, merge, publish, distribute, sublicense, and/or sell -// copies of the Software, and to permit persons to whom the -// Software is furnished to do so, subject to the following -// conditions: -// -// The above copyright notice and this permission notice shall be -// included in all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES -// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING -// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -// OTHER DEALINGS IN THE SOFTWARE. -// - -using NUnit.Framework; - -namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single -{ - [TestFixture, Category("LA")] - public class SparseVectorArithmeticTheory : VectorArithmeticTheory - { - [Datapoints] - TestVector[] _sparseVectors = - { - TestVector.Sparse5, - TestVector.Sparse5WithZeros, - TestVector.Sparse5AllZeros, - TestVector.SparseMaxLengthAllZeros - }; - - [Datapoints] - float[] _scalars = { 2f }; - } -} diff --git a/src/UnitTests/LinearAlgebraTests/Single/VectorArithmeticTheory.cs b/src/UnitTests/LinearAlgebraTests/Single/VectorArithmeticTheory.cs index 3dd8c7cb..c550a92f 100644 --- a/src/UnitTests/LinearAlgebraTests/Single/VectorArithmeticTheory.cs +++ b/src/UnitTests/LinearAlgebraTests/Single/VectorArithmeticTheory.cs @@ -34,7 +34,7 @@ using NUnit.Framework; namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single { [TestFixture, Category("LA")] - public abstract class VectorArithmeticTheory : VectorArithmeticTheory + public class VectorArithmeticTheory : VectorArithmeticTheory { protected override Vector GetVector(TestVector vector) { @@ -43,5 +43,20 @@ namespace MathNet.Numerics.UnitTests.LinearAlgebraTests.Single protected override float Minus(float value) { return -value; } protected override float Add(float first, float second) { return first + second; } + + [Datapoints] + TestVector[] _vectors = + { + TestVector.Dense5, + TestVector.Dense5WithZeros, + + TestVector.Sparse5, + TestVector.Sparse5WithZeros, + TestVector.Sparse5AllZeros, + TestVector.SparseMaxLengthAllZeros + }; + + [Datapoints] + float[] _scalars = { 2f }; } } diff --git a/src/UnitTests/UnitTests.csproj b/src/UnitTests/UnitTests.csproj index 35bc5c1f..f7c303dd 100644 --- a/src/UnitTests/UnitTests.csproj +++ b/src/UnitTests/UnitTests.csproj @@ -150,7 +150,6 @@ - @@ -186,7 +185,6 @@ - @@ -198,7 +196,6 @@ - @@ -234,7 +231,6 @@ - @@ -251,10 +247,8 @@ - - @@ -298,7 +292,6 @@ - @@ -334,7 +327,6 @@ -