def setUp(self): super(AuditoriaDeGestionTests, self).setUp() self.supervisor = self.crear_supervisor_profile() self.client.login(username=self.supervisor.user.username, password=PASSWORD) self.campana = CampanaFactory.create(estado=Campana.ESTADO_ACTIVA) self.campana.supervisors.add(self.supervisor.user) self.opcion_calificacion_gestion = OpcionCalificacionFactory.create( campana=self.campana, tipo=OpcionCalificacion.GESTION) self.opcion_calificacion_no_gestion = OpcionCalificacionFactory.create( campana=self.campana, tipo=OpcionCalificacion.NO_ACCION) self.contacto_gestion = ContactoFactory.create() self.campana.bd_contacto.contactos.add(self.contacto_gestion) self.contacto_no_gestion = ContactoFactory.create() self.campana.bd_contacto.contactos.add(self.contacto_no_gestion) self.agente = self.crear_agente_profile() self.calificacion_gestion = CalificacionClienteFactory( opcion_calificacion=self.opcion_calificacion_gestion, agente=self.agente, contacto=self.contacto_gestion) self.calificacion_no_gestion = CalificacionClienteFactory( opcion_calificacion=self.opcion_calificacion_no_gestion, agente=self.agente, contacto=self.contacto_no_gestion)
def setUp(self): self.agente_1 = self.crear_agente_profile() self.agente_2 = self.crear_agente_profile() self.supervisor = self.crear_supervisor_profile() self.campana_preview = CampanaFactory.create( type=Campana.TYPE_PREVIEW, tiempo_desconexion=2, estado=Campana.ESTADO_ACTIVA) QueueFactory.create(campana=self.campana_preview) self._hacer_miembro(self.agente_1, self.campana_preview) self._hacer_miembro(self.agente_2, self.campana_preview) self.contacto_1 = ContactoFactory.create(bd_contacto=self.campana_preview.bd_contacto) self.contacto_2 = ContactoFactory.create(bd_contacto=self.campana_preview.bd_contacto) self.campana_preview.establecer_valores_iniciales_agente_contacto(False, False) self.client.login(username=self.agente_1.user.username, password=PASSWORD)
def setUp(self): super(CalificacionTests, self).setUp() self.agente_1 = self.crear_agente_profile() self.agente_2 = self.crear_agente_profile() self.agente_3 = self.crear_agente_profile() self.supervisor = self.crear_supervisor_profile() self.campana = CampanaFactory.create(estado=Campana.ESTADO_ACTIVA, type=Campana.TYPE_MANUAL) self.campana.supervisors.add(self.supervisor.user) self.nombre_calificacion_agenda = NombreCalificacion.objects.get( nombre=settings.CALIFICACION_REAGENDA) self.opcion_calificacion_agenda = OpcionCalificacionFactory.create( campana=self.campana, nombre=self.nombre_calificacion_agenda.nombre, tipo=OpcionCalificacion.AGENDA) self.contacto_1 = ContactoFactory.create() self.campana.bd_contacto.contactos.add(self.contacto_1) self.contacto_2 = ContactoFactory.create() self.campana.bd_contacto.contactos.add(self.contacto_2) self.calificacion_1 = CalificacionClienteFactory( opcion_calificacion=self.opcion_calificacion_agenda, agente=self.agente_1, contacto=self.contacto_1) self.agenda_1 = AgendaContactoFactory( agente=self.agente_1, contacto=self.contacto_1, campana=self.campana, tipo_agenda=AgendaContacto.TYPE_PERSONAL) self.calificacion_2 = CalificacionClienteFactory( opcion_calificacion=self.opcion_calificacion_agenda, agente=self.agente_2, contacto=self.contacto_2) self.agenda_2 = AgendaContactoFactory( agente=self.agente_2, contacto=self.contacto_2, campana=self.campana, tipo_agenda=AgendaContacto.TYPE_PERSONAL) self.queue = QueueFactory.create(campana=self.campana) QueueMemberFactory.create(member=self.agente_1, queue_name=self.queue) QueueMemberFactory.create(member=self.agente_2, queue_name=self.queue) self.client.login(username=self.supervisor.user.username, password=PASSWORD)
def setUp(self): super(CalificacionTests, self).setUp() self.agente_profile = self.crear_agente_profile() self.usuario_agente = self.agente_profile.user self.campana = CampanaFactory.create() self.nombre_opcion_gestion = NombreCalificacionFactory.create() self.nombre_calificacion_agenda = NombreCalificacion.objects.get( nombre=settings.CALIFICACION_REAGENDA) self.formulario = FormularioFactory() self.campo_formulario = FieldFormularioFactory(formulario=self.formulario) self.opcion_calificacion_gestion = OpcionCalificacionFactory.create( campana=self.campana, nombre=self.nombre_opcion_gestion.nombre, tipo=OpcionCalificacion.GESTION, formulario=self.formulario) self.opcion_calificacion_agenda = OpcionCalificacionFactory.create( campana=self.campana, nombre=self.nombre_calificacion_agenda.nombre, tipo=OpcionCalificacion.AGENDA) self.opcion_calificacion_camp_manual = OpcionCalificacionFactory.create( campana=self.campana, nombre=self.nombre_opcion_gestion.nombre) self.opcion_calificacion_no_accion = OpcionCalificacionFactory.create( campana=self.campana, tipo=OpcionCalificacion.NO_ACCION) self.contacto = ContactoFactory.create() self.campana.bd_contacto.contactos.add(self.contacto) self.queue = QueueFactory.create(campana=self.campana) self.calificacion_cliente = CalificacionClienteFactory( opcion_calificacion=self.opcion_calificacion_camp_manual, agente=self.agente_profile, contacto=self.contacto) QueueMemberFactory.create(member=self.agente_profile, queue_name=self.queue) self.client.login(username=self.usuario_agente.username, password=PASSWORD)
def _agregar_campana_y_contacto(self, agente_profile, tipo_campana): campana = CampanaFactory.create(type=tipo_campana, tiempo_desconexion=3, estado=Campana.ESTADO_ACTIVA) self._hacer_miembro(agente_profile, campana) contacto = ContactoFactory.create(bd_contacto=campana.bd_contacto) return campana, contacto
def setUp(self): super(ReglaIncidenciaPorCalificacionTests, self).setUp() self.admin = self.crear_administrador() self.client.login(username=self.admin.username, password=PASSWORD) self.formulario = FormularioFactory() self.campo_formulario = FieldFormularioFactory( formulario=self.formulario) self.campana = CampanaFactory.create(type=Campana.TYPE_DIALER) self.nombre_opcion_1 = NombreCalificacionFactory.create() self.opcion_calificacion_1 = OpcionCalificacionFactory.create( campana=self.campana, nombre=self.nombre_opcion_1.nombre, tipo=OpcionCalificacion.GESTION, formulario=self.formulario) self.campana.opciones_calificacion.add(self.opcion_calificacion_1) self.nombre_opcion_2 = NombreCalificacionFactory.create() self.opcion_calificacion_2 = OpcionCalificacionFactory.create( campana=self.campana, nombre=self.nombre_opcion_2.nombre, tipo=OpcionCalificacion.NO_ACCION) self.campana.opciones_calificacion.add(self.opcion_calificacion_2) self.contacto = ContactoFactory.create() self.campana.bd_contacto.contactos.add(self.contacto) self.campana_extra = CampanaFactory.create(type=Campana.TYPE_DIALER) self.nombre_opcion_extra = NombreCalificacionFactory.create() self.opcion_calificacion_extra = OpcionCalificacionFactory.create( campana=self.campana_extra, nombre=self.nombre_opcion_extra.nombre, tipo=OpcionCalificacion.NO_ACCION) self.campana_extra.opciones_calificacion.add( self.opcion_calificacion_extra)
def no_puede_calificar_si_no_esta_asignado(self): campana2 = CampanaFactory.create() contacto2 = ContactoFactory.create(bd_contacto=campana2.bd_contacto) url = reverse('calificacion_formulario_update_or_create', kwargs={'pk_campana': campana2.pk, 'pk_contacto': contacto2.pk}) response = self.client.get(url, follow=True) self.assertContains(response, _("No tiene permiso para calificar llamadas de esa campaña."))
def _setUp_campana_dialer(self): self.campana_dialer = CampanaFactory.create(type=Campana.TYPE_DIALER) self.campana_dialer.opciones_calificacion.add(self.opcion_calificacion_gestion) self.campana_dialer.opciones_calificacion.add(self.opcion_calificacion_agenda) self.contacto_dialer = ContactoFactory.create() self.campana_dialer.bd_contacto.contactos.add(self.contacto_dialer) self.queue_dialer = QueueFactory.create(campana=self.campana_dialer) QueueMemberFactory.create(member=self.agente_profile, queue_name=self.queue_dialer)
def setUp(self): super(StatusCalificacionLlamadaTest, self).setUp() user = self.crear_user_agente(username='******') self.agente = self.crear_agente_profile(user) self.agente.grupo.obligar_calificacion = True self.client.login(username=user.username, password=PASSWORD) self.campana = CampanaFactory.create() QueueFactory(campana=self.campana) QueueMemberFactory.create(member=self.agente, queue_name=self.campana.queue_campana) self.contacto = ContactoFactory.create() self.campana.bd_contacto.contactos.add(self.contacto)
def test_calificacion_cliente_modificacion_gestion_por_no_accion(self, post): contacto_califica = ContactoFactory.create() self.campana.bd_contacto.contactos.add(contacto_califica) calificacion = CalificacionClienteFactory( opcion_calificacion=self.opcion_calificacion_gestion, agente=self.agente_profile, contacto=contacto_califica) RespuestaFormularioGestionFactory(calificacion=calificacion) # Se modifica la calificacion por una de no accion url_calificacion = reverse('calificacion_formulario_update_or_create', kwargs={'pk_campana': self.campana.pk, 'pk_contacto': contacto_califica.pk}) post_data_calificacion = self._obtener_post_data_calificacion_cliente( contacto=contacto_califica) post_data_calificacion['opcion_calificacion'] = self.opcion_calificacion_no_accion.pk self.client.post(url_calificacion, post_data_calificacion, follow=True) self.assertIsNone( CalificacionCliente.objects.get(opcion_calificacion__campana=self.campana, contacto_id=contacto_califica.id).get_venta())
def setUp(self): super(LimitarAgendasPersonalesTests, self).setUp() self.grupo1 = GrupoFactory(nombre='grupo1', limitar_agendas_personales=True, cantidad_agendas_personales=1) self.grupo2 = GrupoFactory(nombre='grupo2', limitar_agendas_personales=True, cantidad_agendas_personales=0) self.grupo3 = GrupoFactory(nombre='grupo3', limitar_agendas_personales=False, cantidad_agendas_personales=0) self.agente_1 = self.crear_agente_profile() self.agente_1.grupo = self.grupo1 self.agente_1.save() self.agente_2 = self.crear_agente_profile() self.agente_2.grupo = self.grupo2 self.agente_2.save() self.agente_3 = self.crear_agente_profile() self.agente_3.grupo = self.grupo3 self.agente_3.save() self.contacto = ContactoFactory.create() self.campana_preview = CampanaFactory.create(estado=Campana.ESTADO_ACTIVA, type=Campana.TYPE_PREVIEW) self.campana_dialer = CampanaFactory.create(estado=Campana.ESTADO_ACTIVA, type=Campana.TYPE_DIALER) self.nombre_calificacion_agenda = NombreCalificacion.objects.get( nombre=settings.CALIFICACION_REAGENDA) self.opcion_calificacion_agenda_campana_preview = OpcionCalificacionFactory.create( campana=self.campana_preview, nombre=self.nombre_calificacion_agenda.nombre, tipo=OpcionCalificacion.AGENDA) self.opcion_calificacion_agenda_campana_dialer = OpcionCalificacionFactory.create( campana=self.campana_dialer, nombre=self.nombre_calificacion_agenda.nombre, tipo=OpcionCalificacion.AGENDA)
def test_no_permite_auditar_en_campanas_no_asignadas(self): campana_no_asignada = CampanaFactory.create( estado=Campana.ESTADO_ACTIVA) nombre_opcion_no_asignada = NombreCalificacionFactory.create() opcion_calificacion_no_asignada = OpcionCalificacionFactory.create( campana=campana_no_asignada, nombre=nombre_opcion_no_asignada.nombre) contacto_no_asignada = ContactoFactory.create() campana_no_asignada.bd_contacto.contactos.add(contacto_no_asignada) calificacion_no_asignada = CalificacionClienteFactory( opcion_calificacion=opcion_calificacion_no_asignada, agente=self.agente, contacto=contacto_no_asignada) url = reverse('auditar_calificacion_cliente', args=(calificacion_no_asignada.id, )) response = self.client.get(url, follow=True) self.assertEqual(response.status_code, 200) self.assertRedirects(response, reverse('buscar_auditorias_gestion', args=(1, ))) self.assertContains( response, _("No tiene permiso para auditar calificaciones de esta campaña."))