test_listPageOperation.py 7.32 KB
# -*- coding: utf-8 -*-

# @Time    : 2021/8/11 15:25
# @Author  : Ljq
# @File    : test_listPageOperation.py
# @Software: PyCharm

"""

"""

import unittest
from commons.scripts.readConf import rC
from commons.api import zcApi as zcA
from commons.api import sjApi
from commons.api import hpApi
from commons.api.entranceFeeBillList import operationUnfreeze as eOp
from commons.api.entranceFeeBillList import entranceFeeBillList as eFBL
from commons.api.entranceFeeBillList import operationDoInvalid as oDI
from commons.api.entranceFeeBillList import operationDoCorrect as oDC
from commons.api.entranceFeeBillList import operationDoAmend as oDA
from commons.api.entranceFeeBillList import operationDoUndo as oDU
import random

class test_listPage(unittest.TestCase):
    """进门单列表:进门但操作测试测试"""
    def setUp(self) -> None:
        pass

    def tearDown(self) -> None:
        pass

    @classmethod
    def setUpClass(cls) -> None:
        cls.gatewayHost = rC.returnOptionsItems("host", "gatewayHost")
        cls.jmsfHost = rC.returnOptionsItems("host", "jmsfHost")
        cls.ic = rC.returnOptionsItems("testInfo", "cardNumRe")

    @classmethod
    def tearDownClass(cls) -> None:
        pass

    def test_orderView(self):
        """进门单列表-操作:查看进门单详情测试"""
        res = zcA.create_jmsf(host=self.gatewayHost)
        orderId = res.json()["data"]["id"]
        number = res.json()["data"]["number"]
        res = eFBL.get_orderView(host=self.jmsfHost,orderId=orderId)
        assert str(number) in res.text,"获取订单详情查询失败"

    def test_doPayZC(self):
        """进门单列表-操作:整车进门交费测试"""
        plate = f"川A{random.randint(10000,99999)}"
        goods = "雪莲果"
        cre_res = zcA.create_jmsf(host=self.gatewayHost,plate=plate,keyword=goods)
        print(cre_res.json())
        number = cre_res.json()["data"]["number"]
        res_pay = eFBL.do_payOrder(host=self.jmsfHost,attrValue=number)
        assert res_pay.json()["code"]=="200","缴费失败"
        assert res_pay.json()["message"] == "OK", "缴费失败"

    def test_doPaySJ(self):
        """进门单列表-操作:散件进门交费测试"""
        plate = f"川A{random.randint(10000,99999)}"
        goods = "雪莲果"
        cre_res = sjApi.create_sj(host=self.gatewayHost,plate=plate,keyword=goods)
        print(cre_res.json())
        number = cre_res.json()["data"]["number"]
        res_pay = eFBL.do_payOrder(host=self.jmsfHost,attrValue=number)
        assert res_pay.json()["code"]=="200","缴费失败"
        assert res_pay.json()["message"] == "OK", "缴费失败"

    def test_unfreezeOrderInfo(self):
        """进门单列表-操作:散件进门交费测试"""
        plate = f"川A{random.randint(10000,99999)}"
        goods = "雪莲果"
        cre_res = zcA.create_jmsf(host=self.gatewayHost,plate=plate,keyword=goods)
        print(cre_res.json())
        number = cre_res.json()["data"]["number"]
        res_pay = eFBL.do_freezeOrder(host=self.jmsfHost,attrValue=number)
        assert res_pay.json()["code"]=="200","缴费失败"
        assert res_pay.json()["message"] == "OK", "缴费失败"
        res,tareWeight = hpApi.do_backSkinWeighSave(host=self.gatewayHost,number=number)
        assert res.json()["code"]=="200","回皮失败"
        assert "data" in res.text,"回皮失败"
        resListPage = eFBL.listPage(host=self.jmsfHost,attrValue=number)
        print(resListPage.json())
        assert resListPage.json()["rows"][0]["number"] == number,"按照收费单号查询失败"
        assert resListPage.json()["rows"][0]["tareWeight"] == tareWeight,"按照收费单号查询失败"


    def test_freezeOrder(self):
        """进门单列表-操作:整车进门冻结测试"""
        plate = f"川A{random.randint(10000,99999)}"
        goods = "雪莲果"
        cre_res = zcA.create_jmsf(host=self.gatewayHost,plate=plate,keyword=goods)
        print(cre_res.json())
        number = cre_res.json()["data"]["number"]
        res_pay = eFBL.do_freezeOrder(host=self.jmsfHost,attrValue=number)
        assert res_pay.json()["code"]=="200","冻结失败"
        assert res_pay.json()["message"] == "OK", "冻结失败"

    def test_unfreezeOrder(self):
        """进门单列表-操作:整车进门解冻测试"""
        plate = f"川A{random.randint(10000,99999)}"
        goods = "雪莲果"
        cre_res = zcA.create_jmsf(host=self.gatewayHost,plate=plate,keyword=goods)
        print(cre_res.json())
        number = cre_res.json()["data"]["number"]
        eFBL.do_freezeOrder(host=self.jmsfHost,attrValue=number)
        res_unfreezeOrder = eOp.do_unfreezeOrder(host=self.jmsfHost,attrValue=number)
        assert res_unfreezeOrder.json()["code"]=="200","解冻失败"
        assert res_unfreezeOrder.json()["message"] == "OK", "解冻失败"

    def test_invalidOrder(self):
        """进门单列表-操作:整车进门作废测试"""
        plate = f"川A{random.randint(10000,99999)}"
        cre_res = zcA.create_jmsf(host=self.gatewayHost,plate=plate)
        print(cre_res.json())
        number = cre_res.json()["data"]["number"]
        res_unfreezeOrder = oDI.do_invalidOrder(host=self.jmsfHost,attrValue=number)
        assert res_unfreezeOrder.json()["number"]==number,"作废测试失败"
        assert res_unfreezeOrder.json()["message"] == "作废成功!", "作废测试失败"

    def test_correctOrder(self):
        """进门单列表-操作:整车进门更正测试"""
        plate = f"川A{random.randint(10000,99999)}"
        cre_res = zcA.create_jmsf(host=self.gatewayHost,plate=plate)
        print(cre_res.json())
        number = cre_res.json()["data"]["number"]
        res_unfreezeOrder,totalAmount = oDC.do_correctOrder(host=self.jmsfHost,attrValue=number)
        assert res_unfreezeOrder.json()["success"]==True,"更正测试失败"
        assert res_unfreezeOrder.json()["msg"] == "操作成功", "更正测试失败"
        resListPage = eFBL.listPage(host=self.jmsfHost,attrValue=number)
        print(resListPage.json())
        assert resListPage.json()["rows"][0]["number"] == number,"按照收费单号查询失败"
        assert resListPage.json()["rows"][0]["$_totalPrice"] == totalAmount,"更正后订单界错误与预期金额不一致"

    def test_amendOrder(self):
        """进门单列表-操作:整车进门修正测试"""
        plate = f"川A{random.randint(10000,99999)}"
        cre_res = zcA.create_jmsf(host=self.gatewayHost,plate=plate)
        print(cre_res.json())
        number = cre_res.json()["data"]["number"]
        res_unfreezeOrder = oDA.do_amendOrder(host=self.jmsfHost,attrValue=number)
        assert res_unfreezeOrder.json()["success"]==True,"修正操作失败"
        assert res_unfreezeOrder.json()["message"] == "操作成功", "修正操作失败"

    def test_undoOrder(self):
        """进门单列表-操作:整车进门退款测试"""
        plate = f"川A{random.randint(10000,99999)}"
        goods = "雪莲果"
        cre_res = zcA.create_jmsf(host=self.gatewayHost,plate=plate,keyword=goods)
        number = cre_res.json()["data"]["number"]
        res_pay = eFBL.do_payOrder(host=self.jmsfHost,attrValue=number)
        res_undo = oDU.do_undoOrder(host=self.jmsfHost,attrValue=number)
        assert res_undo.json()["code"] == "200","退款失败"
        assert res_undo.json()["message"] == "OK","退款失败"