53 lines
1.8 KiB
Python
53 lines
1.8 KiB
Python
'''Test'''
|
|
|
|
from selenium.webdriver.common.keys import Keys
|
|
|
|
from .utils import cmdtrl, shift, validate_dualmode_state
|
|
|
|
def test_dualmode_markdown(notebook):
|
|
def is_cell_rendered(index):
|
|
JS = 'return !!IPython.notebook.get_cell(%s).rendered;'%index
|
|
return notebook.browser.execute_script(JS)
|
|
|
|
|
|
a = 'print("a")'
|
|
index = 1
|
|
notebook.append(a)
|
|
|
|
#Markdown rendering / unrendering
|
|
notebook.focus_cell(index)
|
|
validate_dualmode_state(notebook, 'command', index)
|
|
notebook.body.send_keys("m")
|
|
assert notebook.get_cell_type(index) == 'markdown'
|
|
assert not is_cell_rendered(index) #cell is not rendered
|
|
|
|
notebook.body.send_keys(Keys.ENTER)#cell is unrendered
|
|
assert not is_cell_rendered(index) #cell is not rendered
|
|
validate_dualmode_state(notebook, 'edit', index)
|
|
|
|
cmdtrl(notebook.browser, Keys.ENTER)
|
|
assert is_cell_rendered(index) #cell is rendered with crtl+enter
|
|
validate_dualmode_state(notebook, 'command', index)
|
|
|
|
notebook.body.send_keys(Keys.ENTER)#cell is unrendered
|
|
assert not is_cell_rendered(index) #cell is not rendered
|
|
|
|
notebook.focus_cell(index - 1)
|
|
assert not is_cell_rendered(index) #Select index-1; cell index is still not rendered
|
|
validate_dualmode_state(notebook, 'command', index - 1)
|
|
|
|
notebook.focus_cell(index)
|
|
validate_dualmode_state(notebook, 'command', index)
|
|
cmdtrl(notebook.browser, Keys.ENTER)
|
|
assert is_cell_rendered(index)#Cell is rendered
|
|
|
|
notebook.focus_cell(index - 1)
|
|
validate_dualmode_state(notebook, 'command', index - 1)
|
|
|
|
shift(notebook.browser, Keys.ENTER)
|
|
validate_dualmode_state(notebook, 'command', index)
|
|
assert is_cell_rendered(index)#Cell is rendered
|
|
|
|
shift(notebook.browser, Keys.ENTER)
|
|
validate_dualmode_state(notebook, 'edit', index + 1)
|
|
assert is_cell_rendered(index)#Cell is rendered
|