Skip to content
Snippets Groups Projects
Commit 953a5750 authored by Matthias Puchner's avatar Matthias Puchner
Browse files

add python formatting unit tests to guard following refactorings

parent 28c91037
No related branches found
No related tags found
1 merge request!65Refactor Distribution Handling
...@@ -4,6 +4,11 @@ ...@@ -4,6 +4,11 @@
#include "Core/Export/PyFmtLimits.h" #include "Core/Export/PyFmtLimits.h"
#include "Param/Distrib/Distributions.h" #include "Param/Distrib/Distributions.h"
#include "Param/Distrib/ParameterDistribution.h" #include "Param/Distrib/ParameterDistribution.h"
#include "Sample/Correlations/FTDecay1D.h"
#include "Sample/Correlations/FTDecay2D.h"
#include "Sample/Correlations/FTDistributions1D.h"
#include "Sample/Correlations/FTDistributions2D.h"
#include "Sample/Slice/LayerRoughness.h"
#include "Tests/GTestWrapper/google_test.h" #include "Tests/GTestWrapper/google_test.h"
class PythonFormattingTest : public ::testing::Test { class PythonFormattingTest : public ::testing::Test {
...@@ -52,6 +57,11 @@ TEST_F(PythonFormattingTest, printDistribution) ...@@ -52,6 +57,11 @@ TEST_F(PythonFormattingTest, printDistribution)
{ {
EXPECT_EQ(DistributionGate(1.0, 2.0).pythonConstructor(""), "DistributionGate(1.0, 2.0)"); EXPECT_EQ(DistributionGate(1.0, 2.0).pythonConstructor(""), "DistributionGate(1.0, 2.0)");
EXPECT_EQ(DistributionLorentz(1.0, 2.0).pythonConstructor(""), "DistributionLorentz(1.0, 2.0)");
EXPECT_EQ(DistributionGaussian(1.0, 2.0).pythonConstructor(""),
"DistributionGaussian(1.0, 2.0)");
EXPECT_EQ(DistributionGate(1.0, 2.0).pythonConstructor("nm"), "DistributionGate(1*nm, 2*nm)"); EXPECT_EQ(DistributionGate(1.0, 2.0).pythonConstructor("nm"), "DistributionGate(1*nm, 2*nm)");
EXPECT_EQ(DistributionGate(1.0 * Units::deg, 2.0 * Units::deg).pythonConstructor("rad"), EXPECT_EQ(DistributionGate(1.0 * Units::deg, 2.0 * Units::deg).pythonConstructor("rad"),
...@@ -59,6 +69,57 @@ TEST_F(PythonFormattingTest, printDistribution) ...@@ -59,6 +69,57 @@ TEST_F(PythonFormattingTest, printDistribution)
EXPECT_EQ(DistributionLogNormal(1.0 * Units::deg, 0.01).pythonConstructor("rad"), EXPECT_EQ(DistributionLogNormal(1.0 * Units::deg, 0.01).pythonConstructor("rad"),
"DistributionLogNormal(1*deg, 0.01)"); "DistributionLogNormal(1*deg, 0.01)");
EXPECT_EQ(DistributionCosine(1.0, 2.0).pythonConstructor(""), "DistributionCosine(1.0, 2.0)");
EXPECT_EQ(DistributionTrapezoid(1.0, 2.0, 3.0, 4.0).pythonConstructor(""),
"DistributionTrapezoid(1.0, 2.0, 3.0, 4.0)");
}
TEST_F(PythonFormattingTest, printFTDistribution1D)
{
EXPECT_EQ(FTDistribution1DCauchy(2.2).pythonConstructor(), "FTDistribution1DCauchy(2.2*nm)");
EXPECT_EQ(FTDistribution1DGauss(2.2).pythonConstructor(), "FTDistribution1DGauss(2.2*nm)");
EXPECT_EQ(FTDistribution1DGate(2.2).pythonConstructor(), "FTDistribution1DGate(2.2*nm)");
EXPECT_EQ(FTDistribution1DTriangle(2.2).pythonConstructor(),
"FTDistribution1DTriangle(2.2*nm)");
EXPECT_EQ(FTDistribution1DCosine(2.2).pythonConstructor(), "FTDistribution1DCosine(2.2*nm)");
EXPECT_EQ(FTDistribution1DVoigt(2.2, 3.3).pythonConstructor(),
"FTDistribution1DVoigt(2.2*nm, 3.3)");
}
TEST_F(PythonFormattingTest, printFTDecayFunction1D)
{
EXPECT_EQ(FTDecayFunction1DCauchy(2.2).pythonConstructor(), "FTDecayFunction1DCauchy(2.2*nm)");
EXPECT_EQ(FTDecayFunction1DGauss(2.2).pythonConstructor(), "FTDecayFunction1DGauss(2.2*nm)");
EXPECT_EQ(FTDecayFunction1DTriangle(2.2).pythonConstructor(),
"FTDecayFunction1DTriangle(2.2*nm)");
EXPECT_EQ(FTDecayFunction1DVoigt(2.2, 3.3).pythonConstructor(),
"FTDecayFunction1DVoigt(2.2*nm, 3.3)");
}
TEST_F(PythonFormattingTest, printFTDistribution2D)
{
EXPECT_EQ(FTDistribution2DCauchy(2.2, 3.3, 4.4 * Units::deg).pythonConstructor(),
"FTDistribution2DCauchy(2.2*nm, 3.3*nm, 4.4*deg)");
EXPECT_EQ(FTDistribution2DGauss(2.2, 3.3, 4.4 * Units::deg).pythonConstructor(),
"FTDistribution2DGauss(2.2*nm, 3.3*nm, 4.4*deg)");
EXPECT_EQ(FTDistribution2DGate(2.2, 3.3, 4.4 * Units::deg).pythonConstructor(),
"FTDistribution2DGate(2.2*nm, 3.3*nm, 4.4*deg)");
EXPECT_EQ(FTDistribution2DCone(2.2, 3.3, 4.4 * Units::deg).pythonConstructor(),
"FTDistribution2DCone(2.2*nm, 3.3*nm, 4.4*deg)");
EXPECT_EQ(FTDistribution2DVoigt(2.2, 3.3, 4.4 * Units::deg, 5.5).pythonConstructor(),
"FTDistribution2DVoigt(2.2*nm, 3.3*nm, 4.4*deg, 5.5)");
}
TEST_F(PythonFormattingTest, printFTDecayFunction2D)
{
EXPECT_EQ(FTDecayFunction2DCauchy(2.2, 3.3, 4.4 * Units::deg).pythonConstructor(),
"FTDecayFunction2DCauchy(2.2*nm, 3.3*nm, 4.4*deg)");
EXPECT_EQ(FTDecayFunction2DGauss(2.2, 3.3, 4.4 * Units::deg).pythonConstructor(),
"FTDecayFunction2DGauss(2.2*nm, 3.3*nm, 4.4*deg)");
EXPECT_EQ(FTDecayFunction2DVoigt(2.2, 3.3, 4.4 * Units::deg, 5.5).pythonConstructor(),
"FTDecayFunction2DVoigt(2.2*nm, 3.3*nm, 4.4*deg, 5.5)");
} }
TEST_F(PythonFormattingTest, printParameterDistribution) TEST_F(PythonFormattingTest, printParameterDistribution)
...@@ -91,3 +152,8 @@ TEST_F(PythonFormattingTest, printParameterDistribution) ...@@ -91,3 +152,8 @@ TEST_F(PythonFormattingTest, printParameterDistribution)
"ba.ParameterDistribution(ParameterDistribution::BeamAzimuthalAngle, " "ba.ParameterDistribution(ParameterDistribution::BeamAzimuthalAngle, "
"distr_1, 5, 2.0, ba.RealLimits.limited(1*deg, 2*deg))"); "distr_1, 5, 2.0, ba.RealLimits.limited(1*deg, 2*deg))");
} }
TEST_F(PythonFormattingTest, printLayerRoughness)
{
EXPECT_EQ(LayerRoughness(1.1, 2.2, 3.3).pythonConstructor(), "LayerRoughness(1.1, 2.2, 3.3*nm)");
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment