9#ifndef DRYCHEM_CPP_UNITS_TESTS_TESTOPERATORS_TESTARITHMETICOPERATORS_HPP
10#define DRYCHEM_CPP_UNITS_TESTS_TESTOPERATORS_TESTARITHMETICOPERATORS_HPP
12#include <gtest/gtest.h>
19GTEST_TEST(testArithmeticOperators, overloadedAdditionOperatorsActOnlyOnPhysicalQuantities)
24 ASSERT_DOUBLE_EQ(30.0, (dimensionlessQuantity2 + dimensionlessQuantity1).getMagnitude());
26 dimensionlessQuantity1 += 2.0_;
27 ASSERT_DOUBLE_EQ(7.0, dimensionlessQuantity1.
getMagnitude());
30GTEST_TEST(testArithmeticOperators, overloadedSubtractionOperatorsActOnlyOnPhysicalQuantities)
35 ASSERT_DOUBLE_EQ(20.0, (dimensionlessQuantity2 - dimensionlessQuantity1).getMagnitude());
37 dimensionlessQuantity1 -= 2.0_;
38 ASSERT_DOUBLE_EQ(3.0, dimensionlessQuantity1.
getMagnitude());
41GTEST_TEST(testArithmeticOperators, unaryMinusOperatorNegatesMagnitude)
48GTEST_TEST(testArithmeticOperators, overloadedMultiplicationOperatorsActOnPhysicalQuantitiesAndNumericTypes)
50 const Area area = 24.0_m2;
51 const Length length = 1.0_m;
53 Volume volume = area * length;
59 Volume newVolume = volume * 2;
60 Length newLength = 1.0 * length;
67GTEST_TEST(testArithmeticOperators, overloadedDivisionOperatorsActOnPhysicalQuantitiesAndNumericTypes)
69 const Volume volume = 24.0_m3;
70 const Length length = 1.0_m;
72 Area area = volume / length;
78 Area newArea = area / 2;
constexpr long double getMagnitude() const noexcept
Definition physicalQuantity.hpp:50
Definition physicalQuantities.hpp:94
Definition basicMath.hpp:17
PhysicalQuantity< Dimensionality< 2, 0, 0 > > Area
Definition physicalQuantities.hpp:42
PhysicalQuantity< Dimensionality<> > DimensionlessQuantity
Definition physicalQuantities.hpp:22
PhysicalQuantity< Dimensionality<-1, 0, 0 > > WaveNumber
Definition physicalQuantities.hpp:27
PhysicalQuantity< Dimensionality< 3, 0, 0 > > Volume
Definition physicalQuantities.hpp:48
PhysicalQuantity< Dimensionality< 1, 0, 0 > > Length
Definition physicalQuantities.hpp:37
GTEST_TEST(testArithmeticOperators, overloadedAdditionOperatorsActOnlyOnPhysicalQuantities)
Definition testArithmeticOperators.hpp:19