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

iplweb / bpp / 69252c38-21b1-49f8-98a5-a21d59416a66

17 Feb 2025 01:27AM UTC coverage: 47.492% (+0.7%) from 46.838%
69252c38-21b1-49f8-98a5-a21d59416a66

push

circleci

mpasternak
Merge branch 'release/v202502.1156'

2 of 8 new or added lines in 3 files covered. (25.0%)

2233 existing lines in 114 files now uncovered.

16671 of 35103 relevant lines covered (47.49%)

1.2 hits per line

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

27.71
src/import_dyscyplin/tests/test_models.py
UNCOV
1
import os
1✔
2

UNCOV
3
import pytest
1✔
UNCOV
4
from django.core.files.base import ContentFile
1✔
UNCOV
5
from django.db import transaction
1✔
6

UNCOV
7
from bpp.models import Autor_Dyscyplina, Dyscyplina_Naukowa
1✔
UNCOV
8
from import_dyscyplin.models import (
1✔
9
    Import_Dyscyplin,
10
    Import_Dyscyplin_Row,
11
    Kolumna,
12
    guess_rodzaj,
13
)
14

15

UNCOV
16
def test_guess_rodzaj():
1✔
17
    assert guess_rodzaj("nazwisko") == Kolumna.RODZAJ.NAZWISKO
×
18
    assert guess_rodzaj("kopara") == Kolumna.RODZAJ.POMIJAJ
×
19
    assert guess_rodzaj("lp") == Kolumna.RODZAJ.POMIJAJ
×
20

21

UNCOV
22
def test_Import_Dyscyplin_post_delete_handler(
1✔
23
    test1_xlsx, normal_django_user, transactional_db
24
):
25
    path = None
×
26
    with transaction.atomic():
×
27
        i = Import_Dyscyplin.objects.create(
×
28
            owner=normal_django_user,
29
        )
30

31
        i.plik.save("test1.xls", ContentFile(open(test1_xlsx, "rb").read()))
×
32
        path = i.plik.path
×
33
        i.delete()
×
34

35
    assert not os.path.exists(path)
×
36

37

UNCOV
38
@pytest.fixture
1✔
UNCOV
39
def testowe_dyscypliny():
1✔
40
    Dyscyplina_Naukowa.objects.create(nazwa="Testowa", kod="3.2", widoczna=False)
×
41

42
    Dyscyplina_Naukowa.objects.create(nazwa="Jakaś", kod="3.2.1", widoczna=False)
×
43

44

UNCOV
45
@pytest.fixture
1✔
UNCOV
46
def id_row_1(import_dyscyplin, autor_jan_nowak):
1✔
47
    return Import_Dyscyplin_Row.objects.create(
×
48
        parent=import_dyscyplin,
49
        row_no=1,
50
        original={},
51
        dyscyplina="Testowa",
52
        kod_dyscypliny="3.2",
53
        subdyscyplina="Jakaś",
54
        kod_subdyscypliny="3.2.1",
55
        autor=autor_jan_nowak,
56
    )
57

58

UNCOV
59
@pytest.fixture
1✔
UNCOV
60
def id_row_2(import_dyscyplin, autor_jan_nowak):
1✔
61
    return Import_Dyscyplin_Row.objects.create(
×
62
        parent=import_dyscyplin,
63
        row_no=1,
64
        original={},
65
        dyscyplina="Testowa",
66
        kod_dyscypliny="3.2",
67
        subdyscyplina=None,
68
        kod_subdyscypliny=None,
69
        autor=autor_jan_nowak,
70
    )
71

72

UNCOV
73
def test_Import_Dyscyplin_integruj_dyscypliny_pusta_baza(import_dyscyplin, id_row_1):
1✔
74
    import_dyscyplin.integruj_dyscypliny()
×
75

76
    assert Dyscyplina_Naukowa.objects.all().count() == 2
×
77
    Dyscyplina_Naukowa.objects.get(nazwa="Testowa")
×
78

79
    for elem in Dyscyplina_Naukowa.objects.all():
×
80
        assert elem.widoczna
×
81

82

UNCOV
83
def test_Import_Dyscyplin_integruj_dyscypliny_ta_sama_nazwa_inny_kod(
1✔
84
    import_dyscyplin, id_row_1
85
):
86
    Dyscyplina_Naukowa.objects.create(nazwa="Testowa", kod="0.0")
×
87

88
    import_dyscyplin.integruj_dyscypliny()
×
89

90
    assert Dyscyplina_Naukowa.objects.all().count() == 1
×
91

92
    id_row_1.refresh_from_db()
×
93
    assert id_row_1.stan == Import_Dyscyplin_Row.STAN.BLEDNY
×
94

95

UNCOV
96
def test_Import_Dyscyplin_integruj_dyscypliny_ta_sama_nazwa_inny_kod_sub(
1✔
97
    import_dyscyplin, id_row_1
98
):
99
    Dyscyplina_Naukowa.objects.create(nazwa="Jakaś", kod="5.3")
×
100

101
    import_dyscyplin.integruj_dyscypliny()
×
102

103
    assert Dyscyplina_Naukowa.objects.all().count() == 2
×
104

105
    id_row_1.refresh_from_db()
×
106
    assert id_row_1.stan == Import_Dyscyplin_Row.STAN.BLEDNY
×
107

108

UNCOV
109
def test_Import_Dyscyplin_integruj_dyscypliny_ukryj_nieuzywane_brak_dyscyplin(
1✔
110
    import_dyscyplin, id_row_1
111
):
112
    import_dyscyplin.integruj_dyscypliny()
×
113
    Autor_Dyscyplina.objects.ukryj_nieuzywane()
×
114
    assert Dyscyplina_Naukowa.objects.all().count() == 2
×
115
    for elem in Dyscyplina_Naukowa.objects.all():
×
116
        assert not elem.widoczna
×
117

118

UNCOV
119
def test_Import_Dyscyplin_integruj_dyscypliny_ukryj_nieuzywane_uzywana_nadrzedna(
1✔
120
    import_dyscyplin, id_row_2, autor_jan_nowak, testowe_dyscypliny
121
):
122
    assert Autor_Dyscyplina.objects.count() == 0
×
123

124
    import_dyscyplin.integruj_dyscypliny()
×
125
    import_dyscyplin._integruj_wiersze()
×
126

127
    assert Autor_Dyscyplina.objects.count() == 1
×
128
    assert Dyscyplina_Naukowa.objects.get(nazwa="Testowa").widoczna
×
129
    assert not Dyscyplina_Naukowa.objects.get(nazwa="Jakaś").widoczna
×
130

131

UNCOV
132
def test_Import_Dyscyplin_integruj_dyscypliny_ukryj_nieuzywane_uzywana_podrzedna(
1✔
133
    import_dyscyplin, id_row_1, testowe_dyscypliny
134
):
135
    assert Autor_Dyscyplina.objects.count() == 0
×
136

137
    import_dyscyplin.integruj_dyscypliny()
×
138
    import_dyscyplin._integruj_wiersze()
×
139
    assert Autor_Dyscyplina.objects.count() == 1
×
140

141
    assert Dyscyplina_Naukowa.objects.get(nazwa="Testowa").widoczna
×
142
    assert Dyscyplina_Naukowa.objects.get(nazwa="Jakaś").widoczna
×
143

144

UNCOV
145
def test_Import_Dyscyplin_sprawdz_czy_poprawne(
1✔
146
    import_dyscyplin, autor_jan_nowak, id_row_1
147
):
148
    id_row_2 = Import_Dyscyplin_Row.objects.create(
×
149
        parent=import_dyscyplin,
150
        row_no=1,
151
        original={},
152
        dyscyplina="Testowa",
153
        kod_dyscypliny="3.2",
154
        subdyscyplina="Jakaś",
155
        kod_subdyscypliny="3.2.1",
156
        autor=autor_jan_nowak,
157
    )
158

159
    import_dyscyplin.integruj_dyscypliny()
×
160

161
    assert id_row_1 in list(import_dyscyplin.poprawne_wiersze_do_integracji())
×
162

163
    import_dyscyplin.sprawdz_czy_poprawne()
×
164

165
    for elem in id_row_1, id_row_2:
×
166
        elem.refresh_from_db()
×
167
        assert elem.stan == Import_Dyscyplin_Row.STAN.BLEDNY
×
168

169

UNCOV
170
def test_Import_Dyscyplin_integruj_dyscypliny_zmiana_dyscypliny(
1✔
171
    autor_jan_nowak, rok, import_dyscyplin, id_row_1, testowe_dyscypliny
172
):
173
    # Zróbmy tak, że autor ma przypisanie za dany rok dla dyscypliny
174
    # innej, niż w wierszu importu. W wierszu id_row_1 idzie 'Testowa'
175
    # jako dyscyplina...
176
    ad = Autor_Dyscyplina.objects.create(
×
177
        autor=autor_jan_nowak,
178
        rok=rok,
179
        dyscyplina_naukowa=Dyscyplina_Naukowa.objects.get(nazwa="Jakaś"),
180
    )
181

182
    import_dyscyplin.integruj_dyscypliny()
×
183
    import_dyscyplin._integruj_wiersze()
×
184

185
    ad.refresh_from_db()
×
186
    assert ad.dyscyplina_naukowa.nazwa == "Testowa"
×
187

188

UNCOV
189
def test_Import_Dyscyplin_Row_serialize_dict():
1✔
190
    x = Import_Dyscyplin_Row(nazwisko="foo", imiona="bar", original={})
×
191
    assert x.serialize_dict()["nazwisko"] == "foo"
×
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