Ignore:
Timestamp:
20 Sep 2016, 08:33:44 (8 years ago)
Author:
Henrik Bettermann
Message:

Add report purge button.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • main/waeup.kofa/trunk/src/waeup/kofa/students/reports/tests/test_student_statistics.py

    r12897 r14169  
    11# Tests for student related reports
    22import os
     3from datetime import datetime, timedelta
    34from zc.async.testing import wait_for_result
    45from zope.interface.verify import verifyClass, verifyObject
    56from zope.component import getUtility
    6 from waeup.kofa.interfaces import IJobManager
     7from waeup.kofa.interfaces import IJobManager, IKofaUtils
    78from waeup.kofa.students.reports.student_statistics import (
    89    get_student_stats, StudentStatisticsReport, IStudentStatisticsReport)
     
    207208            )
    208209        return
     210
     211    def test_report_purge(self):
     212        self.trigger_report_creation()
     213        job_id = self.wait_for_report_job_completed()
     214        self.browser.open('http://localhost/app/reports')
     215        self.browser.getControl("Purge").click()
     216        self.assertTrue('0 report(s) purged' in self.browser.contents)
     217        job_id, gen_name, user = self.app['reports'].get_running_report_jobs(user_id=None)[0]
     218        job = getUtility(IJobManager).get(job_id)
     219        tz = getUtility(IKofaUtils).tzinfo
     220        delta = timedelta(weeks=5)
     221        setattr(job, '_begin_after', datetime.now(tz) - delta)
     222        self.browser.getControl("Purge").click()
     223        self.assertTrue('1 report(s) purged' in self.browser.contents)
     224        logfile = os.path.join(
     225            self.app['datacenter'].storage, 'logs', 'main.log')
     226        logcontent = open(logfile).read()
     227        self.assertTrue(
     228            'INFO - zope.mgr - browser.reports.ReportsContainerPage - '
     229            'report %s purged' % job_id in logcontent
     230            )
     231        return
Note: See TracChangeset for help on using the changeset viewer.