2929 Unit5 ,
3030 Unit6 ,
3131 Unit7 ,
32+ Unit9 ,
3233 dimension_1 ,
3334 dimension_2 ,
3435 dimension_3 ,
3536 dimension_4 ,
3637 dimension_5 ,
3738 dimension_6 ,
3839 dimension_7 ,
40+ dimension_9 ,
3941 generic_dimension_1 ,
4042 generic_dimension_2 ,
4143 generic_dimension_3 ,
6870
6971@add_to (MeasurementUnitMeta_test_suite )
7072class TestMeasurementUnitMetaInverseGeneric (TestDescriptor ):
71-
7273 def test_inverse_generic (self ):
7374 self .assertSequenceEqual (str (Unit1 .inverse_generic ()), " / Unit1" , str )
7475
7576
7677@add_to (MeasurementUnitMeta_test_suite )
7778class TestMeasurementUnitMetaMultiplication (TestDescriptorBinaryOperation ):
78-
7979 operator = mul
8080 produced_type = GenericCompositeDimension
8181
@@ -116,7 +116,6 @@ def test_with_int(self):
116116
117117@add_to (MeasurementUnitMeta_test_suite )
118118class TestMeasurementUnitMetaDivision (TestDescriptorBinaryOperation ):
119-
120119 operator = truediv
121120 produced_type = GenericCompositeDimension
122121
@@ -227,7 +226,6 @@ def test_with_generic_composite_dimension_same_numerator(self):
227226
228227@add_to (MeasurementUnit_test_suite )
229228class TestMeasurementUnitFromDescriptor (TestDescriptor ):
230-
231229 def subject (self , descriptor ):
232230 return MeasurementUnit .from_descriptor (descriptor )
233231
@@ -266,7 +264,6 @@ def test_with_generic_composite_dimension(self):
266264
267265@add_to (MeasurementUnit_test_suite )
268266class TestMeasurementUnitIsInstance (TestDescriptor ):
269-
270267 def subject (self , generic ):
271268 return Unit1 .A .isinstance (generic )
272269
@@ -301,7 +298,6 @@ def test_with_generic_composite_dimension(self):
301298
302299@add_to (MeasurementUnit_test_suite )
303300class TestMeasurementUnitIsInstanceEquivalent (TestDescriptor ):
304-
305301 def subject (self , descriptor ):
306302 return Unit3 .C .isinstance_equivalent (descriptor )
307303
@@ -472,6 +468,22 @@ def test_with_none(self):
472468 self .assertResultRaises (DescriptorExponentError )
473469
474470
471+ @add_to (MeasurementUnit_test_suite )
472+ class TestNonDimensionalMeasurementUnitExponentiation (TestDescriptor ):
473+ produced_type = Dimension
474+
475+ def subject (self , value ):
476+ return Unit9 .NON_DIMENSIONAL ** value
477+
478+ @args ({"value" : 2 })
479+ def test_with_positive_int (self ):
480+ self .assert_result ("" )
481+
482+ @args ({"value" : - 10 })
483+ def test_with_negative_int (self ):
484+ self .assert_result ("" )
485+
486+
475487@add_to (AliasMeasurementUnit_test_suite )
476488class TestAliasMeasurementUnitFromDescriptor (TestDescriptor ):
477489 def subject (self , descriptor ):
@@ -1378,6 +1390,19 @@ def subject(self, value):
13781390 return dimension_1 () ** value
13791391
13801392
1393+ @add_to (Dimension_test_suite )
1394+ class TestNonDimensionalDimensionExponentiation (
1395+ TestNonDimensionalMeasurementUnitExponentiation
1396+ ):
1397+ """
1398+ Repeat all tests in `TestNonDimensionalMeasurementUnitExponentiation` but with
1399+ dimension_9() as descriptor.
1400+ """
1401+
1402+ def subject (self , value ):
1403+ return dimension_9 () ** value
1404+
1405+
13811406@add_to (Dimension_test_suite )
13821407class TestExponentiatedDimensionExponentiation (TestDescriptor ):
13831408 produced_type = Dimension
@@ -2006,6 +2031,7 @@ def test_with_aliased_denominator_composite_dimension(self):
20062031 def test_with_fully_aliased_composite_dimension (self ):
20072032 self .assertResultTrue ()
20082033
2034+
20092035@add_to (GenericCompositeDimension_test_suite )
20102036class TestGenericCompositeDimensionHasNoUnits (TestDescriptor ):
20112037 def test_with_measurement_units (self ):
@@ -2547,6 +2573,14 @@ def test_same_denominator_dimensions(self):
25472573 def test_same_numerator_dimensions_zero_sum (self ):
25482574 self .assert_result (" / C" )
25492575
2576+ @args ({"composite" : CompositeDimension ([dimension_9 ()], [dimension_9 ()])})
2577+ def test_non_dimensionals (self ):
2578+ self .assert_result ("" )
2579+
2580+ @args ({"composite" : CompositeDimension ([dimension_9 (3 )], [dimension_9 ()])})
2581+ def test_non_dimensionals_exponentiated (self ):
2582+ self .assert_result ("" )
2583+
25502584
25512585@add_to (CompositeDimension_test_suite )
25522586class TestCompositeDimensionSimplified (TestCompositeDimensionSimplify ):
@@ -2576,6 +2610,7 @@ def test_objects_are_not_persisted(self):
25762610 self .assertNotEqual (ids (composite .numerator ), ids (inverse .denominator ))
25772611 self .assertNotEqual (ids (composite .denominator ), ids (inverse .numerator ))
25782612
2613+
25792614@add_to (CompositeDimension_test_suite )
25802615class TestCompositeDimensionHasNoUnits (TestDescriptor ):
25812616 def test_with_units (self ):
@@ -2585,10 +2620,11 @@ def test_with_no_units(self):
25852620 self .assertTrue (CompositeDimension ().has_no_units ())
25862621
25872622 def test_with_same_unit_type (self ):
2588- self .assertFalse (CompositeDimension ([Unit1 .A ],[Unit1 .a ]).has_no_units ())
2623+ self .assertFalse (CompositeDimension ([Unit1 .A ], [Unit1 .a ]).has_no_units ())
25892624
25902625 def test_with_same_unit (self ):
2591- self .assertFalse (CompositeDimension ([Unit1 .A ],[Unit1 .A ]).has_no_units ())
2626+ self .assertFalse (CompositeDimension ([Unit1 .A ], [Unit1 .A ]).has_no_units ())
2627+
25922628
25932629@add_to (CompositeDimension_test_suite )
25942630class TestCompositeDimensionMultiplication (TestDescriptorBinaryOperation ):
0 commit comments