press.py 3.38 KB
#!/usr/bin/env python
# -*- coding: utf-8 -*-

import unittest
import requests
from data_fixture.config_data import HOST_BOSS
from data_fixture import create_testdata as CreateTestData
from data_fixture import config_data as Data
from data_fixture.mysql_db import DB

db_test = DB()


# 获取教材版本列表
class GetPressList(unittest.TestCase):
    def setUp(self):
        self.base_url = HOST_BOSS + '/press/list'

    def tearDown(self):
        print(self.result)

    def test_getPressList_success(self):
        headers = {'Accept': '*/*'}
        getData = {'subjectName': '数学'}
        r = requests.get(self.base_url, headers=headers, params=getData)
        self.result = r.json()
        self.assertEqual(self.result['status'], 1, 'getPressList Error')
        self.assertTrue(len(self.result['data']) > 1, 'getPressList data Error')


# 获取用户版本信息接口
class GetUserPressInfo(unittest.TestCase):
    def setUp(self):
        self.base_url = HOST_BOSS + '/userPress/info'
        CreateTestData.pre_GetUserPressInfo(Data.USER_ID)

    def tearDown(self):
        print(self.result)

    def test_getPressList_success(self):
        headers = {'Accept': '*/*'}
        getData = {'userId': Data.USER_ID, 'gradeId': 9}
        r = requests.get(self.base_url, headers=headers, params=getData)
        self.result = r.json()
        self.assertEqual(self.result['status'], 1, 'GetUserPressInfo Error')
        data = self.result['data']
        for item in data:
            if item['subject'] == '语文':
                press_to_check = item['press']
        self.assertEqual(press_to_check, '北京师范大学出版社', 'GetUserPressInfo data Error')


# 修改版本信息接口
class UpdateUserPressInfo(unittest.TestCase):
    def setUp(self):
        self.base_url = HOST_BOSS + '/userPress/update'

    def tearDown(self):
        print(self.result)

    def test_getPressList_success(self):
        headers = {'Accept': '*/*', 'Content-Type': 'application/x-www-form-urlencoded'}
        postData = {'userId': Data.USER_ID,
                    'chemistry': '山东教育出版社',
                    'chinese': '江苏教育出版社',
                    'biology': '人民教育出版社',
                    'geography': '人民教育出版社',
                    'physics': '人民教育出版社',
                    'english': '外语教学与研究出版社',
                    'political': '人民教育出版社',
                    'math': '江苏科学技术出版社',
                    'history': '人民教育出版社'
                    }
        r = requests.post(self.base_url, headers=headers, data=postData)
        self.result = r.json()
        self.assertEqual(self.result['status'], 1, 'UpdateUserPressInfo Error')
        where = {'user_id': Data.USER_ID,
                 'chemistry': '山东教育出版社',
                 'chinese': '江苏教育出版社',
                 'biology': '人民教育出版社',
                 'geography': '人民教育出版社',
                 'physics': '人民教育出版社',
                 'english': '外语教学与研究出版社',
                 'political': '人民教育出版社',
                 'math': '江苏科学技术出版社',
                 'history': '人民教育出版社'
                 }
        self.assertEqual(db_test.select_('acornuser.user_press', where), 1, 'UpdateUserPressInfo data Error')