Uploaded Test files
This commit is contained in:
parent
f584ad9d97
commit
2e81cb7d99
16627 changed files with 2065359 additions and 102444 deletions
|
|
@ -0,0 +1,96 @@
|
|||
# Copyright (c) Jupyter Development Team.
|
||||
# Distributed under the terms of the Modified BSD License.
|
||||
|
||||
import inspect
|
||||
import warnings
|
||||
from unittest import TestCase
|
||||
|
||||
from traitlets import TraitError
|
||||
|
||||
from ipywidgets import Dropdown, SelectionSlider, Select
|
||||
|
||||
|
||||
class TestDropdown(TestCase):
|
||||
|
||||
def test_construction(self):
|
||||
Dropdown()
|
||||
|
||||
def test_deprecation_warning_mapping_options(self):
|
||||
with warnings.catch_warnings(record=True) as w:
|
||||
warnings.simplefilter("always")
|
||||
|
||||
# Clearing the internal __warningregistry__ seems to be required for
|
||||
# Python 2 (but not for Python 3)
|
||||
module = inspect.getmodule(Dropdown)
|
||||
getattr(module, '__warningregistry__', {}).clear()
|
||||
|
||||
Dropdown(options={'One': 1, 'Two': 2, 'Three': 3})
|
||||
assert len(w) > 0
|
||||
assert issubclass(w[-1].category, DeprecationWarning)
|
||||
assert "Support for mapping types has been deprecated" in str(w[-1].message)
|
||||
|
||||
|
||||
class TestSelectionSlider(TestCase):
|
||||
|
||||
def test_construction(self):
|
||||
SelectionSlider(options=['a', 'b', 'c'])
|
||||
|
||||
def test_index_trigger(self):
|
||||
slider = SelectionSlider(options=['a', 'b', 'c'])
|
||||
observations = []
|
||||
def f(change):
|
||||
observations.append(change.new)
|
||||
slider.observe(f, 'index')
|
||||
assert slider.index == 0
|
||||
slider.options = [4, 5, 6]
|
||||
assert slider.index == 0
|
||||
assert slider.value == 4
|
||||
assert slider.label == '4'
|
||||
assert observations == [0]
|
||||
|
||||
class TestSelection(TestCase):
|
||||
|
||||
def test_construction(self):
|
||||
select = Select(options=['a', 'b', 'c'])
|
||||
|
||||
def test_index_trigger(self):
|
||||
select = Select(options=[1, 2, 3])
|
||||
observations = []
|
||||
def f(change):
|
||||
observations.append(change.new)
|
||||
select.observe(f, 'index')
|
||||
assert select.index == 0
|
||||
select.options = [4, 5, 6]
|
||||
assert select.index == 0
|
||||
assert select.value == 4
|
||||
assert select.label == '4'
|
||||
assert observations == [0]
|
||||
|
||||
def test_duplicate(self):
|
||||
select = Select(options=['first', 1, 'dup', 'dup'])
|
||||
observations = []
|
||||
def f(change):
|
||||
observations.append(change.new)
|
||||
select.observe(f, 'index')
|
||||
select.index = 3
|
||||
assert select.index == 3
|
||||
assert select.value == 'dup'
|
||||
assert select.label == 'dup'
|
||||
assert observations == [3]
|
||||
select.index = 2
|
||||
assert select.index == 2
|
||||
assert select.value == 'dup'
|
||||
assert select.label == 'dup'
|
||||
assert observations == [3, 2]
|
||||
select.index = 0
|
||||
assert select.index == 0
|
||||
assert select.value == 'first'
|
||||
assert select.label == 'first'
|
||||
assert observations == [3, 2, 0]
|
||||
|
||||
# picks the first matching value
|
||||
select.value = 'dup'
|
||||
assert select.index == 2
|
||||
assert select.value == 'dup'
|
||||
assert select.label == 'dup'
|
||||
assert observations == [3, 2, 0, 2]
|
||||
Loading…
Add table
Add a link
Reference in a new issue