def test_is_marked_valid_selector_no_refs(self):
     """Test that a valid selector return True when it has marking refs and
         False when not."""
     self.assertTrue(api.is_marked(self.test_tlo, ["description"]))
     self.assertTrue(api.is_marked(self.test_tlo, ["description"], ["marking-definition--2", "marking-definition--3"]))
     self.assertTrue(api.is_marked(self.test_tlo, ["description"], ["marking-definition--2"]))
     self.assertFalse(api.is_marked(self.test_tlo, ["description"], ["marking-definition--2", "marking-definition--8"]))
Exemple #2
0
 def test_is_marked_valid_selector_and_refs(self):
     """Test that a valid selector returns True when marking_refs match."""
     self.assertTrue(
         api.is_marked(self.test_tlo, ["description"],
                       ["marking-definition--1"]))
     self.assertFalse(
         api.is_marked(self.test_tlo, ["title"], ["marking-definition--1"]))
    def test_is_marked_valid_selector_multiple_refs(self):
        """Test that a valid selector returns True if aall marking_refs match.
            Otherwise False."""
        self.assertTrue(api.is_marked(self.test_tlo, ["revision"], ["marking-definition--2", "marking-definition--3"]))
        self.assertFalse(api.is_marked(self.test_tlo, ["revision"], ["marking-definition--2", "marking-definition--1"]))
        self.assertTrue(api.is_marked(self.test_tlo, ["revision"], "marking-definition--2"))

        self.assertFalse(api.is_marked(self.test_tlo, ["revision"], ["marking-definition--1234"]))
Exemple #4
0
    def test_is_marked_object_and_granular_combinations(self):
        """Test multiple combinations for inherited and descendant markings."""
        test_tlo = \
            {
                "a": 333,
                "b": "value",
                "c": [
                    17,
                    "list value",
                    {
                        "g": "nested",
                        "h": 45
                    }
                ],
                "x": {
                    "y": [
                        "hello",
                        88
                    ],
                    "z": {
                        "foo1": "bar",
                        "foo2": 65
                    }
                },
                "object_marking_refs": "11",
                "granular_markings": [
                    {
                        "marking_ref": "1",
                        "selectors": ["a"]
                    },
                    {
                        "marking_ref": "2",
                        "selectors": ["c"]
                    },
                    {
                        "marking_ref": "3",
                        "selectors": ["c.[1]"]
                    },
                    {
                        "marking_ref": "4",
                        "selectors": ["c.[2]"]
                    },
                    {
                        "marking_ref": "5",
                        "selectors": ["c.[2].g"]
                    },
                    {
                        "marking_ref": "6",
                        "selectors": ["x"]
                    },
                    {
                        "marking_ref": "7",
                        "selectors": ["x.y"]
                    },
                    {
                        "marking_ref": "8",
                        "selectors": ["x.y.[1]"]
                    },
                    {
                        "marking_ref": "9",
                        "selectors": ["x.z"]
                    },
                    {
                        "marking_ref": "10",
                        "selectors": ["x.z.foo2"]
                    },
                ]
            }

        self.assertTrue(api.is_marked(test_tlo, "a", ["1"], False, False))
        self.assertTrue(api.is_marked(test_tlo, "a", ["1", "11"], True, False))
        self.assertTrue(api.is_marked(test_tlo, "a", ["1", "11"], True, True))
        self.assertTrue(api.is_marked(test_tlo, "a", ["1"], False, True))

        self.assertFalse(
            api.is_marked(test_tlo, "b", inherited=False, descendants=False))
        self.assertTrue(api.is_marked(test_tlo, "b", ["11"], True, False))
        self.assertTrue(api.is_marked(test_tlo, "b", ["11"], True, True))
        self.assertFalse(
            api.is_marked(test_tlo, "b", inherited=False, descendants=True))

        self.assertTrue(api.is_marked(test_tlo, "c", ["2"], False, False))
        self.assertTrue(api.is_marked(test_tlo, "c", ["2", "11"], True, False))
        self.assertTrue(
            api.is_marked(test_tlo, "c", ["2", "3", "4", "5", "11"], True,
                          True))
        self.assertTrue(
            api.is_marked(test_tlo, "c", ["2", "3", "4", "5"], False, True))

        self.assertFalse(
            api.is_marked(test_tlo,
                          "c.[0]",
                          inherited=False,
                          descendants=False))
        self.assertTrue(
            api.is_marked(test_tlo, "c.[0]", ["2", "11"], True, False))
        self.assertTrue(
            api.is_marked(test_tlo, "c.[0]", ["2", "11"], True, True))
        self.assertFalse(
            api.is_marked(test_tlo, "c.[0]", inherited=False,
                          descendants=True))

        self.assertTrue(api.is_marked(test_tlo, "c.[1]", ["3"], False, False))
        self.assertTrue(
            api.is_marked(test_tlo, "c.[1]", ["2", "3", "11"], True, False))
        self.assertTrue(
            api.is_marked(test_tlo, "c.[1]", ["2", "3", "11"], True, True))
        self.assertTrue(api.is_marked(test_tlo, "c.[1]", ["3"], False, True))

        self.assertTrue(api.is_marked(test_tlo, "c.[2]", ["4"], False, False))
        self.assertTrue(
            api.is_marked(test_tlo, "c.[2]", ["2", "4", "11"], True, False))
        self.assertTrue(
            api.is_marked(test_tlo, "c.[2]", ["2", "4", "5", "11"], True,
                          True))
        self.assertTrue(
            api.is_marked(test_tlo, "c.[2]", ["4", "5"], False, True))

        self.assertTrue(api.is_marked(test_tlo, "c.[2].g", ["5"], False,
                                      False))
        self.assertTrue(
            api.is_marked(test_tlo, "c.[2].g", ["2", "4", "5", "11"], True,
                          False))
        self.assertTrue(
            api.is_marked(test_tlo, "c.[2].g", ["2", "4", "5", "11"], True,
                          True))
        self.assertTrue(api.is_marked(test_tlo, "c.[2].g", ["5"], False, True))

        self.assertTrue(api.is_marked(test_tlo, "x", ["6"], False, False))
        self.assertTrue(api.is_marked(test_tlo, "x", ["6", "11"], True, False))
        self.assertTrue(
            api.is_marked(test_tlo, "x", ["6", "7", "8", "9", "10", "11"],
                          True, True))
        self.assertTrue(
            api.is_marked(test_tlo, "x", ["6", "7", "8", "9", "10"], False,
                          True))

        self.assertTrue(api.is_marked(test_tlo, "x.y", ["7"], False, False))
        self.assertTrue(
            api.is_marked(test_tlo, "x.y", ["6", "7", "11"], True, False))
        self.assertTrue(
            api.is_marked(test_tlo, "x.y", ["6", "7", "8", "11"], True, True))
        self.assertTrue(api.is_marked(test_tlo, "x.y", ["7", "8"], False,
                                      True))

        self.assertFalse(
            api.is_marked(test_tlo,
                          "x.y.[0]",
                          inherited=False,
                          descendants=False))
        self.assertTrue(
            api.is_marked(test_tlo, "x.y.[0]", ["6", "7", "11"], True, False))
        self.assertTrue(
            api.is_marked(test_tlo, "x.y.[0]", ["6", "7", "11"], True, True))
        self.assertFalse(
            api.is_marked(test_tlo,
                          "x.y.[0]",
                          inherited=False,
                          descendants=True))

        self.assertTrue(api.is_marked(test_tlo, "x.y.[1]", ["8"], False,
                                      False))
        self.assertTrue(
            api.is_marked(test_tlo, "x.y.[1]", ["6", "7", "8", "11"], True,
                          False))
        self.assertTrue(
            api.is_marked(test_tlo, "x.y.[1]", ["6", "7", "8", "11"], True,
                          True))
        self.assertTrue(api.is_marked(test_tlo, "x.y.[1]", ["8"], False, True))

        self.assertTrue(api.is_marked(test_tlo, "x.z", ["9"], False, False))
        self.assertTrue(
            api.is_marked(test_tlo, "x.z", ["6", "9", "11"], True, False))
        self.assertTrue(
            api.is_marked(test_tlo, "x.z", ["6", "9", "10", "11"], True, True))
        self.assertTrue(
            api.is_marked(test_tlo, "x.z", ["9", "10"], False, True))

        self.assertFalse(
            api.is_marked(test_tlo,
                          "x.z.foo1",
                          inherited=False,
                          descendants=False))
        self.assertTrue(
            api.is_marked(test_tlo, "x.z.foo1", ["6", "9", "11"], True, False))
        self.assertTrue(
            api.is_marked(test_tlo, "x.z.foo1", ["6", "9", "11"], True, True))
        self.assertFalse(
            api.is_marked(test_tlo,
                          "x.z.foo1",
                          inherited=False,
                          descendants=True))

        self.assertTrue(
            api.is_marked(test_tlo, "x.z.foo2", ["10"], False, False))
        self.assertTrue(
            api.is_marked(test_tlo, "x.z.foo2", ["6", "9", "10", "11"], True,
                          False))
        self.assertTrue(
            api.is_marked(test_tlo, "x.z.foo2", ["6", "9", "10", "11"], True,
                          True))
        self.assertTrue(
            api.is_marked(test_tlo, "x.z.foo2", ["10"], False, True))
 def test_clear_marking_all_selectors(self):
     self.setUpClass()
     api.clear_markings(self.test_tlo, ["description", "type", "revision"])
     self.assertFalse(api.is_marked(self.test_tlo, "description"))
     self.assertTrue("granular_markings" not in self.test_tlo)
 def test_clear_marking_one_selector(self):
     """Test markings associated with one selector were removed."""
     self.setUpClass()
     api.clear_markings(self.test_tlo, "description")
     self.assertFalse(api.is_marked(self.test_tlo, "description"))
 def test_clear_marking_multiple_selectors(self):
     """Test clearing markings for multiple selectors effectively removes
         associated markings."""
     self.setUpClass()
     api.clear_markings(self.test_tlo, ["type", "description"])
     self.assertFalse(api.is_marked(self.test_tlo, ["type", "description"]))
 def test_clear_marking_smoke(self):
     """Test clear_marking call does not fail."""
     self.setUpClass()
     api.clear_markings(self.test_tlo, "revision")
     self.assertFalse(api.is_marked(self.test_tlo, "revision"))
 def test_is_marked_no_marking_refs(self):
     """Test that a valid content selector with no marking_refs returns True
         if there is a granular_marking that asserts that field, False
         otherwise."""
     self.assertFalse(api.is_marked(self.test_tlo, ["type"]))
     self.assertTrue(api.is_marked(self.test_tlo, ["revision"]))
    def test_is_marked_mix_selector(self):
        """Test valid selector, one marked and one not marked returns True."""
        self.assertTrue(api.is_marked(self.test_tlo, ["description", "revision"]))

        self.assertTrue(api.is_marked(self.test_tlo, ["description"]))
 def test_is_marked_smoke(self):
     """Smoke test is_marked call does not fail."""
     self.assertTrue(api.is_marked(self.test_tlo, ["description"]))
     self.assertFalse(api.is_marked(self.test_tlo, ["title"]))