コード例 #1
0
def test_query_contact_with_city(testbed):
    address = Address(type='home', street='Spear St', city='Amsterdam')
    address.put()
    Contact(name='Bertus Aafjes', addresses=[address]).put()
    address1 = Address(type='home', street='Damrak St', city='Amsterdam')
    address1.put()
    address2 = Address(type='work', street='Spear St', city='San Francisco')
    address2.put()
    Contact(name='Willem Jan Aalders', addresses=[address1, address2]).put()
    address = Address(type='home', street='29th St', city='San Francisco')
    address.put()
    Contact(name='Hans Aarsman', addresses=[address]).put()

    query = snippets.query_contact_with_city()
    contacts = query.fetch()

    assert len(contacts) == 2
コード例 #2
0
def test_query_contact_multiple_values_in_single_sub_entity(testbed):
    address = Address(type='home', street='Spear St', city='Amsterdam')
    address.put()
    Contact(name='Bertus Aafjes', addresses=[address]).put()
    address1 = Address(type='home', street='Damrak St', city='Amsterdam')
    address1.put()
    address2 = Address(type='work', street='Spear St', city='San Francisco')
    address2.put()
    Contact(name='Willem Jan Aalders', addresses=[address1, address2]).put()
    address = Address(type='home', street='29th St', city='San Francisco')
    address.put()
    Contact(name='Hans Aarsman', addresses=[address]).put()

    query = snippets.query_contact_multiple_values_in_single_sub_entity()
    contacts = query.fetch()

    assert len(contacts) == 1
    assert any(a.city == 'San Francisco' and a.street == 'Spear St'
               for a in contacts[0].addresses)
コード例 #3
0
def test_query_contact_sub_entities_beware(testbed):
    address = Address(type='home', street='Spear St', city='Amsterdam')
    address.put()
    Contact(name='Bertus Aafjes', addresses=[address]).put()
    address1 = Address(type='home', street='Damrak St', city='Amsterdam')
    address1.put()
    address2 = Address(type='work', street='Spear St', city='San Francisco')
    address2.put()
    Contact(name='Willem Jan Aalders', addresses=[address1, address2]).put()
    address = Address(type='home', street='29th St', city='San Francisco')
    address.put()
    Contact(name='Hans Aarsman', addresses=[address]).put()

    query = snippets.query_contact_sub_entities_beware()
    contacts = query.fetch()

    assert len(contacts) == 2
    for contact in contacts:
        assert ('Spear St' in [a.street for a in contact.addresses]
                or 'Amsterdam' in [a.city for a in contact.addresses])
コード例 #4
0
def query_contact_multiple_values_in_single_sub_entity():
    query = Contact.query(Contact.addresses == Address(city='San Francisco',
                                                       street='Spear St'))
    return query
コード例 #5
0
def query_contact_sub_entities_beware():
    query = Contact.query(Contact.addresses.city == 'Amsterdam',  # Beware!
                          Contact.addresses.street == 'Spear St')
    return query
コード例 #6
0
def query_contact_with_city():
    query = Contact.query(Contact.addresses.city == 'Amsterdam')
    return query
コード例 #7
0
def query_contact_multiple_values_in_single_sub_entity():
    query = Contact.query(
        Contact.addresses == Address(city='San Francisco', street='Spear St'))
    return query
コード例 #8
0
def query_contact_sub_entities_beware():
    query = Contact.query(
        Contact.addresses.city == 'Amsterdam',  # Beware!
        Contact.addresses.street == 'Spear St')
    return query
コード例 #9
0
def query_contact_with_city():
    query = Contact.query(Contact.addresses.city == 'Amsterdam')
    return query