コード例 #1
0
 def testSetInactive(self):
     """ Test setting the search as inactive """
     w = QgsSearchWidgetToolButton()
     w.setAvailableFlags(QgsSearchWidgetWrapper.EqualTo |
                         QgsSearchWidgetWrapper.NotEqualTo |
                         QgsSearchWidgetWrapper.CaseInsensitive)
     w.setActiveFlags(QgsSearchWidgetWrapper.EqualTo |
                      QgsSearchWidgetWrapper.CaseInsensitive)
     self.assertTrue(w.isActive())
     w.setInactive()
     flags = w.activeFlags()
     self.assertFalse(flags & QgsSearchWidgetWrapper.EqualTo)
     self.assertTrue(flags & QgsSearchWidgetWrapper.CaseInsensitive)
     self.assertFalse(w.isActive())
コード例 #2
0
    def testAvailableFlags(self):
        """
        Test setting available flags
        """
        w = QgsSearchWidgetToolButton()
        w.setAvailableFlags(QgsSearchWidgetWrapper.EqualTo |
                            QgsSearchWidgetWrapper.NotEqualTo |
                            QgsSearchWidgetWrapper.CaseInsensitive)

        flags = w.availableFlags()
        self.assertTrue(flags & QgsSearchWidgetWrapper.EqualTo)
        self.assertTrue(flags & QgsSearchWidgetWrapper.NotEqualTo)
        self.assertTrue(flags & QgsSearchWidgetWrapper.CaseInsensitive)
        self.assertFalse(flags & QgsSearchWidgetWrapper.Between)

        # setting available flags should update active flags
        w.setActiveFlags(QgsSearchWidgetWrapper.NotEqualTo | QgsSearchWidgetWrapper.CaseInsensitive)
        w.setAvailableFlags(QgsSearchWidgetWrapper.EqualTo |
                            QgsSearchWidgetWrapper.NotEqualTo)
        flags = w.activeFlags()
        self.assertFalse(flags & QgsSearchWidgetWrapper.EqualTo)
        self.assertTrue(flags & QgsSearchWidgetWrapper.NotEqualTo)
        self.assertFalse(flags & QgsSearchWidgetWrapper.CaseInsensitive)
コード例 #3
0
    def testToggleFlag(self):
        """ Test toggling flags """
        w = QgsSearchWidgetToolButton()
        w.setAvailableFlags(QgsSearchWidgetWrapper.EqualTo |
                            QgsSearchWidgetWrapper.NotEqualTo |
                            QgsSearchWidgetWrapper.CaseInsensitive)
        w.setActiveFlags(QgsSearchWidgetWrapper.EqualTo)
        # should set flag
        w.toggleFlag(QgsSearchWidgetWrapper.CaseInsensitive)
        flags = w.activeFlags()
        self.assertTrue(flags & QgsSearchWidgetWrapper.EqualTo)
        self.assertFalse(flags & QgsSearchWidgetWrapper.NotEqualTo)
        self.assertTrue(flags & QgsSearchWidgetWrapper.CaseInsensitive)
        # should clear flag
        w.toggleFlag(QgsSearchWidgetWrapper.CaseInsensitive)
        flags = w.activeFlags()
        self.assertTrue(flags & QgsSearchWidgetWrapper.EqualTo)
        self.assertFalse(flags & QgsSearchWidgetWrapper.NotEqualTo)
        self.assertFalse(flags & QgsSearchWidgetWrapper.CaseInsensitive)

        # toggling non-available flag should be ignored
        w.setAvailableFlags(QgsSearchWidgetWrapper.Between |
                            QgsSearchWidgetWrapper.NotEqualTo)
        w.setActiveFlags(QgsSearchWidgetWrapper.Between)
        # should be ignored
        w.toggleFlag(QgsSearchWidgetWrapper.CaseInsensitive)
        w.toggleFlag(QgsSearchWidgetWrapper.LessThan)
        flags = w.activeFlags()
        self.assertFalse(flags & QgsSearchWidgetWrapper.CaseInsensitive)
        self.assertFalse(flags & QgsSearchWidgetWrapper.LessThan)
        self.assertTrue(flags & QgsSearchWidgetWrapper.Between)

        # toggling exclusive flag should result in other exclusive flags being cleared
        w.setAvailableFlags(QgsSearchWidgetWrapper.Between |
                            QgsSearchWidgetWrapper.NotEqualTo |
                            QgsSearchWidgetWrapper.CaseInsensitive)
        w.setActiveFlags(QgsSearchWidgetWrapper.Between | QgsSearchWidgetWrapper.CaseInsensitive)
        w.toggleFlag(QgsSearchWidgetWrapper.Between)
        flags = w.activeFlags()
        self.assertTrue(flags & QgsSearchWidgetWrapper.CaseInsensitive)
        self.assertFalse(flags & QgsSearchWidgetWrapper.NotEqualTo)
        self.assertTrue(flags & QgsSearchWidgetWrapper.Between)
        w.toggleFlag(QgsSearchWidgetWrapper.NotEqualTo)
        flags = w.activeFlags()
        self.assertTrue(flags & QgsSearchWidgetWrapper.CaseInsensitive)
        self.assertTrue(flags & QgsSearchWidgetWrapper.NotEqualTo)
        self.assertFalse(flags & QgsSearchWidgetWrapper.Between)
コード例 #4
0
    def testActiveFlags(self):
        """
        Test setting/retrieving active flag logic
        """
        w = QgsSearchWidgetToolButton()
        w.setAvailableFlags(QgsSearchWidgetWrapper.EqualTo |
                            QgsSearchWidgetWrapper.NotEqualTo |
                            QgsSearchWidgetWrapper.CaseInsensitive)

        w.setActiveFlags(QgsSearchWidgetWrapper.EqualTo)
        flags = w.activeFlags()
        self.assertTrue(flags & QgsSearchWidgetWrapper.EqualTo)
        self.assertFalse(flags & QgsSearchWidgetWrapper.NotEqualTo)

        w.setActiveFlags(QgsSearchWidgetWrapper.EqualTo | QgsSearchWidgetWrapper.CaseInsensitive)
        flags = w.activeFlags()
        self.assertTrue(flags & QgsSearchWidgetWrapper.EqualTo)
        self.assertTrue(flags & QgsSearchWidgetWrapper.CaseInsensitive)

        # setting a non-available flag as active
        w.setAvailableFlags(QgsSearchWidgetWrapper.EqualTo |
                            QgsSearchWidgetWrapper.NotEqualTo)
        w.setActiveFlags(QgsSearchWidgetWrapper.EqualTo | QgsSearchWidgetWrapper.CaseInsensitive)
        flags = w.activeFlags()
        self.assertTrue(flags & QgsSearchWidgetWrapper.EqualTo)
        self.assertFalse(flags & QgsSearchWidgetWrapper.CaseInsensitive)

        # setting conflicting flags
        w.setActiveFlags(QgsSearchWidgetWrapper.EqualTo | QgsSearchWidgetWrapper.NotEqualTo)
        flags = w.activeFlags()
        self.assertTrue(flags & QgsSearchWidgetWrapper.EqualTo)
        self.assertFalse(flags & QgsSearchWidgetWrapper.NotEqualTo)
コード例 #5
0
 def testSetActive(self):
     """ Test setting the search as active should adopt default flags"""
     w = QgsSearchWidgetToolButton()
     w.setAvailableFlags(QgsSearchWidgetWrapper.Between |
                         QgsSearchWidgetWrapper.NotEqualTo |
                         QgsSearchWidgetWrapper.CaseInsensitive)
     w.setActiveFlags(QgsSearchWidgetWrapper.CaseInsensitive)
     w.setDefaultFlags(QgsSearchWidgetWrapper.NotEqualTo)
     self.assertFalse(w.isActive())
     w.setActive()
     flags = w.activeFlags()
     self.assertTrue(flags & QgsSearchWidgetWrapper.NotEqualTo)
     self.assertTrue(flags & QgsSearchWidgetWrapper.CaseInsensitive)
     self.assertTrue(w.isActive())
コード例 #6
0
 def testSetInactive(self):
     """ Test setting the search as inactive """
     w = QgsSearchWidgetToolButton()
     w.setAvailableFlags(QgsSearchWidgetWrapper.EqualTo |
                         QgsSearchWidgetWrapper.NotEqualTo |
                         QgsSearchWidgetWrapper.CaseInsensitive)
     w.setActiveFlags(QgsSearchWidgetWrapper.EqualTo |
                      QgsSearchWidgetWrapper.CaseInsensitive)
     self.assertTrue(w.isActive())
     w.setInactive()
     flags = w.activeFlags()
     self.assertFalse(flags & QgsSearchWidgetWrapper.EqualTo)
     self.assertTrue(flags & QgsSearchWidgetWrapper.CaseInsensitive)
     self.assertFalse(w.isActive())
コード例 #7
0
    def testToggleFlag(self):
        """ Test toggling flags """
        w = QgsSearchWidgetToolButton()
        w.setAvailableFlags(QgsSearchWidgetWrapper.EqualTo
                            | QgsSearchWidgetWrapper.NotEqualTo
                            | QgsSearchWidgetWrapper.CaseInsensitive)
        w.setActiveFlags(QgsSearchWidgetWrapper.EqualTo)
        # should set flag
        w.toggleFlag(QgsSearchWidgetWrapper.CaseInsensitive)
        flags = w.activeFlags()
        self.assertTrue(flags & QgsSearchWidgetWrapper.EqualTo)
        self.assertFalse(flags & QgsSearchWidgetWrapper.NotEqualTo)
        self.assertTrue(flags & QgsSearchWidgetWrapper.CaseInsensitive)
        # should clear flag
        w.toggleFlag(QgsSearchWidgetWrapper.CaseInsensitive)
        flags = w.activeFlags()
        self.assertTrue(flags & QgsSearchWidgetWrapper.EqualTo)
        self.assertFalse(flags & QgsSearchWidgetWrapper.NotEqualTo)
        self.assertFalse(flags & QgsSearchWidgetWrapper.CaseInsensitive)

        # toggling non-available flag should be ignored
        w.setAvailableFlags(QgsSearchWidgetWrapper.Between
                            | QgsSearchWidgetWrapper.NotEqualTo)
        w.setActiveFlags(QgsSearchWidgetWrapper.Between)
        # should be ignored
        w.toggleFlag(QgsSearchWidgetWrapper.CaseInsensitive)
        w.toggleFlag(QgsSearchWidgetWrapper.LessThan)
        flags = w.activeFlags()
        self.assertFalse(flags & QgsSearchWidgetWrapper.CaseInsensitive)
        self.assertFalse(flags & QgsSearchWidgetWrapper.LessThan)
        self.assertTrue(flags & QgsSearchWidgetWrapper.Between)

        # toggling exclusive flag should result in other exclusive flags being cleared
        w.setAvailableFlags(QgsSearchWidgetWrapper.Between
                            | QgsSearchWidgetWrapper.NotEqualTo
                            | QgsSearchWidgetWrapper.CaseInsensitive)
        w.setActiveFlags(QgsSearchWidgetWrapper.Between
                         | QgsSearchWidgetWrapper.CaseInsensitive)
        w.toggleFlag(QgsSearchWidgetWrapper.Between)
        flags = w.activeFlags()
        self.assertTrue(flags & QgsSearchWidgetWrapper.CaseInsensitive)
        self.assertFalse(flags & QgsSearchWidgetWrapper.NotEqualTo)
        self.assertTrue(flags & QgsSearchWidgetWrapper.Between)
        w.toggleFlag(QgsSearchWidgetWrapper.NotEqualTo)
        flags = w.activeFlags()
        self.assertTrue(flags & QgsSearchWidgetWrapper.CaseInsensitive)
        self.assertTrue(flags & QgsSearchWidgetWrapper.NotEqualTo)
        self.assertFalse(flags & QgsSearchWidgetWrapper.Between)
コード例 #8
0
    def testActiveFlags(self):
        """
        Test setting/retrieving active flag logic
        """
        w = QgsSearchWidgetToolButton()
        w.setAvailableFlags(QgsSearchWidgetWrapper.EqualTo
                            | QgsSearchWidgetWrapper.NotEqualTo
                            | QgsSearchWidgetWrapper.CaseInsensitive)

        w.setActiveFlags(QgsSearchWidgetWrapper.EqualTo)
        flags = w.activeFlags()
        self.assertTrue(flags & QgsSearchWidgetWrapper.EqualTo)
        self.assertFalse(flags & QgsSearchWidgetWrapper.NotEqualTo)

        w.setActiveFlags(QgsSearchWidgetWrapper.EqualTo
                         | QgsSearchWidgetWrapper.CaseInsensitive)
        flags = w.activeFlags()
        self.assertTrue(flags & QgsSearchWidgetWrapper.EqualTo)
        self.assertTrue(flags & QgsSearchWidgetWrapper.CaseInsensitive)

        # setting a non-available flag as active
        w.setAvailableFlags(QgsSearchWidgetWrapper.EqualTo
                            | QgsSearchWidgetWrapper.NotEqualTo)
        w.setActiveFlags(QgsSearchWidgetWrapper.EqualTo
                         | QgsSearchWidgetWrapper.CaseInsensitive)
        flags = w.activeFlags()
        self.assertTrue(flags & QgsSearchWidgetWrapper.EqualTo)
        self.assertFalse(flags & QgsSearchWidgetWrapper.CaseInsensitive)

        # setting conflicting flags
        w.setActiveFlags(QgsSearchWidgetWrapper.EqualTo
                         | QgsSearchWidgetWrapper.NotEqualTo)
        flags = w.activeFlags()
        self.assertTrue(flags & QgsSearchWidgetWrapper.EqualTo)
        self.assertFalse(flags & QgsSearchWidgetWrapper.NotEqualTo)
コード例 #9
0
 def testSetActive(self):
     """ Test setting the search as active should adopt default flags"""
     w = QgsSearchWidgetToolButton()
     w.setAvailableFlags(QgsSearchWidgetWrapper.Between
                         | QgsSearchWidgetWrapper.NotEqualTo
                         | QgsSearchWidgetWrapper.CaseInsensitive)
     w.setActiveFlags(QgsSearchWidgetWrapper.CaseInsensitive)
     w.setDefaultFlags(QgsSearchWidgetWrapper.NotEqualTo)
     self.assertFalse(w.isActive())
     w.setActive()
     flags = w.activeFlags()
     self.assertTrue(flags & QgsSearchWidgetWrapper.NotEqualTo)
     self.assertTrue(flags & QgsSearchWidgetWrapper.CaseInsensitive)
     self.assertTrue(w.isActive())