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

avivajpeyi / pywavelet / 21430410834

28 Jan 2026 08:14AM UTC coverage: 75.545% (+6.5%) from 69.075%
21430410834

push

github

avivajpeyi
fix: update offs calculation in transform_wavelet_freq_helper to prevent overwriting center term

192 of 308 branches covered (62.34%)

Branch coverage included in aggregate %.

3 of 3 new or added lines in 1 file covered. (100.0%)

164 existing lines in 16 files now uncovered.

1229 of 1573 relevant lines covered (78.13%)

0.78 hits per line

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

61.54
/src/pywavelet/types/common.py
1
from typing import Callable, Tuple, Union
1✔
2

3
from ..backend import complex_dtype, float_dtype, xp
1✔
4
from ..logger import logger
1✔
5

6

7
def _len_check(d):
1✔
8
    if not xp.log2(len(d)).is_integer():
×
9
        logger.warning(f"Data length {len(d)} is suggested to be a power of 2")
×
10

11

12
def is_documented_by(original: Callable):
1✔
13
    def wrapper(target):
1✔
14
        target.__doc__ = original.__doc__
1✔
15
        return target
1✔
16

17
    return wrapper
1✔
18

19

20
def fmt_time(seconds: float, units=False) -> Union[str, Tuple[str, str]]:
1✔
21
    """Returns formatted time and units [ms, s, min, hr, day]"""
22
    t, u = "", ""
1✔
23
    if seconds < 1e-3:
1✔
24
        t, u = f"{seconds * 1e6:.2f}", "µs"
1✔
25
    elif seconds < 1:
1!
26
        t, u = f"{seconds * 1e3:.2f}", "ms"
×
27
    elif seconds < 60:
1!
UNCOV
28
        t, u = f"{seconds:.2f}", "s"
×
29
    elif seconds < 60 * 60:
1!
30
        t, u = f"{seconds / 60:.2f}", "min"
1✔
31
    elif seconds < 60 * 60 * 24:
×
32
        t, u = f"{seconds / 3600:.2f}", "hr"
×
33
    else:
34
        t, u = f"{seconds / 86400:.2f}", "day"
×
35

36
    if units:
1✔
37
        return t, u
1✔
38
    return t
1✔
39

40

41
def fmt_timerange(trange):
1✔
42
    t0 = fmt_time(trange[0])
1✔
43
    tend, units = fmt_time(trange[1], units=True)
1✔
44
    return f"[{t0}, {tend}] {units}"
1✔
45

46

47
def fmt_pow2(n: float) -> str:
1✔
48
    pow2 = xp.log2(n)
×
49
    if pow2.is_integer():
×
50
        return f"2^{int(pow2)}"
×
51
    return f"{n:,}"
×
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