Esempio n. 1
0
def add_slot_i(iid):
    t_from = request.args.get('t_from', -1)
    t_to = request.args.get('t_to', -1)
    if Interviewer.check_existence_by_id(iid):
        if is_slot_legal(t_from, t_to):
            t_from = int(t_from)
            t_to = int(t_to)
            Interviewer.add_slot_by_id(iid, t_from, t_to)
            slots = Interviewer.get_slots_by_id(iid)
            return api_encoder(slots)
        else:
            return bad_request('Slot is illegal')
    else:
        return bad_request('Interviewer not exists')
Esempio n. 2
0
    def test_matching(self):

        initialize4test()

        dt1 = datetime(2018, 8, 8, 8)
        dt2 = datetime(2018, 9, 9, 9)
        dt3 = datetime(2018, 9, 9, 10)
        dt4 = datetime(2018, 9, 9, 11)
        dt5 = datetime(2018, 9, 9, 12)
        dt8 = datetime(2019, 1, 1, 1)

        et1 = datetime2epoch(dt1)
        et2 = datetime2epoch(dt2)
        et3 = datetime2epoch(dt3)
        et4 = datetime2epoch(dt4)
        et5 = datetime2epoch(dt5)
        et8 = datetime2epoch(dt8)

        Candidate.add_slot_by_id(1, et2, et5)
        Interviewer.add_slot_by_id(1, et2, et3)
        Interviewer.add_slot_by_id(2, et2, et4)
        Interviewer.add_slot_by_id(3, et3, et5)

        url1 = "http://localhost:5000/api/candidates/1/matching"
        querystring1 = {"iids":"[1]"}
        headers1 = {
            'Cache-Control': "no-cache",
            'Postman-Token': "fc7bc0ff-37d9-4175-a234-6111685758f4"
            }
        response1 = requests.request("GET", url1, headers=headers1, params=querystring1)
        m1_raw = response1.content.decode('ascii')
        m1 = json.loads(m1_raw)

        self.assertEqual(m1[0]['t_start'], et2)
        self.assertEqual(m1[0]['t_end'], et3)
        self.assertEqual(m1[0]['cid'], 1)
        self.assertEqual(m1[0]['iids'][0], 1)

        # matching test2

        url2 = "http://localhost:5000/api/candidates/1/matching"
        querystring2 = {"iids":"[1, 2, 3]"}
        headers2 = {
            'Cache-Control': "no-cache",
            'Postman-Token': "fc7bc0ff-37d9-4175-a234-6111685758f4"
            }
        response2 = requests.request("GET", url2, headers=headers2, params=querystring2)
        m2_raw = response2.content.decode('ascii')
        m2 = json.loads(m2_raw)

        self.assertEqual(m2[0]['t_start'], et2)
        self.assertEqual(m2[0]['t_end'], et3)
        self.assertEqual(m2[0]['iids'][0], 1)
        self.assertEqual(m2[0]['iids'][1], 2)
        self.assertEqual(m2[1]['t_start'], et3)
        self.assertEqual(m2[1]['t_end'], et4)
        self.assertEqual(m2[1]['iids'][0], 2)
        self.assertEqual(m2[1]['iids'][1], 3)
        self.assertEqual(m2[2]['t_start'], et4)
        self.assertEqual(m2[2]['t_end'], et5)
        self.assertEqual(m2[2]['iids'][0], 3)