Adds xblock handler_url support to the LMS, and makes handle_ajax use that code. [LMS-230] [LMS-229]
34 lines
730 B
Python
34 lines
730 B
Python
"""
|
|
Tests of the LMS XBlock Runtime and associated utilities
|
|
"""
|
|
|
|
from ddt import ddt, data
|
|
from unittest import TestCase
|
|
from lms.lib.xblock.runtime import quote_slashes, unquote_slashes
|
|
|
|
TEST_STRINGS = [
|
|
'',
|
|
'foobar',
|
|
'foo/bar',
|
|
'foo/bar;',
|
|
'foo;;bar',
|
|
'foo;_bar',
|
|
'foo/',
|
|
'/bar',
|
|
'foo//bar',
|
|
'foo;;;bar',
|
|
]
|
|
|
|
|
|
@ddt
|
|
class TestQuoteSlashes(TestCase):
|
|
"""Test the quote_slashes and unquote_slashes functions"""
|
|
|
|
@data(*TEST_STRINGS)
|
|
def test_inverse(self, test_string):
|
|
self.assertEquals(test_string, unquote_slashes(quote_slashes(test_string)))
|
|
|
|
@data(*TEST_STRINGS)
|
|
def test_escaped(self, test_string):
|
|
self.assertNotIn('/', quote_slashes(test_string))
|