#!/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 import uuid db_test = DB() #添加子账户 class AddSubAccount(unittest.TestCase): def setUp(self): self.base_url = HOST_BOSS + '/childUser/addChildUser' CreateTestData.pre_AddSubAccount(Data.PARENT_ID) def tearDown(self): print(self.result) def test_addSubAccount_success(self): headers = {'Content-Type': 'application/x-www-form-urlencoded', 'Accept': '*/*'} postData = {'parentId': Data.PARENT_ID, 'image': Data.SUB_ACC_IMAGE, 'name': '测试sub', 'gradeId': '6', 'schoolId': Data.SUB_ACC_SCHOOL_ID_1, 'regionId': Data.SUB_ACC_REGION_ID_1, 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND, 'regionName': Data.SUB_ACC_REGION_NAME_1 } r = requests.post(self.base_url, headers=headers, data=postData) self.result = r.json() self.assertEqual(db_test.select_('acornuser.child_user', {'parent_id': Data.PARENT_ID}), 1, 'addSubAccount Error') self.assertEqual(self.result['status'], 1, 'addSubAccount Error') #查找子账户信息 class GetSubAccount(unittest.TestCase): def setUp(self): self.base_url = HOST_BOSS + '/childUser/info' self.subAccount_1 = str(uuid.uuid4()).replace('-', '') self.subAccount_2 = str(uuid.uuid4()).replace('-', '') CreateTestData.pre_subAccount(Data.PARENT_ID, self.subAccount_1, 0) CreateTestData.pre_subAccount(Data.PARENT_ID, self.subAccount_2, 1) def tearDown(self): print(self.result) def test_getSubAccount_success(self): headers = {'Accept': '*/*'} getData = {'userId': Data.PARENT_ID, 'deviceNumber':Data.DEVICE_NUMBER_CUS_BIND} r = requests.get(self.base_url, headers=headers, params=getData) self.result = r.json() self.assertEqual(self.result['status'], 1, 'getSubAccount Error') self.assertTrue(len(self.result['data']) > 1, 'getSubAccount data Error') #删除子账户 class DelSubAccount(unittest.TestCase): def setUp(self): self.base_url = HOST_BOSS + '/childUser/delete' self.subAccount = str(uuid.uuid4()).replace('-', '') CreateTestData.pre_subAccount(Data.PARENT_ID, self.subAccount, 0) def tearDown(self): print(self.result) def test_delSubAccount_success(self): headers = {'Accept': '*/*'} getData = {'subAccountId': self.subAccount} r = requests.get(self.base_url, headers=headers, params=getData) self.result = r.json() self.assertEqual(db_test.select_('acornuser.child_user', {'subAccountId': self.subAccount}), 0, 'delSubAccount Error') self.assertEqual(self.result['status'], 1, 'delSubAccount ERROR') #切换账户 class SwitchAccounts(unittest.TestCase): def setUp(self): self.base_url = HOST_BOSS + '/childUser/update' self.subAccount = str(uuid.uuid4()).replace('-', '') CreateTestData.pre_subAccount(Data.PARENT_ID, self.subAccount, 0) def tearDown(self): print(self.result) def test_swichToSubAccount_success(self): headers = {'Accept': '*/*'} getData = {'subAccountId': self.subAccount, 'userId': Data.PARENT_ID, 'deviceNumber' : Data.DEVICE_NUMBER_CUS_BIND, 'type': 2} r = requests.get(self.base_url, headers=headers, params=getData) self.result = r.json() where_data = {'parent_id': Data.PARENT_ID,'subAccountId': self.subAccount, 'status':1} self.assertEqual(db_test.select_('acornuser.child_user', where_data), 1, 'swichToSubAccount Error') self.assertEqual(self.result['status'], 1, 'swichToSubAccount ERROR') def test_swichToParentAccount_success(self): headers = {'Accept': '*/*'} getData = {'userId': Data.PARENT_ID, 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND, 'type': 1} r = requests.get(self.base_url, headers=headers, params=getData) self.result = r.json() where_data = {'userId': Data.PARENT_ID, 'deviceNumber': Data.DEVICE_NUMBER_CUS_BIND, 'status': 1} self.assertEqual(db_test.select_('acornuser.acorn_user_status', where_data), 1, 'swichToParentAccount Error') self.assertEqual(self.result['status'], 1, 'swichToParentAccount ERROR')