diff options
Diffstat (limited to 'bs4/tests')
-rw-r--r-- | bs4/tests/test_soup.py | 18 | ||||
-rw-r--r-- | bs4/tests/test_tree.py | 6 |
2 files changed, 20 insertions, 4 deletions
diff --git a/bs4/tests/test_soup.py b/bs4/tests/test_soup.py index ddbffd4..39e1964 100644 --- a/bs4/tests/test_soup.py +++ b/bs4/tests/test_soup.py @@ -7,6 +7,8 @@ from bs4 import ( BeautifulStoneSoup, ) from bs4.element import ( + CharsetMetaAttributeValue, + ContentMetaAttributeValue, SoupStrainer, NamespacedAttribute, ) @@ -299,3 +301,19 @@ class TestNamedspacedAttribute(SoupTest): e = NamespacedAttribute("z", "b", "c") self.assertNotEqual(a, e) + + +class TestAttributeValueWithCharsetSubstitution(unittest.TestCase): + + def test_content_meta_attribute_value(self): + value = CharsetMetaAttributeValue("euc-jp") + self.assertEqual("euc-jp", value) + self.assertEqual("euc-jp", value.original_value) + self.assertEqual("utf8", value.encode("utf8")) + + + def test_content_meta_attribute_value(self): + value = ContentMetaAttributeValue("text/html; charset=euc-jp") + self.assertEqual("text/html; charset=euc-jp", value) + self.assertEqual("text/html; charset=euc-jp", value.original_value) + self.assertEqual("text/html; charset=utf8", value.encode("utf8")) diff --git a/bs4/tests/test_tree.py b/bs4/tests/test_tree.py index 661decb..6cb1b7f 100644 --- a/bs4/tests/test_tree.py +++ b/bs4/tests/test_tree.py @@ -1262,10 +1262,8 @@ class TestSubstitutions(SoupTest): 'http-equiv="Content-type"/>') soup = self.soup(meta_tag) - # Parse the document, and the charset is replaced with a - # generic value. - self.assertEqual(soup.meta['content'], - 'text/html; charset=%SOUP-ENCODING%') + # Parse the document, and the charset apprears unchanged. + self.assertEqual(soup.meta['content'], 'text/html; charset=x-sjis') # Encode the document into some encoding, and the encoding is # substituted into the meta tag. |