• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

iplweb / bpp / 7cc51f57-696c-4e24-b7c6-e519e63d08ef

20 Aug 2025 07:40PM UTC coverage: 43.324% (+3.6%) from 39.761%
7cc51f57-696c-4e24-b7c6-e519e63d08ef

push

circleci

mpasternak
Merge branch 'release/v202508.1191'

5 of 5 new or added lines in 2 files covered. (100.0%)

1828 existing lines in 117 files now uncovered.

16520 of 38131 relevant lines covered (43.32%)

0.78 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

63.64
src/conftest.py
1
from datetime import timedelta
2✔
2
from uuid import uuid4
2✔
3

4
import pytest
2✔
5
from django.apps import apps
2✔
6
from model_bakery import baker
2✔
7

8
from django.utils import timezone
2✔
9

10
pytest.mark.uruchom_tylko_bez_microsoft_auth = pytest.mark.skipif(
2✔
11
    apps.is_installed("microsoft_auth"),
12
    reason="działa wyłącznie bez django_microsoft_auth. Ta "
13
    "funkcja prawdopodobnie potrzebuje zalogowac do systemu zwykłego "
14
    "użytkownika i nie potrzebuje autoryzacji do niczego więcej. "
15
    "Możesz ją spokojnie przetestować z wyłączonym modułem microsoft_auth",
16
)
17

18

19
@pytest.fixture
2✔
20
def pbn_dyscyplina2(db, pbn_discipline_group):
2✔
21
    from pbn_api.models import Discipline
×
22

23
    return Discipline.objects.get_or_create(
×
24
        parent_group=pbn_discipline_group,
25
        uuid=uuid4(),
26
        code="202",
27
        name="druga dyscyplina",
28
        scientificFieldName="Dziedzina drugich dyscyplin",
29
    )[0]
30

31

32
@pytest.fixture
2✔
33
def pbn_discipline_group(db):
2✔
UNCOV
34
    from pbn_api.models import DisciplineGroup
1✔
35

UNCOV
36
    n = timezone.now().date()
1✔
UNCOV
37
    try:
1✔
UNCOV
38
        return DisciplineGroup.objects.get_or_create(
1✔
39
            validityDateTo=None,
40
            validityDateFrom=n - timedelta(days=7),
41
            defaults=dict(uuid=uuid4()),
42
        )[0]
43
    except DisciplineGroup.MultipleObjectsReturned:
×
44
        return DisciplineGroup.objects.filter(
×
45
            validityDateTo=None,
46
            validityDateFrom=n - timedelta(days=7),
47
        ).first()
48

49

50
@pytest.fixture
2✔
51
def pbn_dyscyplina1(db, pbn_discipline_group):
2✔
UNCOV
52
    from pbn_api.models import Discipline
1✔
53

UNCOV
54
    return Discipline.objects.get_or_create(
1✔
55
        parent_group=pbn_discipline_group,
56
        code="301",
57
        name="memetyka stosowana",
58
        scientificFieldName="Dziedzina memetyk",
59
        defaults=dict(uuid=uuid4()),
60
    )[0]
61

62

63
@pytest.fixture
2✔
64
@pytest.mark.django_db
2✔
65
def zwarte_z_dyscyplinami(
2✔
66
    wydawnictwo_zwarte,
67
    autor_jan_nowak,
68
    autor_jan_kowalski,
69
    jednostka,
70
    dyscyplina1,
71
    dyscyplina2,
72
    charaktery_formalne,
73
    wydawca,
74
    typy_odpowiedzialnosci,
75
    rok,
76
):
77
    from bpp.models import Autor_Dyscyplina, Charakter_Formalny
×
78

79
    # Żeby eksportować oświadczenia, autor musi mieć swój odpowiednik w PBNie:
80
    autor_jan_nowak.pbn_uid = baker.make("pbn_api.Scientist")
×
81
    autor_jan_nowak.save()
×
82

83
    autor_jan_kowalski.pbn_uid = baker.make("pbn_api.Scientist")
×
84
    autor_jan_kowalski.save()
×
85

86
    # Musi miec też przypisania do dyscyplin
87
    Autor_Dyscyplina.objects.create(
×
88
        autor=autor_jan_nowak, dyscyplina_naukowa=dyscyplina1, rok=rok
89
    )
90
    Autor_Dyscyplina.objects.create(
×
91
        autor=autor_jan_kowalski, dyscyplina_naukowa=dyscyplina2, rok=rok
92
    )
93
    wydawnictwo_zwarte.dodaj_autora(
×
94
        autor_jan_nowak, jednostka, dyscyplina_naukowa=dyscyplina1
95
    )
96

97
    wydawnictwo_zwarte.dodaj_autora(
×
98
        autor_jan_kowalski, jednostka, dyscyplina_naukowa=dyscyplina2
99
    )
100

101
    # domyslnie: ksiazka/autorstwo/wydawca spoza wykazu
102
    wydawnictwo_zwarte.punkty_kbn = 20
×
103
    wydawnictwo_zwarte.wydawca = wydawca
×
104
    wydawnictwo_zwarte.charakter_formalny = Charakter_Formalny.objects.get(skrot="KSP")
×
105
    wydawnictwo_zwarte.save()
×
106

107
    return wydawnictwo_zwarte
×
108

109

110
def _dyscyplina_maker(nazwa, kod, dyscyplina_pbn):
2✔
111
    """Produkuje dyscypliny naukowe WRAZ z odpowiednim wpisem tłumacza
112
    dyscyplin"""
UNCOV
113
    from pbn_api.models import TlumaczDyscyplin
1✔
114

UNCOV
115
    from bpp.models import Dyscyplina_Naukowa
1✔
116

UNCOV
117
    d = Dyscyplina_Naukowa.objects.get_or_create(nazwa=nazwa, kod=kod)[0]
1✔
UNCOV
118
    TlumaczDyscyplin.objects.get_or_create(
1✔
119
        dyscyplina_w_bpp=d,
120
        pbn_2017_2021=dyscyplina_pbn,
121
        pbn_2022_2023=dyscyplina_pbn,
122
        pbn_2024_now=dyscyplina_pbn,
123
    )
UNCOV
124
    return d
1✔
125

126

127
@pytest.fixture
2✔
128
def dyscyplina1(db, pbn_dyscyplina1):
2✔
UNCOV
129
    return _dyscyplina_maker(
1✔
130
        nazwa="memetyka stosowana", kod="3.1", dyscyplina_pbn=pbn_dyscyplina1
131
    )
132

133

134
@pytest.fixture
2✔
135
def dyscyplina1_hst(db, pbn_dyscyplina1_hst):
2✔
136
    return _dyscyplina_maker(
×
137
        nazwa="nauka teologiczna", kod="7.1", dyscyplina_pbn=pbn_dyscyplina1_hst
138
    )
139

140

141
@pytest.fixture
2✔
142
def dyscyplina2(db, pbn_dyscyplina2):
2✔
143
    return _dyscyplina_maker(
×
144
        nazwa="druga dyscyplina", kod="2.2", dyscyplina_pbn=pbn_dyscyplina2
145
    )
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc