Example #1
0
 def test_empty_field_values_match_if_the_field_is_present(self):
     # This test currently fails because the CarddavObject class has all
     # attributes set because they are properties.  So the test in the query
     # class if an attribute is present never fails.
     uid = 'Some Test Uid'
     vcard1 = TestCarddavObject(uid=uid)
     vcard2 = TestCarddavObject()
     query = FieldQuery('uid', '')
     self.assertTrue(query.match(vcard1))
     self.assertFalse(query.match(vcard2))
Example #2
0
 def test_and_queries_match_after_sorting(self):
     null = NullQuery()
     any = AnyQuery()
     term = TermQuery("foo")
     field = FieldQuery("x", "y")
     first = AndQuery(null, any, term, field)
     second = AndQuery(any, null, field, term)
     self.assertEqual(first, second)
Example #3
0
 def test_valuess_can_match_case_insensitive(self):
     uid = 'Some Test Uid'
     vcard = TestCarddavObject(uid=uid)
     query1 = FieldQuery('uid', uid.upper())
     query2 = FieldQuery('uid', uid.lower())
     self.assertTrue(query1.match(vcard))
     self.assertTrue(query2.match(vcard))
Example #4
0
 def test_empty_field_values_fails_if_the_field_is_absent(self):
     vcard = TestCarddavObject()
     query = FieldQuery('emails', '')
     self.assertFalse(query.match(vcard))
Example #5
0
 def test_field_value_can_contain_colons(self):
     actual = parse("formatted_name:foo:bar")
     expected = FieldQuery("formatted_name", "foo:bar")
     self.assertEqual(actual, expected)
Example #6
0
 def test_field_value_can_be_empty(self):
     actual = parse("formatted_name:")
     expected = FieldQuery("formatted_name", "")
     self.assertEqual(actual, expected)
Example #7
0
 def test_parsing_simple_field_queries(self):
     actual = parse("formatted_name:foo bar")
     expected = FieldQuery("formatted_name", "foo bar")
     self.assertEqual(actual, expected)
Example #8
0
 def test_match_email_type(self):
     vcard = load_contact("contact1.vcf")
     query = FieldQuery('emails', 'home')
     self.assertTrue(query.match(vcard))
Example #9
0
 def test_fail_match_in_other_field(self):
     vcard = load_contact("contact1.vcf")
     query = FieldQuery('formatted_name', '*****@*****.**')
     self.assertFalse(query.match(vcard))
Example #10
0
 def test_match_birthday(self):
     vcard = load_contact("contact1.vcf")
     query = FieldQuery('birthday', '2018-01-20')
     self.assertTrue(query.match(vcard))
Example #11
0
 def test_match_email(self):
     vcard = load_contact("contact1.vcf")
     query = FieldQuery('emails', '*****@*****.**')
     self.assertTrue(query.match(vcard))
Example #12
0
 def test_match_formatted_name(self):
     vcard = TestCarddavObject(fn='foo bar')
     query = FieldQuery('formatted_name', 'foo')
     self.assertTrue(query.match(vcard))
Example #13
0
 def test_values_can_match_substrings(self):
     uid = 'Some Test Uid'
     vcard = TestCarddavObject(uid=uid)
     query = FieldQuery('uid', 'e Test U')
     self.assertTrue(query.match(vcard))