gdbassett / moirai

1 stars 1 forks source link

Create Test Client for Validation Module #27

Closed gdbassett closed 11 years ago

gdbassett commented 11 years ago

Create a test client capable of exercising all the code paths in the validation module. That means AN/AE's, CN/CE's, RN/RE's, DN/DE's.

Recommend graph have form: C<-B<-A->D<-E A = Condition B = Event C = Condition D = Event E = Attribute

Add all Change some & edges Replace some & edges Delete R where E-[R]->D Delete B

gdbassett commented 11 years ago

idMap = {"A":"","B":"","C":"","D":"","1":"","2":"","3":""}

Request to receive event back in pubsub

event1 = {"dces_version":"0.2","ae":{"1":{"source":"E","target":"A","directed":true, "relationship":"describes","start":"2013-03-14T16:57Z"},"2":{"source":"A","target":"B","directed":true, "relationship":"leads to","start":"2013-03-14T16:57Z","comment":"I'm sure!"},"3":{"source":"B","target":"C","directed":true, "relationship":"leads to","start":"2013-03-14T16:57Z"}},"an":{"A":{"label":"haxor","class":"actor","start":"2013-03-14T16:57Z","cpt":{"nodeid":"A","index":["E",true,false],"0":[0,1],"1":[1,0]},"comment":"A youtube educated hacker"},"B":{"label":"Haxors your site","class":"event","start":"2013-03-14T16:57Z","cpt":{"nodeid":"B","index":["A",true,false],"0":[0,1],"1":[0.9,0.1]},"comment":"Uses db_autopwn"},"C":{"label":"Your sites pwnd","class":"condition","start":"2013-03-14T16:57Z","cpt":{"nodeid":"C","index":["B",true,false],"0":[0,1],"1":[1,0]}},"D":{"class":"attribute","metadata":{"skills":"leet"},"start":"2013-03-14T16:57Z","cpt":{"nodeid":"E","index":[true,false],"0":[1,0]}}}}

parse event and store a {originID:dbID} dictionary

cypher to get twoSrc (aID)

cypher to get twoTgt (bID)

cypher to get bID

event2 = {"dces_version":"0.2","re":{"2":{"source":idMap["A"],"target":idMap["B"],"directed":true, "relationship":"leads to","start":"2013-03-14T16:57Z","confidence":90}},"rn":{idMap["B"]:{"label":"Pays someone else to hack your site","class":"event","start":"2013-03-14T16:57Z","cpt":{"nodeid":"B","index":["A",true,false],"0":[0,1],"1":[0.9,0.1]},"finish":"2013-03-20T16:57Z"},}}

cypher to get oneSrc (dID)

should already have oneTgt (aID)

event3 = {"dces_version":"0.2","cn":{idMap["D"]:{"label":"target has leet hacking skills"}},"ce":{"1":{"source":idMap["D"],"target":idMap["A"],"confidence":80}}}

should already have bID

should already have oneSrc (dID)

should already have oneTgt (aID)

event4 = {"dces_version":"0.2","dn":{idMap["B"]:{}},"de":{"1":{"source":idMap["D"],"target":idMap["A"]}}}

Recommend graph have form: C<-B<-A<-D A = Actor B = Event C = Condition D = Attribute

Add all Change some & edges Replace some & edges Delete R where E-[R]->D

gdbassett commented 11 years ago

Fixed with commit da020a523dfa4d2fa413cf26097ae0fb17db83c1.