Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions openedx/features/survey_report/application.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
"""
Contains the logic for generating a survey report.
Comment thread
Henrrypg marked this conversation as resolved.
Outdated
"""

def generate_report() -> None:
"""Generate a survey report for all courses in the system."""
Comment thread
Henrrypg marked this conversation as resolved.
Outdated
Empty file.
Empty file.
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
"""
CLI command to generate survey report.
"""

from django.core.management.base import BaseCommand, CommandError
from openedx.features.survey_report.application import generate_report

class Command(BaseCommand):
"""
Command to generate survey report.
"""

help = 'This command will generate survey report.'

def handle(self, *args, **options):
try:
generate_report()
except Exception as error:
raise CommandError('An error has ocurred while report was generating.') from error

self.stdout.write(self.style.SUCCESS('Survey report has been generated successfully.'))
Empty file.
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
"""
Test for generate_report command.
"""

from io import StringIO
from django.core.management import call_command
from django.test import TestCase

class GenerateReportTest(TestCase):
def test_command_output(self):
out = StringIO()
call_command('generate_report', stdout=out)
self.assertIn('Survey report has been generated successfully.', out.getvalue())