diff --git a/kaggle_requirements.txt b/kaggle_requirements.txt index 22b26470..d0376be7 100644 --- a/kaggle_requirements.txt +++ b/kaggle_requirements.txt @@ -16,6 +16,7 @@ TPOT==0.12.1 Theano Wand annoy +anywidget arrow bayesian-optimization boto3 diff --git a/tests/test_anywidget.py b/tests/test_anywidget.py new file mode 100644 index 00000000..03b12175 --- /dev/null +++ b/tests/test_anywidget.py @@ -0,0 +1,21 @@ +import unittest +import subprocess +import re + + +# Remove ANSI coloring escape codes +def strip_ansi(text): + ansi_escape = re.compile(r"\x1B[@-_][0-?]*[ -/]*[@-~]") + return ansi_escape.sub("", text) + + +class TestAnyWidget(unittest.TestCase): + + def test_labextension(self): + """Test if the anywidget labextension is installed and enabled.""" + output = subprocess.check_output( + ["jupyter", "labextension", "list"], stderr=subprocess.STDOUT, text=True + ) + output = strip_ansi(output) + match = re.search(r"^\s*anywidget\s+v[\d.]+\s+enabled\s+OK\b.*$", output, re.MULTILINE) + self.assertIsNotNone(match, "anywidget not found in labextension list")