Beispiel #1
0
class TaskPayloadHelperTestSuite(TestCase):
    def setUp(self):
        self.taskPayloadHelper = TaskPayloadHelper(TEST_PAYLOAD)
        
        self.owner = TaskOwner(email='*****@*****.**', key='example')
        self.owner.save()
    
    def test_get_ready_datetime(self):
        self.assertEqual(self.taskPayloadHelper.get_ready_datetime(),
                         TEST_DATE_EXPECT)
    
    def test_is_duplicate(self):
        self.assertFalse(self.taskPayloadHelper.is_duplicate())
        
        task = Task(owner=self.owner,
                    source=TEST_PAYLOAD[const.KEY_SOURCE],
                    dest=TEST_PAYLOAD[const.KEY_DEST],
                    content=TEST_PAYLOAD[const.KEY_CONTENT],
                    ready_time=TEST_DATE_EXPECT)
        task.save()
        
        self.assertTrue(self.taskPayloadHelper.is_duplicate())
    
    def test_is_valid(self):
        self.assertTrue(self.taskPayloadHelper.is_valid())
Beispiel #2
0
class QueueTestSuite(TestCase):
    def setUp(self):
        self.taskowner = TaskOwner(email="*****@*****.**", key="example")
        self.taskowner.save()

    def test_ready_and_delete_tasks(self):
        task_1 = Task(
            owner=self.taskowner,
            source="@handle_a",
            dest="@handle_b",
            content="some message",
            ready_time=datetime.utcnow() + timedelta(minutes=10),
        )
        task_1.save()

        task_2 = Task(
            owner=self.taskowner,
            source="*****@*****.**",
            dest="*****@*****.**",
            content="some message",
            ready_time=datetime.utcnow(),
        )
        task_2.save()

        ready_tasks = pushQueue._get_ready_tasks()
        self.assertEqual(len(ready_tasks), 1)
        self.assertEqual(ready_tasks[0].source, "*****@*****.**")

        pushQueue._delete_processed_tasks(ready_tasks)
        ready_tasks_after = pushQueue._get_ready_tasks()
        self.assertEqual(len(ready_tasks_after), 0)

    def test_queue_task_creation(self):
        task_1 = Task(
            owner=self.taskowner,
            source="@handle_a",
            dest="@handle_b",
            content="some message",
            ready_time=datetime.now(),
        )
        task_1.save()

        ready_tasks = pushQueue._get_ready_tasks()

        queue_Task = pushQueue._create_task_from_db(ready_tasks[0])
        self.assertTrue(queue_Task)
Beispiel #3
0
class QueueTestSuite(TestCase):
    def setUp(self):
        self.taskowner = TaskOwner(email='*****@*****.**', key='example')
        self.taskowner.save()

    def test_ready_and_delete_tasks(self):
        task_1 = Task(owner=self.taskowner,
                      source="@handle_a",
                      dest="@handle_b",
                      content="some message",
                      ready_time=datetime.utcnow() + timedelta(minutes=10))
        task_1.save()

        task_2 = Task(owner=self.taskowner,
                      source="*****@*****.**",
                      dest="*****@*****.**",
                      content="some message",
                      ready_time=datetime.utcnow())
        task_2.save()

        ready_tasks = pushQueue._get_ready_tasks()
        self.assertEqual(len(ready_tasks), 1)
        self.assertEqual(ready_tasks[0].source, "*****@*****.**")

        pushQueue._delete_processed_tasks(ready_tasks)
        ready_tasks_after = pushQueue._get_ready_tasks()
        self.assertEqual(len(ready_tasks_after), 0)

    def test_queue_task_creation(self):
        task_1 = Task(owner=self.taskowner,
                      source="@handle_a",
                      dest="@handle_b",
                      content="some message",
                      ready_time=datetime.now())
        task_1.save()

        ready_tasks = pushQueue._get_ready_tasks()

        queue_Task = pushQueue._create_task_from_db(ready_tasks[0])
        self.assertTrue(queue_Task)
Beispiel #4
0
class FullRunTestSuite(TestCase):
    def setUp(self):
        self.taskowner = TaskOwner(email='*****@*****.**', key='example')
        self.taskowner.save()
    
    def test_POST(self):
        request = HttpRequest()
        request.method = 'POST'
        request.POST = {const.KEY_ID: "",
                        const.KEY_SOURCE: "*****@*****.**",
                        const.KEY_DEST: "*****@*****.**",
                        const.KEY_CONTENT: "text content",
                        const.KEY_READY_TIME: "2013-09-13T04:22:58.578Z"}
        response = taskrouter(request=request,
                              owner_key=self.taskowner.key,
                              task_id=None)
        
        response_body = response.content
        self.assertTrue(response_body)
        
        json_body = json.loads(response_body)
        self.assertTrue(json_body)
        
        self.assertEqual(json_body[const.KEY_SOURCE], request.POST[const.KEY_SOURCE])
        self.assertEqual(json_body[const.KEY_DEST], request.POST[const.KEY_DEST])
        self.assertEqual(json_body[const.KEY_CONTENT], request.POST[const.KEY_CONTENT])
        self.assertEqual(json_body[const.KEY_READY_TIME], request.POST[const.KEY_READY_TIME])
    
    def test_POST_then_GET(self):
        request_POST = HttpRequest()
        request_POST.method = 'POST'
        request_POST.POST = {const.KEY_ID: "",
                             const.KEY_SOURCE: "*****@*****.**",
                             const.KEY_DEST: "*****@*****.**",
                             const.KEY_CONTENT: "text content",
                             const.KEY_READY_TIME: "2000-09-13T04:22:58.100Z"}
        response_POST = taskrouter(request=request_POST,
                                   owner_key=self.taskowner.key,
                                   task_id=None)
        json_POST = json.loads(response_POST.content)
        task_id = json_POST[const.KEY_ID]
        
        request_GET = HttpRequest()
        request_GET.method = 'GET'
        response_GET = taskrouter(request=request_GET,
                                  owner_key=self.taskowner.key,
                                  task_id=task_id)
        json_GET = json.loads(response_GET.content)
        
        self.assertEqual(json_GET[const.KEY_ID], task_id)
        self.assertEqual(json_GET[const.KEY_SOURCE], request_POST.POST[const.KEY_SOURCE])
        self.assertEqual(json_GET[const.KEY_DEST], request_POST.POST[const.KEY_DEST])
        self.assertEqual(json_GET[const.KEY_CONTENT], request_POST.POST[const.KEY_CONTENT])
        self.assertEqual(json_GET[const.KEY_READY_TIME], request_POST.POST[const.KEY_READY_TIME])
    
    def test_POST_then_DELETE(self):
        request_POST = HttpRequest()
        request_POST.method = 'POST'
        request_POST.POST = {const.KEY_ID: "",
                             const.KEY_SOURCE: "*****@*****.**",
                             const.KEY_DEST: "*****@*****.**",
                             const.KEY_CONTENT: "text content",
                             const.KEY_READY_TIME: "2013-09-13T04:22:58.578Z"}
        response_POST = taskrouter(request=request_POST,
                                   owner_key=self.taskowner.key,
                                   task_id=None)
        json_POST = json.loads(response_POST.content)
        task_id = json_POST[const.KEY_ID]
        
        request_DELETE = HttpRequest()
        request_DELETE.method = 'DELETE'
        response_DELETE = taskrouter(request=request_DELETE,
                                     owner_key=self.taskowner.key,
                                     task_id=task_id)
        json_DELETE = json.loads(response_DELETE.content)
        self.assertEqual(json_DELETE[const.KEY_ID], task_id)
Beispiel #5
0
 def setUp(self):
     self.taskowner = TaskOwner(email='*****@*****.**', key='example')
     self.taskowner.save()
Beispiel #6
0
 def setUp(self):
     self.taskPayloadHelper = TaskPayloadHelper(TEST_PAYLOAD)
     
     self.owner = TaskOwner(email='*****@*****.**', key='example')
     self.owner.save()
Beispiel #7
0
 def setUp(self):
     self.taskowner = TaskOwner(email="*****@*****.**", key="example")
     self.taskowner.save()