(self)
| 939 | self.assertIn(dom2, dom1) |
| 940 | |
| 941 | def test_count(self): |
| 942 | # equal html contains each other one time |
| 943 | dom1 = parse_html("<p>foo") |
| 944 | dom2 = parse_html("<p>foo</p>") |
| 945 | self.assertEqual(dom1.count(dom2), 1) |
| 946 | self.assertEqual(dom2.count(dom1), 1) |
| 947 | |
| 948 | dom2 = parse_html("<p>foo</p><p>bar</p>") |
| 949 | self.assertEqual(dom2.count(dom1), 1) |
| 950 | |
| 951 | dom2 = parse_html("<p>foo foo</p><p>foo</p>") |
| 952 | self.assertEqual(dom2.count("foo"), 3) |
| 953 | |
| 954 | dom2 = parse_html('<p class="bar">foo</p>') |
| 955 | self.assertEqual(dom2.count("bar"), 0) |
| 956 | self.assertEqual(dom2.count("class"), 0) |
| 957 | self.assertEqual(dom2.count("p"), 0) |
| 958 | self.assertEqual(dom2.count("o"), 2) |
| 959 | |
| 960 | dom2 = parse_html("<p>foo</p><p>foo</p>") |
| 961 | self.assertEqual(dom2.count(dom1), 2) |
| 962 | |
| 963 | dom2 = parse_html('<div><p>foo<input type=""></p><p>foo</p></div>') |
| 964 | self.assertEqual(dom2.count(dom1), 1) |
| 965 | |
| 966 | dom2 = parse_html("<div><div><p>foo</p></div></div>") |
| 967 | self.assertEqual(dom2.count(dom1), 1) |
| 968 | |
| 969 | dom2 = parse_html("<p>foo<p>foo</p></p>") |
| 970 | self.assertEqual(dom2.count(dom1), 1) |
| 971 | |
| 972 | dom2 = parse_html("<p>foo<p>bar</p></p>") |
| 973 | self.assertEqual(dom2.count(dom1), 0) |
| 974 | |
| 975 | # HTML with a root element contains the same HTML with no root element. |
| 976 | dom1 = parse_html("<p>foo</p><p>bar</p>") |
| 977 | dom2 = parse_html("<div><p>foo</p><p>bar</p></div>") |
| 978 | self.assertEqual(dom2.count(dom1), 1) |
| 979 | |
| 980 | # Target of search is a sequence of child elements and appears more |
| 981 | # than once. |
| 982 | dom2 = parse_html("<div><p>foo</p><p>bar</p><p>foo</p><p>bar</p></div>") |
| 983 | self.assertEqual(dom2.count(dom1), 2) |
| 984 | |
| 985 | # Searched HTML has additional children. |
| 986 | dom1 = parse_html("<a/><b/>") |
| 987 | dom2 = parse_html("<a/><b/><c/>") |
| 988 | self.assertEqual(dom2.count(dom1), 1) |
| 989 | |
| 990 | # No match found in children. |
| 991 | dom1 = parse_html("<b/><a/>") |
| 992 | self.assertEqual(dom2.count(dom1), 0) |
| 993 | |
| 994 | # Target of search found among children and grandchildren. |
| 995 | dom1 = parse_html("<b/><b/>") |
| 996 | dom2 = parse_html("<a><b/><b/></a><b/><b/>") |
| 997 | self.assertEqual(dom2.count(dom1), 2) |
| 998 |
nothing calls this directly
no test coverage detected