Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def test_sanitize_abs_path_semicolon_posix(self):
output_choice = OutputChoice(['xunit'])
self.assertEqual(output_choice.sanitize('xunit;/home/test-results.xml'), ('xunit', ['/home/test-results.xml']))
def test_sanitize_abs_path_semicolon_windows(self):
output_choice = OutputChoice(['xunit'])
self.assertEqual(output_choice.sanitize('xunit;C:\\testResults\\test-results.xml'), ('xunit', ['C:\\testResults\\test-results.xml']))
def test_sanitize_abs_rel_path_semicolon_posix(self):
output_choice = OutputChoice(['xunit'])
self.assertEqual(output_choice.sanitize('xunit;/home/test-results.xml;./test-results.xml'),
('xunit', ['/home/test-results.xml', './test-results.xml']))
def test_sanitize_abs_path_semicolon_windows_alternate(self):
output_choice = OutputChoice(['xunit'])
self.assertEqual(output_choice.sanitize('xunit;C:/testResults/test-results.xml'), ('xunit', ['C:/testResults/test-results.xml']))
def test_sanitize_rel_path_colon_posix(self):
output_choice = OutputChoice(['xunit'])
self.assertEqual(output_choice.sanitize('xunit:./test-results.xml'), ('xunit', ['./test-results.xml']))
def test_sanitize_abs_path_colon_posix(self):
output_choice = OutputChoice(['xunit'])
self.assertEqual(output_choice.sanitize('xunit:/home/test-results.xml'), ('xunit', ['/home/test-results.xml']))
def test_sanitize_rel_path_semicolon_windows(self):
output_choice = OutputChoice(['xunit'])
self.assertEqual(output_choice.sanitize('xunit;.\\test-results.xml'), ('xunit', ['.\\test-results.xml']))
def test_sanitize_abs_rel_path_colon_windows(self):
output_choice = OutputChoice(['xunit'])
self.assertEqual(output_choice.sanitize('xunit:C:\\home\\test-results.xml:.\\test-results.xml'),
('xunit', ['C:\\home\\test-results.xml', '.\\test-results.xml']))
def sanitize(self, value):
parsed = re.split(r'[;:]', value)
output_format, output_targets = parsed[0], parsed[1:]
checked_targets = []
for i, target in enumerate(output_targets):
if sys.platform.startswith('win') and target.startswith((os.path.sep, os.path.altsep)):
checked_targets[-1] += ':'+target
else:
checked_targets.append(target)
validated_format = super(OutputChoice, self).sanitize(output_format)
return (validated_format, checked_targets)