����JFIF��H�H����Exif��MM�*���� ��3����V�����3������3�(��������������������3�����
Server IP : 74.208.127.88 / Your IP : 216.73.216.9 Web Server : Apache/2.4.41 (Ubuntu) System : Linux ubuntu 5.4.0-163-generic #180-Ubuntu SMP Tue Sep 5 13:21:23 UTC 2023 x86_64 User : www-data ( 33) PHP Version : 7.4.3-4ubuntu2.29 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /proc/self/root/snap/core20/current/usr/share/subiquity/subiquitycore/tests/ |
Upload File : |
# Copyright 2020 Canonical, Ltd. # # 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, version 3. # # 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, see <http://www.gnu.org/licenses/>. import urwid from subiquitycore.tests import SubiTestCase from subiquitycore.view import BaseView from subiquitycore.ui.stretchy import Stretchy, StretchyOverlay from subiquitycore.ui.utils import undisabled class TestStretchy(Stretchy): was_opened = was_closed = False def __init__(self): super().__init__("", [urwid.Text("")], 0, 0) def opened(self): self.was_opened = True def closed(self): self.was_closed = True class TestBaseView(SubiTestCase): def get_stretchy_chain(self, view): view = view._w r = [] while isinstance(view, StretchyOverlay): r.append(view.stretchy) view = undisabled(view.bottom_w) return r def test_basic(self): bv = BaseView(urwid.Text("")) s = TestStretchy() self.assertEqual(self.get_stretchy_chain(bv), []) bv.show_stretchy_overlay(s) self.assertTrue(s.was_opened) self.assertEqual(self.get_stretchy_chain(bv), [s]) bv.remove_overlay() self.assertTrue(s.was_closed) self.assertEqual(self.get_stretchy_chain(bv), []) bv.show_stretchy_overlay(s) bv.remove_overlay(s) self.assertEqual(self.get_stretchy_chain(bv), []) def make_view_with_overlays(self): bv = BaseView(urwid.Text("")) a = TestStretchy() b = TestStretchy() c = TestStretchy() bv.show_stretchy_overlay(a) bv.show_stretchy_overlay(b) bv.show_stretchy_overlay(c) return bv, a, b, c def test_multiple(self): bv, a, b, c = self.make_view_with_overlays() self.assertEqual(self.get_stretchy_chain(bv), [c, b, a]) bv, a, b, c = self.make_view_with_overlays() bv.remove_overlay(a) self.assertTrue(a.was_closed) self.assertEqual(self.get_stretchy_chain(bv), [c, b]) bv, a, b, c = self.make_view_with_overlays() bv.remove_overlay(b) self.assertTrue(b.was_closed) self.assertEqual(self.get_stretchy_chain(bv), [c, a]) bv, a, b, c = self.make_view_with_overlays() bv.remove_overlay(c) self.assertTrue(c.was_closed) self.assertEqual(self.get_stretchy_chain(bv), [b, a]) bv, a, b, c = self.make_view_with_overlays() bv.remove_overlay() self.assertTrue(c.was_closed) self.assertEqual(self.get_stretchy_chain(bv), [b, a])