self._items = {}
self._locations = {}
+ def add_project(self, name):
+ projId = uuid.uuid4()
+ projDetails = {
+ "name": name,
+ "id": projId,
+ "isVisible": True,
+ "isMeta": False,
+ }
+ assert projId not in self._projects, "How did uuid %r repeat?" % projId
+ self._projects[projId] = projDetails
+
+ def set_project_name(self, projId, name):
+ projDetails = self._projects[projId]
+ projDetails["name"] = name
+
+ def set_project_visibility(self, projId, visibility):
+ projDetails = self._projects[projId]
+ projDetails["isVisible"] = visibility
+
def get_projects(self):
return (projectDetails for projectDetails in self._projects.itervalues())
def __init__(self, username, password, token=None):
pass
+ def add_project(self, name):
+ raise NotImplementedError("Not logged in to any ToDo system")
+
+ def set_project_name(self, projId, name):
+ raise NotImplementedError("Not logged in to any ToDo system")
+
+ def set_project_visibility(self, projId, visibility):
+ raise NotImplementedError("Not logged in to any ToDo system")
+
def get_projects(self):
return []
self._timeline = resp.timeline
self._lists = []
+ def add_project(self, name):
+ rsp = self._rtm.lists.add(
+ timeline=self._timeline,
+ name=name,
+ )
+ assert rsp.stat == "ok", "Bad response: %r" % (rsp, )
+ self._lists = []
+
+ def set_project_name(self, projId, name):
+ rsp = self._rtm.lists.setName(
+ timeline=self._timeline,
+ list_id=projId,
+ name=name,
+ )
+ assert rsp.stat == "ok", "Bad response: %r" % (rsp, )
+ self._lists = []
+
+ def set_project_visibility(self, projId, visibility):
+ action = self._rtm.lists.unarchive if visibility else self._rtm.lists.archive
+ rsp = action(
+ timeline=self._timeline,
+ list_id=projId,
+ )
+ assert rsp.stat == "ok", "Bad response: %r" % (rsp, )
+ self._lists = []
+
def get_projects(self):
if len(self._lists) == 0:
self._populate_projects()