• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Python tools.create_rule函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Python中tests.dgm.tools.create_rule函数的典型用法代码示例。如果您正苦于以下问题:Python create_rule函数的具体用法?Python create_rule怎么用?Python create_rule使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



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

示例1: test_filtered_none_components_deps

 def test_filtered_none_components_deps(self):
     """
     Check that dependencies are not in the graph when they are filtered out.
     RuleSet: #root -> #deps (filter = NONE)
     Components: a#root
     Component a provides a depfinder that returns b#deps
     Expecting: a#root, b#deps (b#deps has no action, it has been filtered out)
     """
     rules = set()
     rules.add(tools.create_rule(ruleset=self.__class__.__name__,
                                 name="R-root",
                                 action="Root Action",
                                 types=["[email protected]"],
                                 depsfinder=tools.getMockDepsFinderCmd(["b#[email protected]"]),
                                 dependson=["R-Deps"]))
     rules.add(tools.create_rule(ruleset=self.__class__.__name__,
                                 name="R-Deps",
                                 action="Deps Action",
                                 types=["[email protected]"],
                                 filter=NONE))
     ruleset = RuleSet(rules)
     depgraph = ruleset.get_depgraph([Component("a#[email protected]")])
     components = depgraph.components_map
     self.assertTrue(components is not None)
     self.assertEquals(len(components), 2)
     self.assertTrue(depgraph.dag is not None)
     self.assertTrue("a#[email protected]" in components)
     self.assertTrue("R-root" in components["a#[email protected]"].actions)
     self.assertEquals("Root Action", components["a#[email protected]"].actions["R-root"])
     self.assertTrue("b#[email protected]" in components)
     self.assertTrue(depgraph.dag.has_node("a#[email protected]"))
     self.assertTrue(depgraph.dag.has_node("b#[email protected]"))
     self.assertTrue("Deps Action" not in components["b#[email protected]"].actions)
开发者ID:af-bull,项目名称:sequencer,代码行数:33,代码来源:testmodel_depgraph_basic.py


示例2: test_a_nop_b

 def test_a_nop_b(self):
     """
     Check that action NONE are understood correctly.
     RuleSet: #root, #dep (filter = ALL),
     a#root -> b#dep (a.action=NONE)
     Expecting: a#root -> b#dep
     But a#root has no attribute in the xml graph.
     """
     rules = set()
     rules.add(tools.create_rule(ruleset=self.__class__.__name__,
                                 name="Root",
                                 types=["[email protected]"],
                                 action=NONE,
                                 depsfinder=tools.getMockDepsFinderCmd(["b#[email protected]"]),
                                 dependson=['Dep']))
     rules.add(tools.create_rule(ruleset=self.__class__.__name__,
                                 name="Dep",
                                 types=["[email protected]"],
                                 action="Dep Action"))
     ruleset = RuleSet(rules)
     depgraph = ruleset.get_depgraph([Component("a#[email protected]")])
     components = depgraph.components_map
     self.assertTrue(components is not None)
     self.assertEquals(len(components), 2)
     self.assertTrue("a#[email protected]" in components)
     self.assertTrue("b#[email protected]" in components)
     self.assertTrue(depgraph.dag is not None)
     self.assertTrue(depgraph.dag.has_node("a#[email protected]"))
     self.assertTrue(depgraph.dag.has_node("b#[email protected]"))
     self.assertFalse("Root" in components["a#[email protected]"].actions, components)
     self.assertTrue("Dep" in components["b#[email protected]"].actions)
     attributes = depgraph.dag.node_attributes("a#[email protected]")
     self.assertEquals(len(attributes), 0)
     attributes = depgraph.dag.node_attributes("b#[email protected]")
     self.assertEquals(len(attributes), 1)
开发者ID:af-bull,项目名称:sequencer,代码行数:35,代码来源:testmodel_depgraph_basic.py


示例3: test_checksum_different_types

    def test_checksum_different_types(self):
        rule1 = tools.create_rule(self.__class__.__name__, "R1")
        rule2 = tools.create_rule(self.__class__.__name__, "R2")
        self.db.add_rule(rule1)
        self.db.add_rule(rule2)
        (orig_ruleset_h, orig_h_for) = self.db.checksum(rule1.ruleset)

        self.db.remove_rules(rule1.ruleset)
        rule2 = tools.create_rule(self.__class__.__name__, "R2", types=["[email protected]"])
        self.db.add_rule(rule1)
        self.db.add_rule(rule2)
        (other_ruleset_h, other_h_for) = self.db.checksum(rule1.ruleset)
        self.assertNotEquals(orig_ruleset_h.hexdigest(),
                             other_ruleset_h.hexdigest())
        self.assertNotEquals(orig_h_for["R2"].hexdigest(),
                             other_h_for["R2"].hexdigest())

        self.db.remove_rules(rule1.ruleset)
        rule1 = tools.create_rule(self.__class__.__name__, "R1", types=["[email protected]", "ALL"])
        self.db.add_rule(rule1)
        self.db.add_rule(rule2)
        (other_ruleset_h, other_h_for) = self.db.checksum(rule1.ruleset)
        self.assertNotEquals(orig_ruleset_h.hexdigest(),
                             other_ruleset_h.hexdigest())
        self.assertNotEquals(orig_h_for["R1"].hexdigest(),
                             other_h_for["R1"].hexdigest())
开发者ID:cloax,项目名称:sequencer,代码行数:26,代码来源:abstracttestdb.py


示例4: test_none_rulename_forbidden

 def test_none_rulename_forbidden(self):
     try:
         tools.create_rule(self.__class__.__name__,
                           None)
         self.fail("Setting rule name to None should raise an exception!")
     except ValueError:
         pass
开发者ID:AdrienDebrie,项目名称:sequencer,代码行数:7,代码来源:testmodel_basic.py


示例5: test_multiple_actions_cycle

    def test_multiple_actions_cycle(self):
        """
        Check that a given component can contain multiple actions.
        RuleSet: R1:#ta, R2:#ta->R1
        Components: a#ta (R1 depsfinder returns itself: a#ta)
        Expecting: a#ta with 2 actions and a cycle.
        """
        rules = set()
        rules.add(tools.create_rule(ruleset=self.__class__.__name__,
                                    name="R1",
                                    action="Action for a",
                                    types=["ta[email protected]"]))
        rules.add(tools.create_rule(ruleset=self.__class__.__name__,
                                    name="R2",
                                    action="Action for a",
                                    types=["[email protected]"],
                                    depsfinder=tools.getMockDepsFinderCmd(["a#[email protected]"]),
                                    dependson=["R1"]))
        ruleset = RuleSet(rules)
        depgraph = ruleset.get_depgraph([Component("a#[email protected]")])
        components = depgraph.components_map

        self.assertTrue(components is not None)
        self.assertEquals(len(components), 1, "Map: %s" % components)
        self.assertTrue("a#[email protected]" in components)
        self.assertTrue("R1" in components["a#[email protected]"].actions)
        self.assertTrue("R2" in components["a#[email protected]"].actions)
        self.assertEquals(len(components["a#[email protected]"].actions), 2)
        self.assertEquals(len(depgraph.dag.node_attributes("a#[email protected]")), 2)
        self.assertTrue(depgraph.dag.has_edge(("a#[email protected]", "a#[email protected]")))
开发者ID:AdrienDebrie,项目名称:sequencer,代码行数:30,代码来源:testmodel_depgraph.py


示例6: test_simple_deps_ta_tb_b_a_nodepsfinder

 def test_simple_deps_ta_tb_b_a_nodepsfinder(self):
     """
     RuleSet: #ta->#tb,
     Components: b#tb, a#ta (reverse than test_simple_deps_ta_tb_a_b_nodepsfinder)
     Expecting: a#ta, b#tb (order does not count)
     """
     rules = set()
     rules.add(tools.create_rule(ruleset=self.__class__.__name__,
                                 name="Ra",
                                 action="Action for a",
                                 types=["[email protected]"],
                                 dependson=["Rb"]))
     rules.add(tools.create_rule(ruleset=self.__class__.__name__,
                                 name="Rb",
                                 action="Action for b",
                                 types=["[email protected]"]))
     ruleset = RuleSet(rules)
     depgraph = ruleset.get_depgraph([Component("b#[email protected]"),
                                      Component("a#[email protected]")])
     components = depgraph.components_map
     self.assertTrue(components is not None)
     self.assertEquals(len(components), 2)
     self.assertTrue("a#[email protected]" in components)
     self.assertTrue("b#[email protected]" in components)
     self.assertTrue(depgraph.dag is not None)
     self.assertTrue(depgraph.dag.has_node("a#[email protected]"))
     self.assertTrue(depgraph.dag.has_node("b#[email protected]"))
     self.assertNoEdgeBetween(depgraph.dag, "a#[email protected]", "b#[email protected]")
开发者ID:AdrienDebrie,项目名称:sequencer,代码行数:28,代码来源:testmodel_depgraph.py


示例7: test_simple_nodeps_ta_tb_a_b

 def test_simple_nodeps_ta_tb_a_b(self):
     """
     RuleSet: #ta, #tb,
     Components: a#ta, b#tb
     Expecting: a#ta, b#tb
     """
     rules = set()
     rules.add(tools.create_rule(ruleset=self.__class__.__name__,
                                 name="Ra",
                                 action="Action for a",
                                 types=["[email protected]"]))
     rules.add(tools.create_rule(ruleset=self.__class__.__name__,
                                 name="Rb",
                                 action="Action for b",
                                 types=["[email protected]"]))
     ruleset = RuleSet(rules)
     depgraph = ruleset.get_depgraph([Component("a#[email protected]"),
                                      Component("b#[email protected]")])
     components = depgraph.components_map
     self.assertTrue(components is not None)
     self.assertEquals(len(components), 2)
     self.assertTrue("a#[email protected]" in components)
     self.assertTrue("b#[email protected]" in components)
     self.assertTrue(depgraph.dag is not None)
     self.assertTrue(depgraph.dag.has_node("a#[email protected]"))
     self.assertTrue(depgraph.dag.has_node("b#[email protected]"))
     self.assertTrue("Ra" in components["a#[email protected]"].actions)
     self.assertEquals("Action for a", components["a#[email protected]"].actions["Ra"])
     self.assertTrue("Rb" in components["b#[email protected]"].actions)
     self.assertEquals("Action for b", components["b#[email protected]"].actions["Rb"])
     self.assertNoEdgeBetween(depgraph.dag, "a#[email protected]", "b#[email protected]")
开发者ID:AdrienDebrie,项目名称:sequencer,代码行数:31,代码来源:testmodel_depgraph.py


示例8: test_multiple_actions_nodeps

    def test_multiple_actions_nodeps(self):
        """
        Check that a given component can contain multiple actions.
        RuleSet: #ta, #ta
        Components: a#ta
        Expecting: a#ta with 2 actions.
        """
        rules = set()
        rules.add(tools.create_rule(ruleset=self.__class__.__name__,
                                    name="R1",
                                    action="Action for a",
                                    types=["[email protected]"]))
        rules.add(tools.create_rule(ruleset=self.__class__.__name__,
                                    name="R2",
                                    action="Action for a",
                                    types=["[email protected]"]))
        ruleset = RuleSet(rules)
        depgraph = ruleset.get_depgraph([Component("a#[email protected]")])
        components = depgraph.components_map

        self.assertTrue(components is not None)
        self.assertEquals(len(components), 1, "Map: %s" % components)
        self.assertTrue("a#[email protected]" in components)
        self.assertTrue("R1" in components["a#[email protected]"].actions)
        self.assertTrue("R2" in components["a#[email protected]"].actions)
        self.assertEquals(len(components["a#[email protected]"].actions), 2)
        self.assertEquals(len(depgraph.dag.node_attributes("a#[email protected]")), 2)
开发者ID:AdrienDebrie,项目名称:sequencer,代码行数:27,代码来源:testmodel_depgraph.py


示例9: test_root_in_simple_cycle

    def test_root_in_simple_cycle(self):
        """
        The root is in a simple cycle.
        RuleSet: #ta->#tb, #tb->#tc, #tc->#ta (triangle)
        Components: b#tb
        Expecting: b#tb
        """
        rules = set()
        rules.add(tools.create_rule(ruleset=self.__class__.__name__,
                                    name="Ra",
                                    action="Action for a",
                                    types=["[email protected]"],
                                    dependson=["Rb"]))
        rules.add(tools.create_rule(ruleset=self.__class__.__name__,
                                    name="Rb",
                                    action="Action for b",
                                    types=["[email protected]"],
                                    dependson=["Rc"]))
        rules.add(tools.create_rule(ruleset=self.__class__.__name__,
                                    name="Rc",
                                    action="Action for c",
                                    dependson=["Ra"],
                                    types=["[email protected]"]))
        ruleset = RuleSet(rules)
        depgraph = ruleset.get_depgraph([Component("b#[email protected]")])
        components = depgraph.components_map

        self.assertTrue(components is not None)
        self.assertEquals(len(components), 1, "Map: %s" % components)
        self.assertTrue("b#[email protected]" in components)
        self.assertTrue(depgraph.dag is not None)
        self.assertTrue(depgraph.dag.has_node("b#[email protected]"))
开发者ID:AdrienDebrie,项目名称:sequencer,代码行数:32,代码来源:testmodel_depgraph.py


示例10: test_no_root_with_cycle_in_graph_rules

    def test_no_root_with_cycle_in_graph_rules(self):
        """
        There are no match in the given component list.
        RuleSet: #ta->#tb->#ta
        Components: c#tc
        Expecting: c#tc.
        """
        rules = set()
        rules.add(tools.create_rule(ruleset=self.__class__.__name__,
                                    name="Ra",
                                    action="Action for a",
                                    types=["[email protected]"],
                                    depsfinder=tools.getMockDepsFinderCmd(["foo#[email protected]"]),
                                    dependson=["Rb"]))
        rules.add(tools.create_rule(ruleset=self.__class__.__name__,
                                    name="Rb",
                                    action="Action for b",
                                    types=["[email protected]"],
                                    depsfinder=tools.getMockDepsFinderCmd(["foo#[email protected]"]),
                                    dependson=["Ra"]))

        ruleset = RuleSet(rules)
        depgraph = ruleset.get_depgraph([Component("c#[email protected]")])
        components = depgraph.components_map

        self.assertTrue(components is not None)
        self.assertEquals(len(components), 1, "Map: %s" % components)
        self.assertTrue("c#[email protected]" in components)
        self.assertTrue(depgraph.dag is not None)
        self.assertEquals(len(depgraph.dag.nodes()), 1)
        self.assertTrue(depgraph.dag.has_node("c#[email protected]"))
开发者ID:AdrienDebrie,项目名称:sequencer,代码行数:31,代码来源:testmodel_depgraph.py


示例11: test_simple_deps_ta_tb_b_a_withdepsfinder

    def test_simple_deps_ta_tb_b_a_withdepsfinder(self):
        """
        RuleSet: #ta->#tb,
        Components: b#tb, a#ta (reverse)
        Component a does provide a depfinder that returns b#tb
        Expecting: a#ta -> b#tb
        """
        rules = set()
        rules.add(tools.create_rule(ruleset=self.__class__.__name__,
                                    name="Ra",
                                    action="Action for a",
                                    types=["[email protected]"],
                                    depsfinder=tools.getMockDepsFinderCmd(["b#[email protected]"]),
                                    dependson=["Rb"]))
        rules.add(tools.create_rule(ruleset=self.__class__.__name__,
                                    name="Rb",
                                    action="Action for b",
                                    types=["[email protected]"]))
        ruleset = RuleSet(rules)
        depgraph = ruleset.get_depgraph([Component("b#[email protected]"),
                                         Component("a#[email protected]")])
        components = depgraph.components_map

        self.assertTrue(components is not None)
        self.assertEquals(len(components), 2, "Map: %s" % components)
        self.assertTrue("a#[email protected]" in components)
        self.assertTrue("b#[email protected]" in components)
        self.assertTrue(depgraph.dag is not None)
        self.assertTrue(depgraph.dag.has_node("a#[email protected]"))
        self.assertTrue(depgraph.dag.has_node("b#[email protected]"))
        self.assertTrue(depgraph.dag.has_edge(("a#[email protected]", "b#[email protected]")))
开发者ID:AdrienDebrie,项目名称:sequencer,代码行数:31,代码来源:testmodel_depgraph.py


示例12: test_empty_depsfinder_forbidden

 def test_empty_depsfinder_forbidden(self):
     try:
         tools.create_rule(self.__class__.__name__,
                           "EmptyDepsFinderForbidden",
                           depsfinder="")
         self.fail("Setting an empty depsfinder should raise an exception!")
     except ValueError:
         pass
开发者ID:AdrienDebrie,项目名称:sequencer,代码行数:8,代码来源:testmodel_basic.py


示例13: test_rule_pass_filter_re_category

    def test_rule_pass_filter_re_category(self):
        rule = tools.create_rule("RS", "RN", filter="%category =~ cat")
        self.assertTrue(rule.pass_filter(Component("foo#[email protected]")))
        self.assertFalse(rule.pass_filter(Component("bar#[email protected]")))

        rule = tools.create_rule("RS", "RN", filter="%category !~ cat")
        self.assertFalse(rule.pass_filter(Component("foo#[email protected]")))
        self.assertTrue(rule.pass_filter(Component("bar#[email protected]")))
开发者ID:AdrienDebrie,项目名称:sequencer,代码行数:8,代码来源:testmodel_basic.py


示例14: test_rule_pass_filter_re_type

    def test_rule_pass_filter_re_type(self):
        rule = tools.create_rule("RS", "RN", filter="%type =~ bar")
        self.assertTrue(rule.pass_filter(Component("foo#[email protected]")))
        self.assertFalse(rule.pass_filter(Component("bar#[email protected]")))

        rule = tools.create_rule("RS", "RN", filter="%type !~ bar")
        self.assertFalse(rule.pass_filter(Component("foo#[email protected]")))
        self.assertTrue(rule.pass_filter(Component("bar#[email protected]")))
开发者ID:AdrienDebrie,项目名称:sequencer,代码行数:8,代码来源:testmodel_basic.py


示例15: test_empty_types_forbidden

 def test_empty_types_forbidden(self):
     try:
         tools.create_rule(self.__class__.__name__,
                           "EmptyTypesForbidden",
                           types=set())
         self.fail("Setting an empty set should raise an exception!")
     except ValueError:
         pass
开发者ID:AdrienDebrie,项目名称:sequencer,代码行数:8,代码来源:testmodel_basic.py


示例16: test_baddep2

 def test_baddep2(self):
     rule1 = tools.create_rule(self.__class__.__name__, "BadDep2-1")
     rule2 = tools.create_rule(self.__class__.__name__, "BadDep2-2", dependson="Unknown")
     rules = set([rule1, rule2])
     try:
         RuleSet(rules)
         self.fail("Unknown Dependency should be raised: %s" % rule2)
     except UnknownDepError as ude:
         print "Exception is: %s" % ude
开发者ID:AdrienDebrie,项目名称:sequencer,代码行数:9,代码来源:testmodel_basic.py


示例17: test_update_name_deps_simple

 def test_update_name_deps_simple(self):
     self.db.add_rule(tools.create_rule("RS", "r1"))
     self.db.add_rule(tools.create_rule("RS", "r2", dependson=set(['r1'])))
     self.db.update_rule("RS", "r1", [("name", "foo")])
     rules = self.db.get_rules_for("RS")
     self.assertTrue(rules is not None)
     self.assertEquals(len(rules), 2)
     self.assertEquals(len(rules["r2"].dependson), 1)
     self.assertTrue("foo" in rules["r2"].dependson)
开发者ID:cloax,项目名称:sequencer,代码行数:9,代码来源:abstracttestdb.py


示例18: test_update_ruleset

 def test_update_ruleset(self):
     rule = tools.create_rule(self.__class__.__name__, "update")
     self.db.add_rule(rule)
     self.db.update_rule(rule.ruleset, rule.name, [("ruleset", "NewRS")])
     rules_for = self.db.get_rules_map()
     self.assertTrue(rules_for is not None)
     self.assertEquals(len(rules_for), 1, str(rules_for))
     self.assertRuleInMap(tools.create_rule("NewRS", "update"),
                          rules_for)
开发者ID:cloax,项目名称:sequencer,代码行数:9,代码来源:abstracttestdb.py


示例19: test_dup_forbidden

 def test_dup_forbidden(self):
     rule1 = tools.create_rule(self.__class__.__name__, "DupForbidden")
     rule2 = tools.create_rule(self.__class__.__name__, "DupForbidden")
     self.assertEquals(rule1, rule2)
     self.db.add_rule(rule1)
     try:
         self.db.add_rule(rule2)
         self.fail("Duplicate rules are forbidden in the DB")
     except Exception as e:
         print "Exception is: %s" % e
开发者ID:cloax,项目名称:sequencer,代码行数:10,代码来源:abstracttestdb.py


示例20: test_rule_match_type_multiple

    def test_rule_match_type_multiple(self):
        rule = tools.create_rule("RS", "RN", types=["[email protected]", "[email protected]"])
        self.assertTrue(rule.match_type(Component("foo#[email protected]")))
        self.assertTrue(rule.match_type(Component("foo#[email protected]")))
        self.assertFalse(rule.match_type(Component("bar#[email protected]")))

        rule = tools.create_rule("RS", "RN", types=["[email protected]", "[email protected]"])
        self.assertTrue(rule.match_type(Component("foo#[email protected]")))
        self.assertTrue(rule.match_type(Component("foo#[email protected]")))
        self.assertFalse(rule.match_type(Component("foo#[email protected]")))
        self.assertFalse(rule.match_type(Component("foo#[email protected]")))
开发者ID:AdrienDebrie,项目名称:sequencer,代码行数:11,代码来源:testmodel_basic.py



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python docker_mock.mock_docker函数代码示例发布时间:2022-05-27
下一篇:
Python dell10g.enable函数代码示例发布时间:2022-05-27
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap