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

iplweb / bpp / da7dd963-c5b3-44a5-91d8-08db9f55e4f1

11 Aug 2025 09:44AM UTC coverage: 46.068% (-0.6%) from 46.671%
da7dd963-c5b3-44a5-91d8-08db9f55e4f1

push

circleci

mpasternak
Merge branch 'release/v202508.1184'

164 of 864 new or added lines in 29 files covered. (18.98%)

3127 existing lines in 197 files now uncovered.

17450 of 37879 relevant lines covered (46.07%)

1.18 hits per line

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

52.94
src/tee/admin.py
1
from tee.models import Log
3✔
2
from tee.utils import last_n_lines
3✔
3

4
from django.contrib import admin
3✔
5

6
from django.utils.safestring import mark_safe
3✔
7

8

9
@admin.register(Log)
3✔
10
class LogAdmin(admin.ModelAdmin):
3✔
11
    list_display = [
3✔
12
        "cmd_name",
13
        "started_on",
14
        "finished_on",
15
        "finished_successfully",
16
        "last_5_lines",
17
    ]
18

19
    list_per_page = 10
3✔
20

21
    readonly_fields = [
3✔
22
        "started_on",
23
        "finished_on",
24
        "finished_successfully",
25
        "command_name",
26
        "args",
27
        "stdout",
28
        "stderr",
29
        "traceback",
30
    ]
31

32
    date_hierarchy = "started_on"
3✔
33

34
    def has_add_permission(self, request):
3✔
UNCOV
35
        return False
2✔
36

37
    def has_change_permission(self, request, obj=None):
3✔
UNCOV
38
        return False
2✔
39

40
    def cmd_name(self, obj):
3✔
41
        args = ""
×
42
        if obj.args:
×
43
            args = f" {' '.join(obj.args)}"
×
44
        return f"{obj.command_name}" + args
×
45

46
    def finished_successfully(self, obj: Log):
3✔
47
        if obj.exit_code == 0:
×
48
            return True
×
49
        return False
×
50

51
    def last_5_lines(self, obj):
3✔
52
        s = obj.stderr
×
53

54
        if obj.traceback:
×
55
            s = obj.traceback
×
56

57
        if not s:
×
58
            s = obj.stdout
×
59

60
        r = last_n_lines(s, nlines=5)
×
61
        if r is None:
×
62
            return
×
63
        return mark_safe(f"<pre>{r}</pre>")
×
64

65
    last_5_lines.short_description = "Results"
3✔
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