def test_tabs_append(document, comm): div1, div2 = Div(), Div() p1 = Pane(div1, name='Div1') p2 = Pane(div2, name='Div2') tabs = Tabs(p1, p2) model = tabs._get_model(document, comm=comm) div3 = Div() tabs.append(div3) tab1, tab2, tab3 = model.tabs
def test_tabs_insert(document, comm): div1 = Div() div2 = Div() tabs = Tabs(div1, div2) model = tabs._get_model(document, comm=comm) div3 = Div() tabs.insert(1, div3) tab1, tab2, tab3 = model.tabs assert get_div(tab1.child.children[0]) is div1 assert get_div(tab2.child.children[0]) is div3 assert get_div(tab3.child.children[0]) is div2
def test_tabs_pop(document, comm): div1 = Div() div2 = Div() tabs = Tabs(div1, div2) p1, p2 = tabs.objects model = tabs._get_model(document, comm=comm) tab1 = model.tabs[0] assert tab1.child.ref['id'] in p1._callbacks tabs.pop(0) assert len(model.tabs) == 1 tab1 = model.tabs[0] assert get_div(tab1.child) is div2 assert p1._callbacks == {}
def test_tabs_setitem(document, comm): div1 = Div() div2 = Div() tabs = Tabs(div1, div2) p1, p2 = tabs.objects model = tabs._get_model(document, comm=comm) tab1, tab2 = model.tabs assert tab1.child.ref['id'] in p1._callbacks div3 = Div() tabs[0] = div3 tab1, tab2 = model.tabs assert get_div(tab1.child) is div3 assert get_div(tab2.child) is div2 assert p1._callbacks == {}
def test_tabs_implicit_constructor(document, comm): div1, div2 = Div(), Div() p1 = Pane(div1, name='Div1') p2 = Pane(div2, name='Div2') tabs = Tabs(p1, p2) model = tabs._get_model(document, comm=comm) assert isinstance(model, BkTabs) assert len(model.tabs) == 2 assert all(isinstance(c, BkPanel) for c in model.tabs) tab1, tab2 = model.tabs assert tab1.title == 'Div1' assert get_div(tab1.child.children[0]) is div1 assert tab2.title == 'Div2' assert get_div(tab2.child.children[0]) is div2
def test_tabs_constructor(document, comm): div1 = Div() div2 = Div() tabs = Tabs(('Div1', div1), ('Div2', div2)) p1, p2 = tabs.objects model = tabs._get_model(document, comm=comm) assert isinstance(model, BkTabs) assert len(model.tabs) == 2 assert all(isinstance(c, BkPanel) for c in model.tabs) tab1, tab2 = model.tabs assert tab1.title == 'Div1' assert get_div(tab1.child.children[0]) is div1 assert tab2.title == 'Div2' assert get_div(tab2.child.children[0]) is div2
def test_tabs_remove(document, comm): div1 = Div() div2 = Div() tabs = Tabs(div1, div2) p1, p2 = tabs.objects model = tabs._get_model(document, comm=comm) tab1 = model.tabs[0] assert model.ref['id'] in p1._callbacks assert p1._models[model.ref['id']] is tab1.child tabs.remove(p1) assert len(model.tabs) == 1 tab1 = model.tabs[0] assert get_div(tab1.child.children[0]) is div2 assert p1._callbacks == {} assert p1._models == {}
def test_tabs_set_panes(document, comm): div1, div2 = Div(), Div() p1 = Pane(div1, name='Div1') p2 = Pane(div2, name='Div2') tabs = Tabs(p1, p2) model = tabs._get_model(document, comm=comm) div3 = Div() p3 = Pane(div3, name='Div3') tabs.objects = [p1, p2, p3] assert isinstance(model, BkTabs) assert len(model.tabs) == 3 assert all(isinstance(c, BkPanel) for c in model.tabs) tab1, tab2, tab3 = model.tabs assert tab1.title == 'Div1' assert get_div(tab1.child.children[0]) is div1 assert tab2.title == 'Div2' assert get_div(tab2.child.children[0]) is div2 assert tab3.title == 'Div3' assert get_div(tab3.child.children[0]) is div3