1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- # -*- coding: utf-8 -*-
- # !/usr/bin/env python
- import datetime
- from apps.web.constant import Const
- from apps.web.eventer.sijiang import ChargingSiJiangWorkEvent, builder, SI_JIANG_EVENT_CODE
- from apps.web.core.adapter.sijiang import ChargingSiJiangBox
- from apps.web.device.models import Device
- def get_raw_dict(device):
- return {u'IMEI': device['devNo'], u'timestamp': 1554702873, u'cmd': 100, u'data': u'EE06050100080208'}
- def test_charge_complete(device):
- startTime = (datetime.datetime.now() - datetime.timedelta(minutes=3)).strftime(Const.DATETIME_FMT)
- port = 0
- Device.update_dev_control_cache(device['devNo'],
- {
- str(port): {
- 'status': Const.DEV_WORK_STATUS_WORKING,
- 'needTime': 3 * 60,
- 'isStart': True, 'refunded': False, 'openId': None,
- 'startTime': startTime
- }
- })
- smartBox = ChargingSiJiangBox(device)
- infoDict = {
- 'status': Const.DEV_WORK_STATUS_IDLE,
- 'cmdCode': SI_JIANG_EVENT_CODE.CHARGE_FINISHED,
- 'port': 1,
- 'leftTime': 0,
- 'reason': 'desc'
- }
- eventer = ChargingSiJiangWorkEvent(device, infoDict, smartBox)
- eventer.do()
|