--- a/tests/tools/test_CustomIntCtrl.py Sat Mar 05 11:14:00 2022 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,140 +0,0 @@
-#!/usr/bin/env python
-# -*- coding: utf-8 -*-
-
-# This file is part of Beremiz, a Integrated Development Environment for
-# programming IEC 61131-3 automates supporting plcopen standard and CanFestival.
-#
-# Copyright (C) 2017: Andrey Skvortsov
-#
-# See COPYING file for copyrights details.
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-
-
-from __future__ import absolute_import
-from __future__ import division
-import unittest
-import time
-
-import wx
-import conftest
-import controls.CustomIntCtrl
-
-
-class TestCustomIntCtrl(unittest.TestCase):
- def setUp(self):
- self.app = wx.App()
- self.frame = wx.Frame(None)
-
- def tearDown(self):
- self.frame.Destroy()
- wx.CallAfter(self.app.Exit)
- self.app.MainLoop()
-
- def testMaxLimit(self):
- """Test working upper bound"""
- self.AddControls()
- self.int_ctrl.SetValue(self.max_val + 100)
- self.ProcessEvents()
-
- self.txt_ctrl.SetFocus()
- self.ProcessEvents()
- self.assertEqual(self.int_ctrl.GetValue(), self.max_val)
-
- def testMinLimit(self):
- """Test working lower bound"""
- self.AddControls()
- self.int_ctrl.SetValue(self.min_val - 100)
- self.ProcessEvents()
-
- self.txt_ctrl.SetFocus()
- self.ProcessEvents()
-
- self.assertEqual(self.int_ctrl.GetValue(), self.min_val)
-
- def testCorrectValue(self):
- """Test case if no limiting is necessary"""
- self.AddControls()
- val = (self.max_val + self.min_val) // 2
- self.int_ctrl.SetValue(val)
- self.ProcessEvents()
-
- self.txt_ctrl.SetFocus()
- self.ProcessEvents()
-
- self.assertEqual(self.int_ctrl.GetValue(), val)
-
- def testEventBinding(self):
- """Test event sending after edit and bound checks are done"""
- self.AddControls()
- self.event_happend = False
-
- def EventHandler(event):
- self.event_happend = True
- event.Skip()
-
- self.int_ctrl.Bind(controls.CustomIntCtrl.EVT_CUSTOM_INT, EventHandler)
-
- val = (self.max_val + self.min_val) // 2
-
- self.int_ctrl.SetValue(val)
- self.ProcessEvents()
- self.txt_ctrl.SetFocus()
-
- self.ProcessEvents()
- self.txt_ctrl.SetFocus()
- self.ProcessEvents()
-
- self.assertEqual(self.int_ctrl.GetValue(), val)
- self.assertTrue(self.event_happend)
-
- def testLongNumbers(self):
- """Test support of long integer"""
- self.AddControls()
- val = 40000000000
- self.int_ctrl.SetMax(val)
- self.int_ctrl.SetValue(val)
- self.ProcessEvents()
-
- self.txt_ctrl.SetFocus()
- self.ProcessEvents()
-
- self.assertEqual(val, val)
-
- def ProcessEvents(self):
- for dummy in range(0, 10):
- wx.Yield()
- time.sleep(0.01)
-
- def AddControls(self):
- vs = wx.BoxSizer(wx.VERTICAL)
- self.int_ctrl = controls.CustomIntCtrl(self.frame)
- self.txt_ctrl = wx.TextCtrl(self.frame)
- vs.Add(self.int_ctrl, 0, wx.ALIGN_CENTRE | wx.ALL, 5)
- vs.Add(self.txt_ctrl, 0, wx.ALIGN_CENTRE | wx.ALL, 5)
- self.frame.SetSizer(vs)
- vs.Fit(self.frame)
- self.frame.Show()
- self.frame.Raise()
-
- self.min_val = 50
- self.max_val = 100
- self.int_ctrl.SetBounds(self.min_val, self.max_val)
- self.ProcessEvents()
-
-
-if __name__ == '__main__':
- conftest.init_environment()
- unittest.main()