Example #1
0
    def create_new_category(self, category_name,
                            default=False,
                            list_position='null'):
        """ Create a new category

            Args:
                category_name: string of category name
                default: False in default
                list_position: 'null' in default

            Returns:
                A dictionary of category

            Raises:
                AnyDoAPIError:
                    Code(420): JSON Decoding Error.
        """
        ret = self.api.create_category(category_name,
                                       default,
                                       isDefault="true" if default
                                       else "false",
                                       listPosition=list_position,
                                       id=create_uuid())
        try:
            return ret.json()
        except ValueError:
            raise AnyDoAPIError(420, "JSON Decoding Error")
Example #2
0
 def test_delete_task_by_id_fail(self):
     """ unit test of delete_task_by_id error case """
     uuid = utils.create_uuid()
     HTTPretty.register_uri(HTTPretty.DELETE,
                            '%s/me/tasks/%s' % (AnyDoAPIBinder.host, uuid),
                            status=503)
     self.assertRaises(AnyDoAPIError, self.conn.delete_task_by_id, uuid)
Example #3
0
 def test_create_new_category_fail(self):
     """ unit test of create_new_category error case """
     uuid = utils.create_uuid()
     HTTPretty.register_uri(
         HTTPretty.POST,
         '%s/me/categories' % AnyDoAPIBinder.host)
     self.assertRaises(AnyDoAPIError, self.conn.create_new_category, uuid)
Example #4
0
    def create_new_task(self, task_title, due_day='someday'):
        """ Create a new task

            Args:
                task_title: string of task title
                due_day: 'someday' in default

            Returns:
                A dictionary of task

            Raises:
                AnyDoAPIError:
                    Code(420): JSON Decoding Error.
                    Code(422): Invalid Operation
        """
        try:
            ret = self.api.create_task(task_title,
                                       listPositionByCategory=0,
                                       listPositionByPriority=0,
                                       listPositionByDueDate=0,
                                       status="UNCHECKED",
                                       repeatingMethod="TASK_REPEAT_OFF",
                                       shared="false",
                                       priority="Normal",
                                       creationDate=int(time.time()),
                                       taskExpanded=False,
                                       categoryId=self.__default_category_id(),
                                       dueDate={'someday': None,
                                                'today': 0}[due_day],
                                       id=create_uuid())
            return ret.json()
        except ValueError:
            raise AnyDoAPIError(420, "JSON Decoding Error")
        except KeyError:
            raise AnyDoAPIError(422, "Invalid Operation")
Example #5
0
 def test_task(self):
     """ unit test of task """
     task_id = utils.create_uuid()
     HTTPretty.register_uri(
         HTTPretty.GET, '%s/me/tasks/%s' % (AnyDoAPIBinder.host, task_id))
     ret = self.api.task(uuid=task_id)
     self.assertEqual(ret.status_code, 200)
Example #6
0
    def create_new_category(self,
                            category_name,
                            default=False,
                            list_position='null'):
        """ Create a new category

            Args:
                category_name: string of category name
                default: False in default
                list_position: 'null' in default

            Returns:
                A dictionary of category

            Raises:
                AnyDoAPIError:
                    Code(420): JSON Decoding Error.
        """
        ret = self.api.create_category(
            category_name,
            default,
            isDefault="true" if default else "false",
            listPosition=list_position,
            id=create_uuid())
        try:
            return ret.json()
        except ValueError:
            raise AnyDoAPIError(420, "JSON Decoding Error")
Example #7
0
 def test_get_task_by_id_fail(self):
     """ unit test of get_task_by_id error case """
     uuid = utils.create_uuid()
     HTTPretty.register_uri(
         HTTPretty.GET,
         '%s/me/tasks/%s' % (AnyDoAPIBinder.host, uuid))
     self.assertRaises(AnyDoAPIError, self.conn.get_task_by_id, uuid)
Example #8
0
 def test_delete_task_by_id(self):
     """ unit test of delete_task_by_id """
     uuid = utils.create_uuid()
     HTTPretty.register_uri(HTTPretty.DELETE,
                            '%s/me/tasks/%s' % (AnyDoAPIBinder.host, uuid),
                            status=204)
     self.assertEqual(None, self.conn.delete_task_by_id(uuid))
Example #9
0
 def test_get_task_by_id(self):
     """ unit test of get_task_by_id """
     uuid = utils.create_uuid()
     HTTPretty.register_uri(HTTPretty.GET,
                            '%s/me/tasks/%s' % (AnyDoAPIBinder.host, uuid),
                            body='{"dummy_key": "dummy_value"}')
     self.assertEqual({"dummy_key": "dummy_value"},
                      self.conn.get_task_by_id(uuid))
Example #10
0
 def test_delete_task_by_id_fail(self):
     """ unit test of delete_task_by_id error case """
     uuid = utils.create_uuid()
     HTTPretty.register_uri(
         HTTPretty.DELETE,
         '%s/me/tasks/%s' % (AnyDoAPIBinder.host, uuid),
         status=503)
     self.assertRaises(AnyDoAPIError, self.conn.delete_task_by_id, uuid)
Example #11
0
 def test_task(self):
     """ unit test of task """
     task_id = utils.create_uuid()
     HTTPretty.register_uri(HTTPretty.GET,
                            '%s/me/tasks/%s' % (AnyDoAPIBinder.host,
                                                task_id))
     ret = self.api.task(uuid=task_id)
     self.assertEqual(ret.status_code, 200)
Example #12
0
 def test_create_new_category(self):
     """ unit test of create_new_category """
     uuid = utils.create_uuid()
     HTTPretty.register_uri(HTTPretty.POST,
                            '%s/me/categories' % AnyDoAPIBinder.host,
                            body='{"dummy_key": "dummy_value"}',
                            status=201)
     self.assertEqual({"dummy_key": "dummy_value"},
                      self.conn.create_new_category(uuid))
Example #13
0
 def test_delete_category(self):
     """ unit test of delete category """
     category_id = utils.create_uuid()
     HTTPretty.register_uri(HTTPretty.DELETE,
                            '%s/me/categories/%s' % (AnyDoAPIBinder.host,
                                                     category_id),
                            status=204)
     ret = self.api.delete_category(uuid=category_id)
     self.assertEqual(ret.status_code, 204)
Example #14
0
 def test_delete_task(self):
     """ unit test of delete task """
     task_id = utils.create_uuid()
     HTTPretty.register_uri(HTTPretty.DELETE,
                            '%s/me/tasks/%s' % (AnyDoAPIBinder.host,
                                                task_id),
                            status=204)
     ret = self.api.delete_task(uuid=task_id)
     self.assertEqual(ret.status_code, 204)
Example #15
0
 def test_get_task_by_id(self):
     """ unit test of get_task_by_id """
     uuid = utils.create_uuid()
     HTTPretty.register_uri(
         HTTPretty.GET,
         '%s/me/tasks/%s' % (AnyDoAPIBinder.host, uuid),
         body='{"dummy_key": "dummy_value"}')
     self.assertEqual({"dummy_key": "dummy_value"},
                      self.conn.get_task_by_id(uuid))
Example #16
0
 def test_delete_task_by_id(self):
     """ unit test of delete_task_by_id """
     uuid = utils.create_uuid()
     HTTPretty.register_uri(
         HTTPretty.DELETE,
         '%s/me/tasks/%s' % (AnyDoAPIBinder.host, uuid),
         status=204)
     self.assertEqual(None,
                      self.conn.delete_task_by_id(uuid))
Example #17
0
 def test_delete_task(self):
     """ unit test of delete task """
     task_id = utils.create_uuid()
     HTTPretty.register_uri(HTTPretty.DELETE,
                            '%s/me/tasks/%s' %
                            (AnyDoAPIBinder.host, task_id),
                            status=204)
     ret = self.api.delete_task(uuid=task_id)
     self.assertEqual(ret.status_code, 204)
Example #18
0
 def test_delete_category(self):
     """ unit test of delete category """
     category_id = utils.create_uuid()
     HTTPretty.register_uri(HTTPretty.DELETE,
                            '%s/me/categories/%s' %
                            (AnyDoAPIBinder.host, category_id),
                            status=204)
     ret = self.api.delete_category(uuid=category_id)
     self.assertEqual(ret.status_code, 204)
Example #19
0
 def test_create_new_category(self):
     """ unit test of create_new_category """
     uuid = utils.create_uuid()
     HTTPretty.register_uri(
         HTTPretty.POST,
         '%s/me/categories' % AnyDoAPIBinder.host,
         body='{"dummy_key": "dummy_value"}',
         status=201)
     self.assertEqual({"dummy_key": "dummy_value"},
                      self.conn.create_new_category(uuid))
Example #20
0
 def test_create_category(self, mock_class):
     category_id = utils.create_uuid()
     ret = self.api.create_category(name="ANY.DO_TEST_CATEGORY",
                                    default="false",
                                    isDefault="false",
                                    listPosition="null",
                                    id=category_id)
     ret.status_code = 201
     mock_class.return_value = ret
     self.assertEqual(ret.status_code, 201)
Example #21
0
 def test_create_task(self, mock_class):
     category_id = utils.create_uuid()
     task_id = utils.create_uuid()
     ret = self.api.create_task(title="ANY.DO_TEST_TASK",
                                listPositionByCategory=0,
                                listPositionByPriority=0,
                                listPositionByDueDate=0,
                                status="UNCHECKED",
                                repeatingMethod="TASK_REPEAT_OFF",
                                shared="false",
                                priority="Normal",
                                creationDate=str(int(time.time())),
                                taskExpanded="false",
                                categoryId=str(category_id),
                                dueDate=None,
                                id=task_id)
     ret.status_code = 200
     mock_class.return_value = ret
     self.assertEqual(ret.status_code, 200)
Example #22
0
    def test_create_new_task_fail(self):
        """ unit test of create_new_task error case """
        uuid = utils.create_uuid()
        HTTPretty.register_uri(
            HTTPretty.GET,
            '%s/me/categories' % AnyDoAPIBinder.host,
            body='[{"isDefault": true, "id": "dummy_category0"}]')

        HTTPretty.register_uri(HTTPretty.POST,
                               '%s/me/tasks' % AnyDoAPIBinder.host)
        self.assertRaises(AnyDoAPIError, self.conn.create_new_task, uuid)
Example #23
0
 def test_create_category(self):
     """ unit test of create category """
     category_id = utils.create_uuid()
     HTTPretty.register_uri(HTTPretty.POST,
                            '%s/me/categories' % AnyDoAPIBinder.host,
                            status=201)
     ret = self.api.create_category(name="ANY.DO_TEST_CATEGORY",
                                    default="false",
                                    isDefault="false",
                                    listPosition="null",
                                    id=category_id)
     self.assertEqual(ret.status_code, 201)
Example #24
0
    def test_create_new_task_fail(self):
        """ unit test of create_new_task error case """
        uuid = utils.create_uuid()
        HTTPretty.register_uri(
            HTTPretty.GET,
            '%s/me/categories' % AnyDoAPIBinder.host,
            body='[{"isDefault": true, "id": "dummy_category0"}]')

        HTTPretty.register_uri(
            HTTPretty.POST,
            '%s/me/tasks' % AnyDoAPIBinder.host)
        self.assertRaises(AnyDoAPIError, self.conn.create_new_task, uuid)
Example #25
0
 def test_create_category(self):
     """ unit test of create category """
     category_id = utils.create_uuid()
     HTTPretty.register_uri(HTTPretty.POST,
                            '%s/me/categories' % AnyDoAPIBinder.host,
                            status=201)
     ret = self.api.create_category(name="ANY.DO_TEST_CATEGORY",
                                    default="false",
                                    isDefault="false",
                                    listPosition="null",
                                    id=category_id)
     self.assertEqual(ret.status_code, 201)
Example #26
0
 def test_delete_category_by_id_fail(self):
     """ unit test of delete_category_by_id error case """
     uuid = utils.create_uuid()
     HTTPretty.register_uri(
         HTTPretty.GET,
         '%s/me/categories' % AnyDoAPIBinder.host,
         body='[{"isDefault": true, "id": "dummy_category0"}]')
     HTTPretty.register_uri(
         HTTPretty.DELETE,
         '%s/me/categories/%s' % (AnyDoAPIBinder.host, uuid),
         status=503)
     self.assertRaises(AnyDoAPIError, self.conn.delete_category_by_id, uuid)
Example #27
0
 def test_delete_category_by_id(self):
     """ unit test of delete_category_by_id """
     uuid = utils.create_uuid()
     HTTPretty.register_uri(
         HTTPretty.GET,
         '%s/me/categories' % AnyDoAPIBinder.host,
         body='[{"isDefault": true, "id": "dummy_category0"}]')
     HTTPretty.register_uri(HTTPretty.DELETE,
                            '%s/me/categories/%s' %
                            (AnyDoAPIBinder.host, uuid),
                            status=204)
     self.assertEqual(None, self.conn.delete_category_by_id(uuid))
Example #28
0
 def test_create_task(self):
     """ unit test of create task """
     category_id = utils.create_uuid()
     task_id = utils.create_uuid()
     HTTPretty.register_uri(HTTPretty.POST,
                            '%s/me/tasks' % AnyDoAPIBinder.host,
                            status=200)
     ret = self.api.create_task(title="ANY.DO_TEST_TASK",
                                listPositionByCategory=0,
                                listPositionByPriority=0,
                                listPositionByDueDate=0,
                                status="UNCHECKED",
                                repeatingMethod="TASK_REPEAT_OFF",
                                shared="false",
                                priority="Normal",
                                creationDate=str(int(time.time())),
                                taskExpanded="false",
                                categoryId=str(category_id),
                                dueDate=None,
                                id=task_id)
     self.assertEqual(ret.status_code, 200)
Example #29
0
 def test_delete_category_by_id_fail(self):
     """ unit test of delete_category_by_id error case """
     uuid = utils.create_uuid()
     HTTPretty.register_uri(
         HTTPretty.GET,
         '%s/me/categories' % AnyDoAPIBinder.host,
         body='[{"isDefault": true, "id": "dummy_category0"}]')
     HTTPretty.register_uri(HTTPretty.DELETE,
                            '%s/me/categories/%s' %
                            (AnyDoAPIBinder.host, uuid),
                            status=503)
     self.assertRaises(AnyDoAPIError, self.conn.delete_category_by_id, uuid)
Example #30
0
 def test_create_task(self):
     """ unit test of create task """
     category_id = utils.create_uuid()
     task_id = utils.create_uuid()
     HTTPretty.register_uri(HTTPretty.POST,
                            '%s/me/tasks' % AnyDoAPIBinder.host,
                            status=200)
     ret = self.api.create_task(title="ANY.DO_TEST_TASK",
                                listPositionByCategory=0,
                                listPositionByPriority=0,
                                listPositionByDueDate=0,
                                status="UNCHECKED",
                                repeatingMethod="TASK_REPEAT_OFF",
                                shared="false",
                                priority="Normal",
                                creationDate=str(int(time.time())),
                                taskExpanded="false",
                                categoryId=str(category_id),
                                dueDate=None,
                                id=task_id)
     self.assertEqual(ret.status_code, 200)
Example #31
0
 def test_delete_category_by_id(self):
     """ unit test of delete_category_by_id """
     uuid = utils.create_uuid()
     HTTPretty.register_uri(
         HTTPretty.GET,
         '%s/me/categories' % AnyDoAPIBinder.host,
         body='[{"isDefault": true, "id": "dummy_category0"}]')
     HTTPretty.register_uri(
         HTTPretty.DELETE,
         '%s/me/categories/%s' % (AnyDoAPIBinder.host, uuid),
         status=204)
     self.assertEqual(None,
                      self.conn.delete_category_by_id(uuid))
Example #32
0
 def create_new_category(self, category_name,
                         default=False,
                         list_position='null'):
     ret = self.api.create_category(category_name,
                                    default,
                                    isDefault="true" if default
                                    else "false",
                                    listPosition=list_position,
                                    id=create_uuid())
     try:
         return ret.json()
     except ValueError:
         raise AnyDoAPIError(420, "JSON Decoding Error")
Example #33
0
    def test_create_new_task(self):
        """ unit test of create_new_task """
        uuid = utils.create_uuid()
        HTTPretty.register_uri(
            HTTPretty.GET,
            '%s/me/categories' % AnyDoAPIBinder.host,
            body='[{"isDefault": true, "id": "dummy_category0"}]')

        HTTPretty.register_uri(HTTPretty.POST,
                               '%s/me/tasks' % AnyDoAPIBinder.host,
                               body='{"dummy_key": "dummy_value"}',
                               status=201)
        self.assertEqual({"dummy_key": "dummy_value"},
                         self.conn.create_new_task(uuid))
Example #34
0
    def test_create_new_task(self):
        """ unit test of create_new_task """
        uuid = utils.create_uuid()
        HTTPretty.register_uri(
            HTTPretty.GET,
            '%s/me/categories' % AnyDoAPIBinder.host,
            body='[{"isDefault": true, "id": "dummy_category0"}]')

        HTTPretty.register_uri(
            HTTPretty.POST,
            '%s/me/tasks' % AnyDoAPIBinder.host,
            body='{"dummy_key": "dummy_value"}',
            status=201)
        self.assertEqual({"dummy_key": "dummy_value"},
                         self.conn.create_new_task(uuid))
Example #35
0
    def create_new_task(self, task_title, due_day='someday'):
        """ Create a new task

            Args:
                task_title: string of task title
                due_day: 'someday' in default

            Returns:
                A dictionary of task

            Raises:
                AnyDoAPIError:
                    Code(420): JSON Decoding Error.
                    Code(422): Invalid Operation
        """
	# Check if datetime object was passed instead of a string
	if type( due_day ) == datetime.datetime:
	  # Convert into POSIX timestamp
	  dueDate = time.mktime( due_day.timetuple() )
	  # Need to multiply by 1000 before posting it to any.do
	  dueDate = int( dueDate ) * 1000
	else:
	  dueDate = { 'someday': None, 'today': 0 }[ due_day ]

        try:
            ret = self.api.create_task(task_title,
                                       listPositionByCategory=0,
                                       listPositionByPriority=0,
                                       listPositionByDueDate=0,
                                       status="UNCHECKED",
                                       repeatingMethod="TASK_REPEAT_OFF",
                                       shared="false",
                                       priority="Normal",
                                       creationDate=int(time.time()),
				       dueDate=dueDate,
                                       taskExpanded=False,
                                       categoryId=self.__default_category_id(),
                                       id=create_uuid())
            return ret.json()
        except ValueError:
            raise AnyDoAPIError(420, "JSON Decoding Error")
        except KeyError:
            raise AnyDoAPIError(422, "Invalid Operation")
Example #36
0
 def create_new_task(self, task_title, due_day='someday'):
     try:
         ret = self.api.create_task(task_title,
                                    listPositionByCategory=0,
                                    listPositionByPriority=0,
                                    listPositionByDueDate=0,
                                    status="UNCHECKED",
                                    repeatingMethod="TASK_REPEAT_OFF",
                                    shared="false",
                                    priority="Normal",
                                    creationDate=int(time.time()),
                                    taskExpanded=False,
                                    categoryId=self.def_category_id,
                                    dueDate={'someday': None,
                                             'today': 0}[due_day],
                                    id=create_uuid())
         return ret.json()
     except ValueError:
         raise AnyDoAPIError(420, "JSON Decoding Error")
     except KeyError:
         raise AnyDoAPIError(422, "Invalid Operation")
Example #37
0
    def create_new_task(self, task_title, due_day: datetime.datetime = None):
        """ Create a new task

            Args:
                task_title: string of task title
                due_day: due date for task, if not set, assume 'someday'

            Returns:
                A dictionary of task

            Raises:
                AnyDoAPIError:
                    Code(420): JSON Decoding Error.
                    Code(422): Invalid Operation
        """
        due_date = None  # like setting 'someday'
        if due_day:
            due_date = time.mktime(due_day.timetuple())
            due_date = int(due_date) * 1000

        try:
            ret = self.api.create_task(task_title,
                                       listPositionByCategory=0,
                                       listPositionByPriority=0,
                                       listPositionByDueDate=0,
                                       status="UNCHECKED",
                                       repeatingMethod="TASK_REPEAT_OFF",
                                       shared="false",
                                       priority="Normal",
                                       creationDate=int(time.time()),
                                       dueDate=due_date,
                                       taskExpanded=False,
                                       categoryId=self.__default_category_id(),
                                       id=create_uuid())
            return ret.json()
        except ValueError:
            raise AnyDoAPIError(420, "JSON Decoding Error")
        except KeyError:
            raise AnyDoAPIError(422, "Invalid Operation")
Example #38
0
    def create_new_task(self, task_title, due_day='someday'):
        """ Create a new task

            Args:
                task_title: string of task title
                due_day: 'someday' in default

            Returns:
                A dictionary of task

            Raises:
                AnyDoAPIError:
                    Code(420): JSON Decoding Error.
                    Code(422): Invalid Operation
        """
        try:
            ret = self.api.create_task(task_title,
                                       listPositionByCategory=0,
                                       listPositionByPriority=0,
                                       listPositionByDueDate=0,
                                       status="UNCHECKED",
                                       repeatingMethod="TASK_REPEAT_OFF",
                                       shared="false",
                                       priority="Normal",
                                       creationDate=int(time.time()),
                                       taskExpanded=False,
                                       categoryId=self.__default_category_id(),
                                       dueDate={
                                           'someday': None,
                                           'today': 0
                                       }[due_day],
                                       id=create_uuid())
            return ret.json()
        except ValueError:
            raise AnyDoAPIError(420, "JSON Decoding Error")
        except KeyError:
            raise AnyDoAPIError(422, "Invalid Operation")
Example #39
0
 def test_create_uuid(self):
     """ unit test of create_uuid """
     self.assertTrue(self.pattern.match(utils.create_uuid()))
Example #40
0
 def test_create_uuid(self):
     """ unit test of create_uuid """
     self.assertTrue(self.pattern.match(utils.create_uuid()))
Example #41
0
 def test_create_uuid(self):
     self.assertTrue(self.pattern.match(utils.create_uuid()))
Example #42
0
 def test_create_new_category_fail(self):
     """ unit test of create_new_category error case """
     uuid = utils.create_uuid()
     HTTPretty.register_uri(HTTPretty.POST,
                            '%s/me/categories' % AnyDoAPIBinder.host)
     self.assertRaises(AnyDoAPIError, self.conn.create_new_category, uuid)
Example #43
0
 def test_get_task_by_id_fail(self):
     """ unit test of get_task_by_id error case """
     uuid = utils.create_uuid()
     HTTPretty.register_uri(HTTPretty.GET,
                            '%s/me/tasks/%s' % (AnyDoAPIBinder.host, uuid))
     self.assertRaises(AnyDoAPIError, self.conn.get_task_by_id, uuid)
Example #44
0
 def test_delete_category(self, mock_class):
     category_id = utils.create_uuid()
     ret = self.api.delete_category(uuid=category_id)
     ret.status_code = 204
     mock_class.return_value = ret
     self.assertEqual(ret.status_code, 204)
Example #45
0
 def test_task(self, mock_class):
     task_id = utils.create_uuid()
     ret = self.api.task(uuid=task_id)
     ret.status_code = 200
     mock_class.return_value = ret
     self.assertEqual(ret.status_code, 200)