~homeworkprod/byceps

ref: a3214d27456b4060727966ca1ad520a92edaa6b2 byceps/testfixtures/snippet.py -rw-r--r-- 1.2 KiB
a3214d27 — Jochen Kupperschmidt Make tourney avatar path depend on party path, but non-configurable besides that 2 years ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
"""
testfixtures.snippet
~~~~~~~~~~~~~~~~~~~~

:Copyright: 2006-2020 Jochen Kupperschmidt
:License: Modified BSD, see LICENSE for details.
"""

from byceps.services.snippet.models.snippet import (
    CurrentVersionAssociation,
    Snippet,
    SnippetVersion,
)
from byceps.services.snippet.transfer.models import Scope, SnippetType


def create_document(scope, name):
    return _create_snippet(scope, name, SnippetType.document)


def create_fragment(scope, name):
    return _create_snippet(scope, name, SnippetType.fragment)


def _create_snippet(scope, name, type_):
    return Snippet(scope, name, type_)


def create_snippet_version(
    snippet,
    creator_id,
    *,
    created_at=None,
    title='',
    head='',
    body='',
    image_url_path=None,
):
    version = SnippetVersion(
        snippet=snippet,
        creator_id=creator_id,
        title=title,
        head=head,
        body=body,
        image_url_path=image_url_path,
    )

    if created_at is not None:
        version.created_at = created_at

    return version


def create_current_version_association(snippet, version):
    return CurrentVersionAssociation(snippet=snippet, version=version)