/[fenfire]/fenfire/org/fenfire/modules/pp/PPActionsImpl.test
ViewVC logotype

Diff of /fenfire/org/fenfire/modules/pp/PPActionsImpl.test

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.2 by mudyc, Tue Mar 25 23:27:15 2003 UTC revision 1.3 by mudyc, Wed Mar 26 14:00:24 2003 UTC
# Line 1  Line 1 
1  #(c): Matti Katila  #(c): Matti Katila
2    
3    from org.fenfire.vocab import PP, SPATIAL
4  from org.fenfire.modules.pp import *  from org.fenfire.modules.pp import *
5  from org.fenfire.util import URN5Namespace  from org.fenfire.util import URN5Namespace
6  from com.hp.hpl.mesa.rdf import jena  from com.hp.hpl.mesa.rdf import jena
7  from com.hp.hpl.mesa.rdf.jena.vocabulary import RDF  from com.hp.hpl.mesa.rdf.jena.vocabulary import RDF
8    
9  def setUp():  def setUp():
10      global model, ppact, PP      global model, ppact
11      model = jena.mem.ModelMem()      model = jena.mem.ModelMem()
12      ppact = PPActionsImpl(model)      ppact = PPActionsImpl(model)
     PP = PPVocab()  
13    
14  def testNewPaper():  def testNewPaper():
15      paper = ppact.newPaper()      paper = ppact.newPaper()
16      assert paper != ''      assert paper != ''
17    
18      slctr = jena.common.SelectorImpl(None, RDF.type, PP.PaperType)      slctr = jena.common.SelectorImpl(None, RDF.type, PP.paperType)
19      iter = model.listStatements(slctr)      iter = model.listStatements(slctr)
20      assert iter.hasNext() == 1      assert iter.hasNext() == 1
21      stmt = iter.next()      stmt = iter.next()
# Line 23  def testNewPaper(): Line 23  def testNewPaper():
23      assert stmt.getSubject().toString() == paper      assert stmt.getSubject().toString() == paper
24    
25      # XXX does not check creation time      # XXX does not check creation time
   
 def testNewNote():  
     newNoteCheck()  
26    
27      paper = URN5Namespace.instance.generateId()  def checkIter(slctr):
     paperRes = jena.common.ResourceImpl(paper)  
     note = ppact.newNote(paper, 123, 456, 'This is a new note')  
     noteRes = jena.common.ResourceImpl(note)  
   
     # note1 -.  
     #         >-> lintoReal data -> data  
     # note2 -'  
       
     # check link to real data  
     slctr = jena.common.SelectorImpl(noteRes, PP.LinkToContentRef, None)  
28      iter = model.listStatements(slctr)      iter = model.listStatements(slctr)
29      assert iter.hasNext() == 1      assert iter.hasNext() == 1
30      stmt = iter.next()      stmt = iter.next()
31      assert iter.hasNext() == 0      assert iter.hasNext() == 0
32      assert stmt.getSubject().toString() == note      return stmt
33    
34      datalink = stmt.getObject()  def testNewNote():
   
     # check data  
     slctr = jena.common.SelectorImpl(datalink, PP.Data, None)  
     iter = model.listStatements(slctr)  
     assert iter.hasNext() == 1  
     stmt = iter.next()  
     assert iter.hasNext() == 0  
     assert stmt.getObject().toString() == 'This is a new note'  
   
     # check type of data  
     slctr = jena.common.SelectorImpl(datalink, RDF.type, None)  
     iter = model.listStatements(slctr)  
     assert iter.hasNext() == 1  
     stmt = iter.next()  
     assert iter.hasNext() == 0  
     assert stmt.getSubject() == datalink  
     assert stmt.getObject() == PP.DataType  
   
   
 def testCloneNote():  
     newNoteCheck()  
   
     paper = URN5Namespace.instance.generateId()  
     orig = ppact.newNote(paper, 123, 456, 'This is the original note')  
     origRes = jena.common.ResourceImpl(orig)  
     clone = ppact.cloneNote(paper, orig, 123, 456, 'This is a new clone')  
     cloneRes = jena.common.ResourceImpl(clone)  
   
     # note  -.  
     #         >-> lintoReal data -> data  
     # clone -'  
       
     # check link to real data  
     slctr = jena.common.SelectorImpl(cloneRes, PP.LinkToContentRef, None)  
     iter = model.listStatements(slctr)  
   
     slctr2 = jena.common.SelectorImpl(origRes, PP.LinkToContentRef, None)  
     iter2 = model.listStatements(slctr2)  
   
     assert iter.hasNext() == 1  
     assert iter2.hasNext() == 1  
   
     stmt = iter.next()  
     stmt2 = iter2.next()  
   
     assert iter.hasNext() == 0  
     assert iter2.hasNext() == 0  
       
     assert stmt.getObject() == stmt2.getObject()  
   
     slctr = jena.common.SelectorImpl(stmt.getObject(), PP.Data, None)  
     iter = model.listStatements(slctr)  
     assert iter.hasNext() == 1  
     stmt = iter.next()  
     assert iter.hasNext() == 0  
     assert stmt.getObject().toString() == 'This is the original note'  
   
 def newNoteCheck():  
35      paper = URN5Namespace.instance.generateId()      paper = URN5Namespace.instance.generateId()
36      paperRes = jena.common.ResourceImpl(paper)      paperRes = jena.common.ResourceImpl(paper)
37      note = ppact.newNote(paper, -123, 456, 'This is a new note')      note = ppact.newNote(paper, -123, 456, 'This is a new note')
38      noteRes = jena.common.ResourceImpl(note)      noteRes = jena.common.ResourceImpl(note)
39    
40      # type test - NoteType      # type test - NoteType
41      slctr = jena.common.SelectorImpl(noteRes, RDF.type, PP.NoteType)      slctr = jena.common.SelectorImpl(noteRes, RDF.type, PP.noteType)
42      iter = model.listStatements(slctr)      stmt = checkIter(slctr)
     assert iter.hasNext() == 1  
     stmt = iter.next()  
     assert iter.hasNext() == 0  
43      assert stmt.getSubject().toString() == note      assert stmt.getSubject().toString() == note
44            
45      # is node on paper?      # is node on paper?
46      slctr = jena.common.SelectorImpl(paperRes, PP.Contains, noteRes)      slctr = jena.common.SelectorImpl(paperRes, PP.contains, noteRes)
47      iter = model.listStatements(slctr)      stmt = checkIter(slctr)
     assert iter.hasNext() == 1  
     stmt = iter.next()  
     assert iter.hasNext() == 0  
48      assert stmt.getSubject().toString() == paper      assert stmt.getSubject().toString() == paper
49      assert stmt.getObject().toString() == note      assert stmt.getObject().toString() == note
50    
51      # x coord ok?      # x coord ok?
52      slctr = jena.common.SelectorImpl(noteRes, PP.CoordX, None)      slctr = jena.common.SelectorImpl(noteRes, SPATIAL.coordX, None)
53      iter = model.listStatements(slctr)      stmt = checkIter(slctr)
     assert iter.hasNext() == 1  
     stmt = iter.next()  
     assert iter.hasNext() == 0  
54      assert stmt.getObject().toString() == '-123'      assert stmt.getObject().toString() == '-123'
55    
56      # y coord ok?      # y coord ok?
57      slctr = jena.common.SelectorImpl(noteRes, PP.CoordY, None)      slctr = jena.common.SelectorImpl(noteRes, SPATIAL.coordY, None)
58      iter = model.listStatements(slctr)      stmt = checkIter(slctr)
     assert iter.hasNext() == 1  
     stmt = iter.next()  
     assert iter.hasNext() == 0  
59      assert stmt.getObject().toString() == '456'      assert stmt.getObject().toString() == '456'
60    
61      # deth ok?      # depth ok?
62      slctr = jena.common.SelectorImpl(noteRes, PP.Depth, None)      slctr = jena.common.SelectorImpl(noteRes, PP.depth, None)
63      iter = model.listStatements(slctr)      stmt = checkIter(slctr)
     assert iter.hasNext() == 1  
     stmt = iter.next()  
     assert iter.hasNext() == 0  
64      assert stmt.getObject().toString() == '10'      assert stmt.getObject().toString() == '10'
65    
66  def testAssoc():  def testAssoc():
# Line 163  def assocPos(): Line 77  def assocPos():
77      ppact.assocNotes(noteA, 1, noteB)      ppact.assocNotes(noteA, 1, noteB)
78    
79      # noteA -> ?      # noteA -> ?
80      slctr = jena.common.SelectorImpl(None, PP.Association, noteARes)      slctr = jena.common.SelectorImpl(None, PP.association, noteARes)
81      iter = model.listStatements(slctr)      iter = model.listStatements(slctr)
82      assert iter.hasNext() == 0      assert iter.hasNext() == 0
83            
84      slctr = jena.common.SelectorImpl(noteARes, PP.Association, None)      slctr = jena.common.SelectorImpl(noteARes, PP.association, None)
85      iter = model.listStatements(slctr)      stmt = checkIter(slctr)
     assert iter.hasNext() == 1  
     stmt = iter.next()  
     assert iter.hasNext() == 0  
86      assert stmt.getObject().toString() == noteB      assert stmt.getObject().toString() == noteB
87            
88      # ? <- noteB      # ? <- noteB
89      slctr = jena.common.SelectorImpl(noteBRes, PP.Association, None)      slctr = jena.common.SelectorImpl(noteBRes, PP.association, None)
90      iter = model.listStatements(slctr)      iter = model.listStatements(slctr)
91      assert iter.hasNext() == 0      assert iter.hasNext() == 0
92    
93      slctr = jena.common.SelectorImpl(None, PP.Association, noteBRes)      slctr = jena.common.SelectorImpl(None, PP.association, noteBRes)
94      iter = model.listStatements(slctr)      stmt = checkIter(slctr)
     assert iter.hasNext() == 1  
     stmt = iter.next()  
     assert iter.hasNext() == 0  
95      assert stmt.getSubject().toString() == noteA      assert stmt.getSubject().toString() == noteA
96    
97    
# Line 197  def assocNeg(): Line 105  def assocNeg():
105      ppact.assocNotes(noteA, -1, noteB)      ppact.assocNotes(noteA, -1, noteB)
106    
107      # noteA -> ?      # noteA -> ?
108      slctr = jena.common.SelectorImpl(noteARes, PP.Association, None)      slctr = jena.common.SelectorImpl(noteARes, PP.association, None)
109      iter = model.listStatements(slctr)      iter = model.listStatements(slctr)
110      assert iter.hasNext() == 0      assert iter.hasNext() == 0
111            
112      slctr = jena.common.SelectorImpl(None, PP.Association, noteARes)      slctr = jena.common.SelectorImpl(None, PP.association, noteARes)
113      iter = model.listStatements(slctr)      stmt = checkIter(slctr)
     assert iter.hasNext() == 1  
     stmt = iter.next()  
     assert iter.hasNext() == 0  
114      assert stmt.getSubject().toString() == noteB      assert stmt.getSubject().toString() == noteB
115            
116      # ? <- noteB      # ? <- noteB
117      slctr = jena.common.SelectorImpl(None, PP.Association, noteBRes)      slctr = jena.common.SelectorImpl(None, PP.association, noteBRes)
118      iter = model.listStatements(slctr)      iter = model.listStatements(slctr)
119      assert iter.hasNext() == 0      assert iter.hasNext() == 0
120    
121      slctr = jena.common.SelectorImpl(noteBRes, PP.Association, None)      slctr = jena.common.SelectorImpl(noteBRes, PP.association, None)
122      iter = model.listStatements(slctr)      stmt = checkIter(slctr)
     assert iter.hasNext() == 1  
     stmt = iter.next()  
     assert iter.hasNext() == 0  
123      assert stmt.getObject().toString() == noteA      assert stmt.getObject().toString() == noteA
124    
125    
# Line 230  def testInsertAndDeleteText(): Line 132  def testInsertAndDeleteText():
132      ppact.insertText(note, 5, 'FOO! ')      ppact.insertText(note, 5, 'FOO! ')
133    
134      # insert test      # insert test
135      slctr = jena.common.SelectorImpl(noteRes, PP.LinkToContentRef, None)      #assert stmt.getObject().toString() == 'This FOO! is a test'
     iter = model.listStatements(slctr)  
     assert iter.hasNext() == 1  
     stmt = iter.next()  
     assert iter.hasNext() == 0  
   
     slctr = jena.common.SelectorImpl(stmt.getObject(), PP.Data, None)  
     iter = model.listStatements(slctr)  
     assert iter.hasNext() == 1  
     stmt = iter.next()  
     assert iter.hasNext() == 0  
   
     assert stmt.getObject().toString() == 'This FOO! is a test'  
136    
137      #delete test      #delete test
138      ppact.deleteText(note, 5, 8)      ppact.deleteText(note, 5, 8)
139      slctr = jena.common.SelectorImpl(noteRes, PP.LinkToContentRef, None)      #assert stmt.getObject().toString() == 'This ! is a test'
     iter = model.listStatements(slctr)  
     assert iter.hasNext() == 1  
     stmt = iter.next()  
     assert iter.hasNext() == 0  
140    
141      slctr = jena.common.SelectorImpl(stmt.getObject(), PP.Data, None)      print 'XXX untested, unimplemented'
142      iter = model.listStatements(slctr)      
     assert iter.hasNext() == 1  
     stmt = iter.next()  
     assert iter.hasNext() == 0  
   
     assert stmt.getObject().toString() == 'This ! is a test'  

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.3

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26