Server : Apache System : Linux iad1-shared-b8-43 6.6.49-grsec-jammy+ #10 SMP Thu Sep 12 23:23:08 UTC 2024 x86_64 User : dh_edsupp ( 6597262) PHP Version : 8.2.26 Disable Function : NONE Directory : /opt/prometheus-monitoring-scripts/lib/python3.10/site-packages/setuptools/tests/ |
Upload File : |
import configparser from setuptools.command import setopt class TestEdit: @staticmethod def parse_config(filename): parser = configparser.ConfigParser() with open(filename, encoding='utf-8') as reader: parser.read_file(reader) return parser @staticmethod def write_text(file, content): with open(file, 'wb') as strm: strm.write(content.encode('utf-8')) def test_utf8_encoding_retained(self, tmpdir): """ When editing a file, non-ASCII characters encoded in UTF-8 should be retained. """ config = tmpdir.join('setup.cfg') self.write_text(str(config), '[names]\njaraco=джарако') setopt.edit_config(str(config), dict(names=dict(other='yes'))) parser = self.parse_config(str(config)) assert parser.get('names', 'jaraco') == 'джарако' assert parser.get('names', 'other') == 'yes' def test_case_retained(self, tmpdir): """ When editing a file, case of keys should be retained. """ config = tmpdir.join('setup.cfg') self.write_text(str(config), '[names]\nFoO=bAr') setopt.edit_config(str(config), dict(names=dict(oTher='yes'))) actual = config.read_text(encoding='ascii') assert 'FoO' in actual assert 'oTher' in actual