Skip to content

Commit

Permalink
Merge branch 'master' into fix-17-testversion-online
Browse files Browse the repository at this point in the history
  • Loading branch information
eamanu authored Aug 16, 2021
2 parents 31859b7 + f9e4e07 commit 8317339
Show file tree
Hide file tree
Showing 15 changed files with 120 additions and 387 deletions.
32 changes: 32 additions & 0 deletions cron/check_email.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-


def send_reminder(agenda):
failed = 0
user = agenda.created_by
user_info = db(db.auth_user.id == user).select(db.auth_user.first_name, db.auth_user.email).first()
context = dict(user_info=user_info, agenda=agenda)
message = response.render('message.html', context)
while failed < myconf.take('email_var.error'):
if mail.send(to=user_info.email,
subject='Recordatorio de Openlex',
message=message):
return db.commit()
else:
failed = failed + 1


def daily_check_email():
today = request.now
agenda = db(db.agenda.vencimiento != None).select(db.agenda.vencimiento, db.agenda.recordatorio, db.agenda.titulo, db.agenda.created_by)
for agenda_single in agenda:
if agenda_single.recordatorio != 0 :
reminder_id = agenda_single.recordatorio
vencimientos = (agenda_single.vencimiento - today).days
if (vencimientos == int(reminder_id)):
send_reminder(agenda_single)


if __name__ == "__main__":
daily_check_email()
3 changes: 2 additions & 1 deletion cron/crontab
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
#crontab
#crontab
0 0 * * * root *applications/OpenLex_pruebs/cron/check_email.py
2 changes: 1 addition & 1 deletion models/db.py
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ def info(object, spacing=10, collapse=1):

# configure email
mail = auth.settings.mailer
mail.settings.server = 'logging' if request.is_local else myconf.take(
mail.settings.server = myconf.take(
'smtp.server')
mail.settings.sender = myconf.take('smtp.sender')
mail.settings.login = myconf.take('smtp.login')
Expand Down
21 changes: 20 additions & 1 deletion models/db_pydoctor.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
import os
from gluon.contrib.markdown.markdown2 import markdown
from gluon.tools import *

from enum import Enum
import html2text

'''export=dict(csv_with_hidden_cols=(ExporterCSV, 'CSV (columnas ocultas)'),
Expand Down Expand Up @@ -34,6 +34,13 @@
crud = Crud(globals(), db)


class reminder(Enum):
no_alert = 0
one_day_before = 1
two_day_before = 2
three_day_before = 3


# Crear el editor avanzado


Expand Down Expand Up @@ -321,6 +328,18 @@ def agenda_titulo(value, row):
'R': T('Realizada')},
zero=None,
error_message=T('Establezca un estado'))),
Field(
'recordatorio',
length=2,
readable=False,
requires=IS_IN_SET(
{
reminder.no_alert.value: T('Sin alerta'),
reminder.one_day_before.value: T('1 dia antes'),
reminder.two_day_before.value: T('2 dias antes'),
reminder.three_day_before.value: T('3 dias antes')},
zero=T('Elija la frecuencia de la alerta por correo'), #later we should be able to customize the reminder
error_message=T('Establezca la frecuencia correcta'))),
Field(
'titulo',
length=150,
Expand Down
4 changes: 4 additions & 0 deletions private/appconfig.ini
Original file line number Diff line number Diff line change
Expand Up @@ -21,3 +21,7 @@ separator =
; Config for the online test version
[test-version]
update = 7

; email variables
[email_var]
error = 4
4 changes: 2 additions & 2 deletions tests/test_a_registeruser_obligatorio_primerpaso.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ def test_register(page):

# Click text=Registrarse
page.click("text=Registrarse")
# assert page.url == "http://127.0.0.1:8020/OpenLex/default/user/register?_next=/OpenLex/default/index"
assert page.url.endswith("/default/user/register?_next=/OpenLex/default/index")


# Click input[name="first_name"]
Expand Down Expand Up @@ -49,4 +49,4 @@ def test_register(page):

# Click input:has-text("Registrarse")
page.click("input:has-text(\"Registrarse\")")
# assert page.url == "http://127.0.0.1:8020/OpenLex/dashboard/view#"
assert page.url.endswith("/dashboard/view#")
30 changes: 1 addition & 29 deletions tests/test_b_expedientes.py
Original file line number Diff line number Diff line change
@@ -1,34 +1,6 @@
# Este es un testing de la funcionalidad de carga y eliminación de expedientes.

def test_expedientes(page):
# Go to main page
page.goto("http://127.0.0.1:8020/OpenLex/")

# Click text=Log In
page.click("text=Log In")

# Click :nth-match(i, 3)
page.click(":nth-match(i, 3)")
# assert page.url == "http://127.0.0.1:8020/OpenLex/default/user/login?_next=/OpenLex/default/index"

# Click input[name="email"]
page.click("input[name=\"email\"]")

# Fill input[name="email"]
page.fill("input[name=\"email\"]", "[email protected]")
page.press("input[name=\"email\"]", "Tab")

# Click input[name="password"]
page.click("input[name=\"password\"]")

# Fill input[name="password"]
page.fill("input[name=\"password\"]", "openlex1234")
page.press("input[name=\"password\"]", "Tab")

# Click input:has-text("Log In")
page.click("input:has-text(\"Log In\")")
# assert page.url == "http://127.0.0.1:8020/OpenLex/dashboard/view#"

def test_expedientes(page, login):
# Click text=Expedientes
page.click("text=Expedientes")
# assert page.url == "http://127.0.0.1:8020/OpenLex/expedientes/index"
Expand Down
26 changes: 26 additions & 0 deletions tests/test_c_agenda_reminder.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
def test_agenda_issue56_without_reminder(page, login):
# Click text=Agenda
page.click("text=Agenda")
assert page.url.endswith("/agenda/agenda")
# Click a:has-text("Agregar")
page.click("a:has-text(\"Agregar\")")
assert page.url.endswith("/agenda/agenda/new/agenda")
# Click input[name="_autocomplete_expediente_numero_aux"]
page.click("input[name=\"_autocomplete_expediente_numero_aux\"]")
# Fill input[name="_autocomplete_expediente_numero_aux"]
page.fill("input[name=\"_autocomplete_expediente_numero_aux\"]", "11")
# Click input[name="titulo"]
page.click("input[name=\"titulo\"]")
# Fill input[name="titulo"]
page.fill("input[name=\"titulo\"]", "tarea erronea sin recordatorio")
# Click text=Enviar
page.click("text=Enviar")
assert page.url.endswith("/agenda/agenda/new/agenda#")
# Error Message
# Click text=Establezca la frecuencia correcta
page.click("text=Establezca la frecuencia correcta")
# Select S
page.select_option("select[name=\"recordatorio\"]", "0")
# Click text=Enviar
page.click("text=Enviar")
assert page.url.endswith("/agenda/agenda/new/agenda#")
109 changes: 3 additions & 106 deletions tests/test_c_contactos.py
Original file line number Diff line number Diff line change
@@ -1,41 +1,12 @@
# Acá realizaremos un testing de la funcionalidad de carga y eliminación de contactos.

def test_contactos(page):
# Go to main page
page.goto("http://127.0.0.1:8020/OpenLex/")

# Click text=Log In
page.click("text=Log In")

# Click :nth-match(:text("Log In"), 2)
page.click(":nth-match(:text(\"Log In\"), 2)")
# assert page.url == "http://127.0.0.1:8020/OpenLex/default/user/login?_next=/OpenLex/default/index"

# Click input[name="email"]
page.click("input[name=\"email\"]")

# Fill input[name="email"]
page.fill("input[name=\"email\"]", "[email protected]")
page.press("input[name=\"email\"]", "Tab")

# Click input[name="password"]
page.click("input[name=\"password\"]")

# Fill input[name="password"]
page.fill("input[name=\"password\"]", "openlex1234")
page.press("input[name=\"password\"]", "Tab")

# Click input:has-text("Log In")
page.click("input:has-text(\"Log In\")")
# assert page.url == "http://127.0.0.1:8020/OpenLex/dashboard/view#"

def test_contactos(page, login):
# Click text=Contactos
page.click("text=Contactos")
# assert page.url == "http://127.0.0.1:8020/OpenLex/contactos/index"
assert page.url.endswith("/contactos/index")

# Click a:has-text("Agregar")
page.click("a:has-text(\"Agregar\")")
# assert page.url == "http://127.0.0.1:8020/OpenLex/contactos/index/new/persona?_signature=08fbad2cf0e79833b0ba8d2ed92faeeee5c705dd"

# Select F
page.select_option("select[name=\"sexo\"]", "F")
Expand Down Expand Up @@ -99,84 +70,10 @@ def test_contactos(page):
page.fill("input[name=\"matricula\"]", "666777")
page.press("input[name=\"matricula\"]", "Tab")

# Click input[name="domiciliolegal"]
page.click("input[name=\"domiciliolegal\"]")

# Fill input[name="domiciliolegal"]
page.fill("input[name=\"domiciliolegal\"]", "Boulevard del Tux, Ciudad GNU")
page.press("input[name=\"domiciliolegal\"]", "Tab")

# Click input[name="domiciliolegal"]
page.click("input[name=\"domiciliolegal\"]")

# Click input[name="domiciliolegal"]
page.click("input[name=\"domiciliolegal\"]")

# Press ArrowLeft
page.press("input[name=\"domiciliolegal\"]", "ArrowLeft")

# Press ArrowLeft
page.press("input[name=\"domiciliolegal\"]", "ArrowLeft")

# Press ArrowLeft
page.press("input[name=\"domiciliolegal\"]", "ArrowLeft")

# Press ArrowLeft
page.press("input[name=\"domiciliolegal\"]", "ArrowLeft")

# Press ArrowLeft
page.press("input[name=\"domiciliolegal\"]", "ArrowLeft")

# Press ArrowLeft
page.press("input[name=\"domiciliolegal\"]", "ArrowLeft")

# Press ArrowLeft
page.press("input[name=\"domiciliolegal\"]", "ArrowLeft")

# Press ArrowLeft
page.press("input[name=\"domiciliolegal\"]", "ArrowLeft")

# Press ArrowLeft
page.press("input[name=\"domiciliolegal\"]", "ArrowLeft")

# Press ArrowRight
page.press("input[name=\"domiciliolegal\"]", "ArrowRight")

# Press ArrowRight
page.press("input[name=\"domiciliolegal\"]", "ArrowRight")

# Fill input[name="domiciliolegal"]
page.fill("input[name=\"domiciliolegal\"]", "Boulevard del Tux 1992, Ciudad GNU")
page.press("input[name=\"domiciliolegal\"]", "Tab")

# Click text=Enviar
page.click("text=Enviar")
# assert page.url == "http://127.0.0.1:8020/OpenLex/contactos/index?_signature=757a993c643dc478b57b21486e68f722168946fc#"

# Click text=Apellido o Razón Social
page.click("text=Apellido o Razón Social")
# assert page.url == "http://127.0.0.1:8020/OpenLex/contactos/index?order=persona.apellido&_signature=757a993c643dc478b57b21486e68f722168946fc"

# Click text=Nombre
page.click("text=Nombre")
# assert page.url == "http://127.0.0.1:8020/OpenLex/contactos/index?order=persona.nombre&_signature=757a993c643dc478b57b21486e68f722168946fc"

# Click text=Nombre▲
page.click("text=Nombre▲")
# assert page.url == "http://127.0.0.1:8020/OpenLex/contactos/index?order=~persona.nombre&_signature=757a993c643dc478b57b21486e68f722168946fc"

# Click text=Domicilio
page.click("text=Domicilio")
# assert page.url == "http://127.0.0.1:8020/OpenLex/contactos/index?order=persona.domicilio&_signature=757a993c643dc478b57b21486e68f722168946fc"

# Click text=E-Mail
page.click("text=E-Mail")
# assert page.url == "http://127.0.0.1:8020/OpenLex/contactos/index?order=persona.email&_signature=757a993c643dc478b57b21486e68f722168946fc"

# Click text=Teléfono
page.click("text=Teléfono")
# assert page.url == "http://127.0.0.1:8020/OpenLex/contactos/index?order=persona.telefono&_signature=757a993c643dc478b57b21486e68f722168946fc"


# Click text=Vista
page.click("text=Vista")
# assert page.url == "http://127.0.0.1:8020/OpenLex/contactos/index/view/persona/1?order=persona.telefono&_signature=b9ce84649e3cdacb7bd38da86223c5840c41449d"
Expand Down
Loading

0 comments on commit 8317339

Please sign in to comment.