Example #1
0
 def test17(self):
     print "Testing ParametersWithUnitsConverted on vector parameters, using add_vector_parameter"
     
     class TestModule(BaseTestModule):
         x = [1.,2.,3.] | generic_unit_system.length
         
         def get_length(self,i):
             return self.x[i]
         def set_length(self, i,value):
             self.x[i] = value
         def range(self):
             return 0,len(self.x)-1
     
     o = TestModule()
     parameters_handler = HandleParameters(o)
     parameters_handler.add_array_parameter(
         "get_length",
         "set_length",
         "range",
         "length",
         "description"
     )
     
     x = parameters_handler.get_attribute(None, None)
     self.assertTrue("length" in str(x))
     self.assertTrue("[1.0, 2.0, 3.0] length" in str(x))
 def test17(self):
     print "Testing ParametersWithUnitsConverted on vector parameters, using add_vector_parameter"
     
     class TestModule(BaseTestModule):
         x = [1.,2.,3.] | generic_unit_system.length
         
         def get_length(self,i):
             return self.x[i]
         def set_length(self, i,value):
             self.x[i] = value
         def range(self):
             return 0,len(self.x)-1
     
     o = TestModule()
     parameters_handler = HandleParameters(o)
     parameters_handler.add_array_parameter(
         "get_length",
         "set_length",
         "range",
         "length",
         "description"
     )
     
     x = parameters_handler.get_attribute(None, None)
     self.assertTrue("length" in str(x))
     self.assertTrue("[1.0, 2.0, 3.0] length" in str(x))
 def test16(self):
     print "Testing add_interface_parameter"
     
     class TestModule(BaseTestModule):
       pass
     
     o = TestModule()
     parameters_handler = HandleParameters(o)
     parameters_handler.add_vector_parameter(
         "mesh_length",
         "length of the model in the x, y and z directions",
         ("length_x", "length_y", "length_z")
     )
     for i,par_name in enumerate(["length_x", "length_y", "length_z"]):
         parameters_handler.add_interface_parameter(
             par_name, 
             "a test parameter", 
             default_value = i*10.0 | generic_unit_system.length,
         )
     
     x = parameters_handler.get_attribute(None, None)
     self.assertTrue("mesh_length" in str(x))
     self.assertTrue("[0.0, 10.0, 20.0] length" in str(x))
     
     converter = generic_unit_converter.ConvertBetweenGenericAndSiUnits(2.0 | units.m, 4.0 | units.kg, 6.0 | units.s)
     y = parameters.ParametersWithUnitsConverted(
             x,
             converter.as_converter_from_si_to_generic()
         )
     self.assertTrue("mesh_length" in str(y))
     self.assertTrue("[0.0, 20.0, 40.0] m" in str(y))
Example #4
0
    def test19(self):
        print("Testing multiple parameter sets")

        class TestModule(BaseTestModule):
            x = 123.0 | generic_unit_system.length
            y = 456.0 | generic_unit_system.length
            z = 789.0 | generic_unit_system.length

            def get_length_x(self):
                return self.x

            def set_length_x(self, value):
                self.x = value

            def get_length_y(self):
                return self.y

            def set_length_y(self, value):
                self.y = value

            def get_length_z(self):
                return self.z

            def set_length_z(self, value):
                self.z = value

        o = TestModule()
        parameters_handler = HandleParameters(o)
        for par_name in ["length_x", "length_y", "length_z"]:
            parameters_handler.add_method_parameter(
                "get_" + par_name,
                "set_" + par_name,
                par_name,
                "a test parameter",
                default_value=10.0 | generic_unit_system.length,
                parameter_set=par_name + "_set")

        for i, par_name in enumerate(["length_x", "length_y", "length_z"]):
            x = parameters_handler.get_attribute(par_name + "_set", None)
            self.assertTrue(
                [123.0, 456.0, 789.0][i] == getattr(x, par_name).number)
Example #5
0
 def test16(self):
     print "Testing add_interface_parameter"
     
     class TestModule(BaseTestModule):
       pass
     
     o = TestModule()
     parameters_handler = HandleParameters(o)
     parameters_handler.add_vector_parameter(
         "mesh_length",
         "length of the model in the x, y and z directions",
         ("length_x", "length_y", "length_z")
     )
     for i,par_name in enumerate(["length_x", "length_y", "length_z"]):
         parameters_handler.add_interface_parameter(
             par_name, 
             "a test parameter", 
             default_value = i*10.0 | generic_unit_system.length,
         )
     
     x = parameters_handler.get_attribute(None, None)
     self.assertTrue("mesh_length" in str(x))
     self.assertTrue("[0.0, 10.0, 20.0] length" in str(x))
     
     converter = generic_unit_converter.ConvertBetweenGenericAndSiUnits(2.0 | units.m, 4.0 | units.kg, 6.0 | units.s)
     y = parameters.ParametersWithUnitsConverted(
             x,
             converter.as_converter_from_si_to_generic()
         )
     self.assertTrue("mesh_length" in str(y))
     self.assertTrue("[0.0, 20.0, 40.0] m" in str(y))
Example #6
0
    def test11(self):
        print(
            "Testing ParametersWithUnitsConverted on vector parameters, using add_vector_parameter"
        )

        class TestModule(BaseTestModule):
            x = 123.0 | generic_unit_system.length
            y = 456.0 | generic_unit_system.length
            z = 789.0 | generic_unit_system.length

            def get_length_x(self):
                return self.x

            def set_length_x(self, value):
                self.x = value

            def get_length_y(self):
                return self.y

            def set_length_y(self, value):
                self.y = value

            def get_length_z(self):
                return self.z

            def set_length_z(self, value):
                self.z = value

        o = TestModule()
        parameters_handler = HandleParameters(o)
        parameters_handler.add_vector_parameter(
            "mesh_length", "length of the model in the x, y and z directions",
            ("length_x", "length_y", "length_z"))
        for par_name in ["length_x", "length_y", "length_z"]:
            parameters_handler.add_method_parameter(
                "get_" + par_name,
                "set_" + par_name,
                par_name,
                "a test parameter",
                default_value=10.0 | generic_unit_system.length,
            )

        x = parameters_handler.get_attribute(None, None)
        self.assertTrue("mesh_length" in str(x))
        self.assertTrue("[123.0, 456.0, 789.0] length" in str(x))

        converter = generic_unit_converter.ConvertBetweenGenericAndSiUnits(
            2.0 | units.m, 4.0 | units.kg, 6.0 | units.s)
        y = parameters.ParametersWithUnitsConverted(
            x, converter.as_converter_from_si_to_generic())
        self.assertTrue("mesh_length" in str(y))
        self.assertTrue("[246.0, 912.0, 1578.0] m" in str(y))
Example #7
0
 def test11(self):
     print "Testing ParametersWithUnitsConverted on vector parameters, using add_vector_parameter"
     
     class TestModule(BaseTestModule):
         x = 123.0 | generic_unit_system.length
         y = 456.0 | generic_unit_system.length
         z = 789.0 | generic_unit_system.length
         
         def get_length_x(self):
             return self.x
         def set_length_x(self, value):
             self.x = value
         def get_length_y(self):
             return self.y
         def set_length_y(self, value):
             self.y = value
         def get_length_z(self):
             return self.z
         def set_length_z(self, value):
             self.z = value
     
     o = TestModule()
     parameters_handler = HandleParameters(o)
     parameters_handler.add_vector_parameter(
         "mesh_length",
         "length of the model in the x, y and z directions",
         ("length_x", "length_y", "length_z")
     )
     for par_name in ["length_x", "length_y", "length_z"]:
         parameters_handler.add_method_parameter(
             "get_"+par_name, 
             "set_"+par_name,
             par_name, 
             "a test parameter", 
             default_value = 10.0 | generic_unit_system.length,
         )
     
     x = parameters_handler.get_attribute(None, None)
     self.assertTrue("mesh_length" in str(x))
     self.assertTrue("[123.0, 456.0, 789.0] length" in str(x))
     
     converter = generic_unit_converter.ConvertBetweenGenericAndSiUnits(2.0 | units.m, 4.0 | units.kg, 6.0 | units.s)
     y = parameters.ParametersWithUnitsConverted(
             x,
             converter.as_converter_from_si_to_generic()
         )
     self.assertTrue("mesh_length" in str(y))
     self.assertTrue("[246.0, 912.0, 1578.0] m" in str(y))