def format_events(commits): events = [] for commit in commits: if not commit["desc"].lower().startswith("merge"): event = Event() event.timestamp = commit["timestamp"] * 1000 event.actor = commit["actor"] event.interpretation = Interpretation.MODIFY_EVENT event.manifestation = Manifestation.USER_ACTIVITY subj = Subject() subj.uri = "dav://%s" % commit["uri"] subj.origin = "dav:// " + event.actor subj.interpretation = Interpretation.MESSAGE subj.manifestation = Manifestation.FILE_DATA_OBJECT.REMOTE_DATA_OBJECT subj.text = commit["desc"] event.subjects = [subj] for f in commit["files"]: if f.strip() != "": subj = Subject() subj.uri = "file://" + f subj.interpretation = Interpretation.DOCUMENT subj.manifestation = Manifestation.FILE_DATA_OBJECT.REMOTE_DATA_OBJECT subj.text = f.split("/")[-1] event.subjects.append(subj) events.append(event) return events
def testDeleteTwoSimilarEvents(self): # Insert a couple similar events event1 = parse_events("test/data/single_event.js")[0] event2 = Event(event1) event2.timestamp = int(event1.timestamp) + 1 ids = self.insertEventsAndWait([event1, event2]) # Try deleting one of them self.deleteEventsAndWait([ids[0]]) # Make sure it's gone, but the second one is still there retrieved_events = self.getEventsAndWait(ids) self.assertEqual(retrieved_events[0], None) self.assertEventsEqual(retrieved_events[1], event2)
def dict2event(d): ev = Event() ev[0][Event.Id] = d.get("id", "") ev.timestamp = d.get("timestamp", "") ev.interpretation = d.get("interpretation", "") ev.manifestation = d.get("manifestation", "") ev.actor = d.get("actor", "") ev.origin = d.get("origin", "") ev.payload = d.get("payload", "") subjects = d.get("subjects", []) for sd in subjects: subj = Subject() subj.uri = sd.get("uri", "") subj.current_uri = sd.get("current_uri", "") subj.interpretation = sd.get("interpretation", "") subj.manifestation = sd.get("manifestation", "") subj.origin = sd.get("origin", "") subj.current_origin = sd.get("current_origin", "") subj.mimetype = sd.get("mimetype", "") subj.text = sd.get("text", "") subj.storage = sd.get("storage", "") ev.append_subject(subj) return ev
def dict2event(d): ev = Event() ev[0][Event.Id] = d.get("id", "").encode("UTF-8") ev.timestamp = str(d.get("timestamp", "")) ev.interpretation = str(d.get("interpretation", "").encode("UTF-8")) ev.manifestation = str(d.get("manifestation", "").encode("UTF-8")) ev.actor = str(d.get("actor", "").encode("UTF-8")) ev.origin = str(d.get("origin", "").encode("UTF-8")) ev.payload = str(d.get("payload", "").encode("UTF-8")) subjects = d.get("subjects", []) for sd in subjects: subj = Subject() subj.uri = str(sd.get("uri", "").encode("UTF-8")) subj.current_uri = str(sd.get("current_uri", "")).encode("UTF-8") subj.interpretation = str(sd.get("interpretation", "").encode("UTF-8")) subj.manifestation = str(sd.get("manifestation", "").encode("UTF-8")) subj.origin = str(sd.get("origin", "").encode("UTF-8")) subj.current_origin = str(sd.get("current_origin", "")).encode("UTF-8") subj.mimetype = str(sd.get("mimetype", "").encode("UTF-8")) subj.text = str(sd.get("text", "").encode("UTF-8")) subj.storage = str(sd.get("storage", "").encode("UTF-8")) ev.append_subject(subj) return ev