def test_check_parameter_set_valid(self) -> None: min_decl = ParameterDeclaration('min', min=1.2, max=2.3) max_decl = ParameterDeclaration('max', min=1.2, max=5.1) min_param = ConstantParameter(1.3) max_param = ConstantParameter(2.3) parameters = {'min': min_param, 'max': max_param} decl = ParameterDeclaration('foo', min=1.3) self.assertTrue(decl.check_parameter_set_valid({'foo': ConstantParameter(1.4)})) self.assertTrue(decl.check_parameter_set_valid({'foo': ConstantParameter(1.3)})) self.assertFalse(decl.check_parameter_set_valid({'foo': ConstantParameter(1.1)})) decl = ParameterDeclaration('foo', max=2.3) self.assertTrue(decl.check_parameter_set_valid({'foo': ConstantParameter(1.4)})) self.assertTrue(decl.check_parameter_set_valid({'foo': ConstantParameter(2.3)})) self.assertFalse(decl.check_parameter_set_valid({'foo': ConstantParameter(3.1)})) decl = ParameterDeclaration('foo', min=1.3, max=2.3) self.assertFalse(decl.check_parameter_set_valid({'foo': ConstantParameter(0.9)})) self.assertTrue(decl.check_parameter_set_valid({'foo': ConstantParameter(1.3)})) self.assertTrue(decl.check_parameter_set_valid({'foo': ConstantParameter(1.4)})) self.assertTrue(decl.check_parameter_set_valid({'foo': ConstantParameter(2.3)})) self.assertFalse(decl.check_parameter_set_valid({'foo': ConstantParameter(3.1)})) decl = ParameterDeclaration('foo', min=min_decl, max=max_decl) self.assertFalse(decl.check_parameter_set_valid({'min': min_param, 'max': max_param, 'foo': ConstantParameter(0.9)})) self.assertFalse(decl.check_parameter_set_valid({'min': min_param, 'max': max_param, 'foo': ConstantParameter(1.2)})) self.assertFalse(decl.check_parameter_set_valid({'min': min_param, 'max': max_param, 'foo': ConstantParameter(1.25)})) self.assertTrue(decl.check_parameter_set_valid({'min': min_param, 'max': max_param, 'foo': ConstantParameter(1.3)})) self.assertTrue(decl.check_parameter_set_valid({'min': min_param, 'max': max_param, 'foo': ConstantParameter(1.7)})) self.assertTrue(decl.check_parameter_set_valid({'min': min_param, 'max': max_param, 'foo': ConstantParameter(2.3)})) self.assertFalse(decl.check_parameter_set_valid({'min': min_param, 'max': max_param, 'foo': ConstantParameter(3.5)})) self.assertFalse(decl.check_parameter_set_valid({'min': min_param, 'max': max_param, 'foo': ConstantParameter(5.1)})) self.assertFalse(decl.check_parameter_set_valid({'min': min_param, 'max': max_param, 'foo': ConstantParameter(17.2)}))