45 lines
1.6 KiB
Python
45 lines
1.6 KiB
Python
from __future__ import unicode_literals
|
|
|
|
import argparse
|
|
import unittest
|
|
|
|
from mopidy import commands
|
|
|
|
|
|
class ConfigOverrideTypeTest(unittest.TestCase):
|
|
def test_valid_override(self):
|
|
expected = (b'section', b'key', b'value')
|
|
self.assertEqual(
|
|
expected, commands.config_override_type(b'section/key=value'))
|
|
self.assertEqual(
|
|
expected, commands.config_override_type(b'section/key=value '))
|
|
self.assertEqual(
|
|
expected, commands.config_override_type(b'section/key =value'))
|
|
self.assertEqual(
|
|
expected, commands.config_override_type(b'section /key=value'))
|
|
|
|
def test_valid_override_is_bytes(self):
|
|
section, key, value = commands.config_override_type(
|
|
b'section/key=value')
|
|
self.assertIsInstance(section, bytes)
|
|
self.assertIsInstance(key, bytes)
|
|
self.assertIsInstance(value, bytes)
|
|
|
|
def test_empty_override(self):
|
|
expected = ('section', 'key', '')
|
|
self.assertEqual(
|
|
expected, commands.config_override_type(b'section/key='))
|
|
self.assertEqual(
|
|
expected, commands.config_override_type(b'section/key= '))
|
|
|
|
def test_invalid_override(self):
|
|
self.assertRaises(
|
|
argparse.ArgumentTypeError,
|
|
commands.config_override_type, b'section/key')
|
|
self.assertRaises(
|
|
argparse.ArgumentTypeError,
|
|
commands.config_override_type, b'section=')
|
|
self.assertRaises(
|
|
argparse.ArgumentTypeError,
|
|
commands.config_override_type, b'section')
|