
This hopefully updates all module headers such that the file encoding is utf-8, and uses Unicode literals, etc.
62 lines
2 KiB
Python
62 lines
2 KiB
Python
# -*- coding: utf-8 -*-
|
|
|
|
from __future__ import unicode_literals
|
|
|
|
from unittest import TestCase
|
|
|
|
from rattail import config
|
|
|
|
|
|
class TestParseList(TestCase):
|
|
|
|
def test_none(self):
|
|
value = config.parse_list(None)
|
|
self.assertEqual(len(value), 0)
|
|
|
|
def test_single_value(self):
|
|
value = config.parse_list(u'foo')
|
|
self.assertEqual(len(value), 1)
|
|
self.assertEqual(value[0], u'foo')
|
|
|
|
def test_single_value_padded_by_spaces(self):
|
|
value = config.parse_list(u' foo ')
|
|
self.assertEqual(len(value), 1)
|
|
self.assertEqual(value[0], u'foo')
|
|
|
|
def test_slash_is_not_a_separator(self):
|
|
value = config.parse_list(u'/dev/null')
|
|
self.assertEqual(len(value), 1)
|
|
self.assertEqual(value[0], u'/dev/null')
|
|
|
|
def test_multiple_values_separated_by_whitespace(self):
|
|
value = config.parse_list(u'foo bar baz')
|
|
self.assertEqual(len(value), 3)
|
|
self.assertEqual(value[0], u'foo')
|
|
self.assertEqual(value[1], u'bar')
|
|
self.assertEqual(value[2], u'baz')
|
|
|
|
def test_multiple_values_separated_by_commas(self):
|
|
value = config.parse_list(u'foo,bar,baz')
|
|
self.assertEqual(len(value), 3)
|
|
self.assertEqual(value[0], u'foo')
|
|
self.assertEqual(value[1], u'bar')
|
|
self.assertEqual(value[2], u'baz')
|
|
|
|
def test_multiple_values_separated_by_whitespace_and_commas(self):
|
|
value = config.parse_list(u' foo, bar baz')
|
|
self.assertEqual(len(value), 3)
|
|
self.assertEqual(value[0], u'foo')
|
|
self.assertEqual(value[1], u'bar')
|
|
self.assertEqual(value[2], u'baz')
|
|
|
|
def test_multiple_values_separated_by_whitespace_and_commas_with_some_quoting(self):
|
|
value = config.parse_list(u"""
|
|
foo
|
|
"C:\\some path\\with spaces\\and, a comma",
|
|
baz
|
|
""")
|
|
self.assertEqual(len(value), 3)
|
|
self.assertEqual(value[0], u'foo')
|
|
self.assertEqual(value[1], u'C:\\some path\\with spaces\\and, a comma')
|
|
self.assertEqual(value[2], u'baz')
|