示例#1
0
 def test_default_callable(self):
     def def_val():
         return 'bar'
     tf = TextFilter(Person.firstname, default_op='contains', default_value1=def_val)
     tf.set(None, None)
     assert tf.is_active
     query = tf.apply(db.session.query(Person.id))
     self.assert_in_query(query, "WHERE persons.firstname LIKE '%bar%'")
示例#2
0
 def test_default_callable(self):
     def def_val():
         return 'bar'
     tf = TextFilter(Person.firstname, default_op='contains', default_value1=def_val)
     tf.set(None, None)
     assert tf.is_active
     query = tf.apply(db.session.query(Person.id))
     self.assert_in_query(query, "WHERE persons.firstname LIKE '%bar%'")
示例#3
0
class SimpleGrid(Grid):
    on_page = 1
    per_page = 1

    Column('ID', 'id')
    Column('Name', 'name', filter=TextFilter(Person.firstname))
    Column('Status', 'status')
    Column('Emails', 'emails', can_sort=False)
示例#4
0
class DefaultOpGrid(Grid):
    session_on = True

    FirstNameColumn(_('First Name'), Person.firstname,
                    TextFilter(Person.firstname, default_op=ops.eq))
示例#5
0
 def test_not_empty(self):
     tf = TextFilter(Person.firstname)
     tf.set('!empty', 'foo')
     query = tf.apply(db.session.query(Person.id))
     self.assert_in_query(query,
                          "WHERE persons.firstname IS NOT NULL AND persons.firstname != ''")
示例#6
0
 def test_not_eq(self):
     tf = TextFilter(Person.firstname)
     tf.set('!eq', 'foo')
     query = tf.apply(db.session.query(Person.id))
     self.assert_in_query(query, "WHERE persons.firstname != 'foo'")
示例#7
0
 def test_default_no_value(self):
     tf = TextFilter(Person.firstname, default_op='contains')
     tf.set(None, None)
     assert not tf.is_active
示例#8
0
 def test_default(self):
     tf = TextFilter(Person.firstname, default_op='contains', default_value1='foo')
     tf.set(None, None)
     assert tf.is_active
     query = tf.apply(db.session.query(Person.id))
     self.assert_in_query(query, "WHERE persons.firstname LIKE '%foo%'")
示例#9
0
 def test_doesnt_contain(self):
     tf = TextFilter(Person.firstname)
     tf.set('!contains', 'foo')
     query = tf.apply(db.session.query(Person.id))
     self.assert_in_query(query, "WHERE persons.firstname NOT LIKE '%foo%'")
示例#10
0
 def test_not_empty(self):
     tf = TextFilter(Person.firstname)
     tf.set('!empty', 'foo')
     query = tf.apply(db.session.query(Person.id))
     self.assert_in_query(query,
                          "WHERE persons.firstname IS NOT NULL AND persons.firstname != ''")
示例#11
0
 def test_not_eq(self):
     tf = TextFilter(Person.firstname)
     tf.set('!eq', 'foo')
     query = tf.apply(db.session.query(Person.id))
     self.assert_in_query(query, "WHERE persons.firstname != 'foo'")
示例#12
0
 def get_filter(self):
     class MockDialect:
         name = 'postgresql'
     return TextFilter(Person.firstname).new_instance(dialect=MockDialect())
示例#13
0
 def test_default_no_value(self):
     tf = TextFilter(Person.firstname, default_op='contains')
     tf.set(None, None)
     assert not tf.is_active
示例#14
0
 def test_default(self):
     tf = TextFilter(Person.firstname, default_op='contains', default_value1='foo')
     tf.set(None, None)
     assert tf.is_active
     query = tf.apply(db.session.query(Person.id))
     self.assert_in_query(query, "WHERE persons.firstname LIKE '%foo%'")
示例#15
0
 def test_doesnt_contain(self):
     tf = TextFilter(Person.firstname)
     tf.set('!contains', 'foo')
     query = tf.apply(db.session.query(Person.id))
     self.assert_in_query(query, "WHERE persons.firstname NOT LIKE '%foo%'")
示例#16
0
 class CTG(Grid):
     Column('First Name', Person.firstname, TextFilter(Person.lastname))