当前位置: 首页>>代码示例>>Python>>正文


Python Options.merge方法代码示例

本文整理汇总了Python中aql.options.Options.merge方法的典型用法代码示例。如果您正苦于以下问题:Python Options.merge方法的具体用法?Python Options.merge怎么用?Python Options.merge使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在aql.options.Options的用法示例。


在下文中一共展示了Options.merge方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: test_options_update

# 需要导入模块: from aql.options import Options [as 别名]
# 或者: from aql.options.Options import merge [as 别名]
    def test_options_update(self):
        options = Options()

        options.opt = RangeOptionType(min_value=1, max_value=100)
        options.warn_level = RangeOptionType(min_value=0, max_value=5)

        args = {'opt': 5, 'warn_level': 3, 'debug_on': True}
        options.update(args)
        self.assertEqual(options.opt, args['opt'])
        self.assertEqual(options.warn_level, args['warn_level'])
        self.assertIn('debug_on', options)

        options.update({})
        options.update(options)
        self.assertRaises(ErrorOptionsMergeNonOptions, options.merge, args)

        options2 = Options()
        options2.debug_on = BoolOptionType()
        options2.debug_on = False
        options2.bv = ListOptionType(value_type=str)
        options2.bv += 'debug,release,final'
        options2.build_variant = options2.bv
        self.assertTrue(options.debug_on.option_value.option_type.is_auto)
        options.merge(options2)
        self.assertEqual(options.debug_on.get(), options2.debug_on.get())
        self.assertEqual(options.bv, options2.bv)
        self.assertEqual(options.bv, options2.build_variant)
        self.assertEqual(options2.bv, options2.build_variant)
        self.assertIs(
            options.bv.option_value, options.build_variant.option_value)

        options.merge(options2)
        self.assertEqual(options.debug_on, options2.debug_on)
        self.assertEqual(options2.bv, options2.build_variant)
开发者ID:lu-zero,项目名称:aqualid,代码行数:36,代码来源:aql_test_options.py

示例2: test_options_merge

# 需要导入模块: from aql.options import Options [as 别名]
# 或者: from aql.options.Options import merge [as 别名]
 def   test_options_merge(self):
   options = Options()
   options.opt1 = RangeOptionType( min_value = 1, max_value = 100 )
   options.opt2 = RangeOptionType( min_value = 0, max_value = 5 )
   options.opt3 = RangeOptionType( min_value = -10, max_value = 10 )
   options.option1 = options.opt1
   options.option3 = options.opt3
   
   options.opt1 = 50
   options.opt2 = 3
   options.opt3 = 0
   
   options2 = Options()
   options2.opt21 = RangeOptionType( min_value = 1, max_value = 100 )
   options2.opt22 = RangeOptionType( min_value = 0, max_value = 5 )
   options2.opt23 = RangeOptionType( min_value = -10, max_value = 10 )
   options2.option22 = options2.opt22
   options2.option23 = options2.opt23
   
   options.merge( options2 )
   self.assertEqual( options.opt1, 50 )
   self.assertEqual( options.opt2, 3 )
   self.assertEqual( options.opt3, 0 )
   self.assertIs( options.option1.option_value, options.opt1.option_value )
   self.assertIs( options.option3.option_value, options.opt3.option_value )
   self.assertEqual( options.opt21, options2.opt21 )
   self.assertEqual( options.opt23, options2.opt23 )
   self.assertEqual( options.opt22, options2.opt22 )
   self.assertIs( options.option22.option_value, options.opt22.option_value )
   self.assertIs( options.option23.option_value, options.opt23.option_value )
   
   child_options2 = options2.override()
   
   child_options2.option21 = child_options2.opt21
   
   self.assertIs( child_options2.option21.option_value, child_options2.opt21.option_value )
   
   child_options2.opt22 = 3
   child_options2.opt23 = 7
   
   child_options2.join()
   self.assertIs( options2.option21.option_value, options2.opt21.option_value )
   self.assertEqual( options2.opt22, 3 )
   self.assertEqual( options2.opt23, 7 )
   self.assertFalse( child_options2 )
   
   child_options2 = options2.override()
   
   options2.option_21 = options2.opt21
   
   child_options2.opt22 = 4
   child_options2.opt23 = 8
   
   child_options2.unjoin()
   
   self.assertIs( child_options2.option21.option_value, child_options2.option_21.option_value )
   self.assertIs( child_options2.option21.option_value, child_options2.opt21.option_value )
   self.assertIsNot( child_options2.opt21.option_value, options2.opt21.option_value )
开发者ID:menify,项目名称:sandbox,代码行数:60,代码来源:aql_test_options.py


注:本文中的aql.options.Options.merge方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。