def test_template_exists(Environment_m, FileSystemLoader_m):
    loader = FileSystemLoader_m.return_value
    loader.list_templates.return_value = [
        'c/t1/template.j2', 'c/t2/template.j2'
    ]
    manager = TemplateManager('/fake')
    assert manager.template_exists('c/t1')
    assert manager.template_exists('c/t1/template.j2')
    assert not manager.template_exists('none')
Example #2
0
 def validate_templates(self, value):
     manager = TemplateManager(settings.RAFEE_REPO_DIR)
     bad_template_names = []
     for template_name in value.split(","):
         if not manager.template_exists(template_name):
             bad_template_names.append(template_name)
     if len(bad_template_names) > 0:
         raise serializers.ValidationError(TEMPLATES_NOT_FOUND.format(bad_template_names))
     return value
Example #3
0
    def post(self, request):
        self.validate(request)
        template_name = request.data.get('template_name')
        manager = TemplateManager(settings.RAFEE_REPO_DIR)
        if not manager.template_exists(template_name):
            return Response(
                {'detail': TEMPLATE_NOT_FOUND},
                status=status.HTTP_500_INTERNAL_SERVER_ERROR,
            )

        task = render.delay(template_name)
        return Response({'task': task.task_id})