mirror of
https://github.com/Novartis/cellxgene-gateway.git
synced 2026-09-16 05:07:57 +08:00
36 lines
1.3 KiB
Python
36 lines
1.3 KiB
Python
import unittest
|
|
from unittest.mock import MagicMock, patch
|
|
|
|
from cellxgene_gateway.extra_scripts import get_extra_scripts
|
|
|
|
|
|
class TestExtraScripts(unittest.TestCase):
|
|
@patch("cellxgene_gateway.env.extra_scripts", new='["abc","def"]')
|
|
def test_GIVEN_two_scripts_THEN_returns_two_strings(self):
|
|
self.assertEqual(get_extra_scripts(), ["abc", "def"])
|
|
|
|
@patch("cellxgene_gateway.env.extra_scripts", new='["abc", "def"]')
|
|
def test_GIVEN_two_scripts_space_THEN_returns_two_strings(self):
|
|
self.assertEqual(get_extra_scripts(), ["abc", "def"])
|
|
|
|
@patch("cellxgene_gateway.env.extra_scripts", new=None)
|
|
def test_GIVEN_none_THEN_returns_empty_array(self):
|
|
self.assertEqual(get_extra_scripts(), [])
|
|
|
|
@patch("cellxgene_gateway.env.extra_scripts", new="[]")
|
|
def test_GIVEN_empty_string_THEN_returns_empty_array(self):
|
|
self.assertEqual(get_extra_scripts(), [])
|
|
|
|
@patch("cellxgene_gateway.env.extra_scripts", new="'asdf'")
|
|
def test_GIVEN_bare_string_THEN_throws_Exception(self):
|
|
with self.assertRaises(Exception) as context:
|
|
self.assertEqual(get_extra_scripts(), [])
|
|
self.assertEqual(
|
|
'Error parsing GATEWAY_EXTRA_SCRIPTS, expected JSON array e.g. ["https://example.com/path/to/script.js"]',
|
|
str(context.exception),
|
|
)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|