1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
|
#------------------------------------------------------------------------------
#
# Copyright (c) 2014, Enthought, Inc.
# All rights reserved.
#
# This software is provided without warranty under the terms of the BSD
# license included in enthought/LICENSE.txt and may be redistributed only
# under the conditions described in the aforementioned license. The license
# is also available online at http://www.enthought.com/licenses/BSD.txt
#
# Author: Ioannis Tziakos
# Date: Aug 2014
#
#------------------------------------------------------------------------------
"""
Test cases for the TupleEditor object.
"""
import unittest
from traits.api import Float, HasStrictTraits, Str, Tuple
from traits.testing.api import UnittestTools
from traitsui.api import Item, TupleEditor, View
class DummyModel(HasStrictTraits):
""" Dummy model with a Tuple trait.
"""
data = Tuple(Float, Float, Str)
traits_view = View(Item(name='data', editor=TupleEditor()))
class TestTupleEditor(UnittestTools, unittest.TestCase):
def test_value_update(self):
# Regression test for #179
model = DummyModel()
try:
ui = model.edit_traits()
with self.assertTraitChanges(model, 'data', count=1):
model.data = (3, 4.6, 'nono')
finally:
if ui is not None:
ui.dispose()
if __name__ == '__main__':
unittest.run()
|