# -*- coding: utf-8 -*-
"""
#----------testcase----------------
#基本信息
#Author:johnnyzhu
#project:jfa
"""
#/api/v1/manager/refreshToken 刷新登陆token

import util.test_get_post as gp
import json
import util.globalv as gl
import case.login as clogin
import unittest
import util.reporyresult as cr
import config.config
import util.logger as ul



class TestrefreshToken(unittest.TestCase):
    def setUp(self):
        # 设置测试用例编号
        self.lab = gl.get_value('lab')
        self.caseid = '%s-13' % (self.lab)

        self.testplanid = gl.get_value('test_plan_id')
        self.token = clogin.testuserlogin()

        self.ip = gl.get_value('apiip')
        # 测试API地址
        self.url = '%s/api/v1/manager/refreshToken' % (self.ip)


        # 测试API入参
        self.payloadData = {}


        # 测试API请求头设置
        self.payloadHeader = {
            'Content-Type': "application/json",
            'Authorization': self.token
        }


        # 打印requests
        self.data = json.dumps(self.payloadData)
        self.headers = self.payloadHeader
        ul.log.logger.info("%s is open!~~~~~~~~~~~~~~~~~~~~~~~~~~~~" % (self.caseid))


    def testrefreshToken(self):
        r = gp.Runmain().send_post(url=self.url,data=self.data,headers=self.headers,verify=False)
        ul.log.logger.info(r)

        try:
            self.assertEqual('OK',r["errMsg"])
            self.assertEqual(0, r["errCode"])
            self.test_result = "p"
            #回写结果至testlink
            cr.report_test_result(self.testplanid, self.caseid, self.test_result)
            ul.log.logger.info(self.test_result)
            ul.log.logger.info("%s over!~~~~~~~~~~~~~~~~~~~~~~~~~~~~" % (self.caseid))

        except AssertionError as e:
            self.test_result = "f"
            # 回写结果至testlink
            cr.report_test_result(self.testplanid, self.caseid, self.test_result)
            ul.log.logger.info(self.test_result)
            ul.log.logger.info("%s failed!~~~~~~~~~~~~~~~~~~~~~~~~~~~~" % (self.caseid))
            raise AssertionError(e)