def test_set_nonacd_call_status(self): self.innerdata.xod_status = {'agents': {str(AGENT_ID): {}}} call_status = AgentCallStatus(direction=CallDirection.incoming, is_internal=False) self.agent_dao.set_nonacd_call_status(AGENT_ID, call_status) result = self.innerdata.xod_status['agents'][str( AGENT_ID)]['nonacd_call_status'] self.assertEquals(call_status, result)
def test_on_call_nonacd(self): self.innerdata.xod_status = {'agents': {str(AGENT_ID): {}}} call_status = AgentCallStatus(direction=CallDirection.incoming, is_internal=False) self.agent_dao.set_nonacd_call_status(AGENT_ID, call_status) result = self.agent_dao.on_call_nonacd(AGENT_ID) self.assertEquals(result, True) self.agent_dao.set_nonacd_call_status(AGENT_ID, None) result = self.agent_dao.on_call_nonacd(AGENT_ID) self.assertEquals(result, False)
def test_device_in_use_outgoing_internal(self): given_direction = CallDirection.outgoing given_is_internal = True expected_call_status = AgentCallStatus(direction=given_direction, is_internal=given_is_internal) self.agent_status_manager.device_in_use(AGENT_ID, given_direction, given_is_internal) dao.agent.set_nonacd_call_status.assert_called_once_with( AGENT_ID, expected_call_status) self.agent_availability_computer.compute.assert_called_once_with( AGENT_ID)
def test_nonacd_call_status(self): call_status = AgentCallStatus(direction=CallDirection.incoming, is_internal=False) expected_result = call_status self.innerdata.xod_status = { 'agents': { str(AGENT_ID): { 'nonacd_call_status': call_status, } } } result = self.agent_dao.nonacd_call_status(AGENT_ID) self.assertEquals(expected_result, result)
def device_in_use(self, agent_id, direction, is_internal): call_status = AgentCallStatus(direction=direction, is_internal=is_internal) dao.agent.set_nonacd_call_status(agent_id, call_status) self._agent_availability_computer.compute(agent_id)