def test_project3():
    class A(P.PyDO):
        fields = (P.Sequence('id'), 'x')

    p = A.project(P.Field('id'))
    assert not p.getSequences()
    assert not p.getUniquenessConstraints()
def test_project4():
    class torte4(P.PyDO):
        fields = (P.Sequence('id'), 'title', 'x', 'y', 'z')

    foo = torte4.project(P.Field('id'), 'title', 'x', 'y')
    assert not foo.getSequences(), "expected no sequences, got: %s" % str(
        foo.getSequences())
    assert len(foo.getUniquenessConstraints()) == 0
 def run(self):
     p=self.E.project('user1', P.Field(name='user3', asname='plapitude'))
     #p=self.E.project('user1', 'user3 as plapitude')
     cols=p.getColumns()
     assert 'plapitude' in cols
     assert 'user1' in cols
     assert len(cols)==2
     p2=self.E.project('user1', 'user3 as plapitude')
     cols=p2.getColumns()
     assert 'plapitude' in cols
     assert 'user1' in cols
     assert len(cols)==2
 def run(self):
     o1=self.E.getUnique(id=1)
     assert o1.user1=='me'
     assert o1.user2=='you'
     p=self.E.project('user1', P.Field('count(*)', asname='count'))
     if config.DRIVER=='sqlite2':
         res=p.getSome('user1=? group by user1', 'me')
     else:
         res=p.getSome('user1=%s group by user1', 'me')
     #print res
     assert len(res)==1
     assert res[0].count==2
     if config.DRIVER=='sqlite2':
         res=p.getSome('user1 = ? group by user1', 'bongo')
     else:
         res=p.getSome('user1 = %s group by user1', 'bongo')
     assert len(res)==1
     assert res[0].count==1
def test_picklefield1():
    f = P.Field('x')
    f2 = loads(dumps(f))
    assert f.name == f2.name