root / rdfalchemy / trunk / test / delete_test.py

Revision 98, 1.4 kB (checked in by phil, 10 months ago)

This reflects a change of all Descriptor names from a prefix of rdflib to rdf
This fixes improves the behavior of Literal for Decimal and datetime types
It also moves rdfSubject into a different file name
adds one unit test for literals

Line 
1from rdfalchemy import *
2from rdfalchemy.samples.doap import *
3from rdfalchemy.samples.foaf import *
4from rdfalchemy.orm import mapper
5from rdflib import ConjunctiveGraph
6
7import logging
8log = logging.getLogger('rdfalchemy')
9if not log.handlers:
10    log.addHandler(logging.StreamHandler())
11#log.setLevel(10)
12
13
14Person.db=ConjunctiveGraph()
15Person.knows = rdfMultiple(FOAF.knows, range_type=FOAF.Person)       
16
17
18def test_start():
19    assert len(Person.db) == 0
20    p=Person(last="Cooper" , first="Philip")
21    assert len(Person.db) == 3
22
23def test_addBNodeKnowsL():
24    Person.knows = rdfList(FOAF.knows, range_type=FOAF.Person)       
25    mapper()
26    p1=Person.get_by(first="Philip")
27    p2=Person(last="Cooper" , first="Ben")
28    p3=Person(last="Cooper" , first="Matt")
29    assert len(Person.db) == 9
30    p1.knows = [p2, p3]
31    print len(Person.db)
32    assert len(Person.db) == 14
33    del p1.knows
34    print len(Person.db)
35    assert len(Person.db) == 3
36   
37def test_addBNodeKnowsM():
38    Person.knows = rdfMultiple(FOAF.knows, range_type=FOAF.Person)       
39    p1=Person.get_by(first="Philip")
40    p2=Person(last="Cooper" , first="Ben")
41    p3=Person(last="Cooper" , first="Matt")
42    assert len(Person.db) == 9
43    p1.knows = [p2, p3]
44    print len(Person.db)
45    assert len(Person.db) == 11
46    del p1.knows
47    print len(Person.db)
48    assert len(Person.db) == 3
49   
50   
51   
Note: See TracBrowser for help on using the browser.