1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- """Tests for the HighlightMagics preprocessor"""
- from .base import PreprocessorTestsBase
- from ..highlightmagics import HighlightMagicsPreprocessor
- class TestHighlightMagics(PreprocessorTestsBase):
- """Contains test functions for highlightmagics.py"""
- def build_preprocessor(self):
- """Make an instance of a preprocessor"""
- preprocessor = HighlightMagicsPreprocessor()
- preprocessor.enabled = True
- return preprocessor
- def test_constructor(self):
- """Can a HighlightMagicsPreprocessor be constructed?"""
- self.build_preprocessor()
- def test_tagging(self):
- """Test the HighlightMagicsPreprocessor tagging"""
- nb = self.build_notebook()
- res = self.build_resources()
- preprocessor = self.build_preprocessor()
- nb.cells[0].source = """%%R -i x,y -o XYcoef
- lm.fit <- lm(y~x)
- par(mfrow=c(2,2))
- print(summary(lm.fit))
- plot(lm.fit)
- XYcoef <- coef(lm.fit)"""
- nb, res = preprocessor(nb, res)
- assert('magics_language' in nb.cells[0]['metadata'])
- self.assertEqual(nb.cells[0]['metadata']['magics_language'], 'r')
- def test_no_false_positive(self):
- """Test that HighlightMagicsPreprocessor does not tag false positives"""
- nb = self.build_notebook()
- res = self.build_resources()
- preprocessor = self.build_preprocessor()
- nb.cells[0].source = """# this should not be detected
- print(\"""
- %%R -i x, y
- \""")"""
- nb, res = preprocessor(nb, res)
- assert('magics_language' not in nb.cells[0]['metadata'])
|