summaryrefslogtreecommitdiffstats
path: root/tests/duration/test_behavior.py
blob: 2442534a23efda88757647ecb0c8e75d3d9b04ac (plain)
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
from __future__ import annotations

import pickle

from copy import deepcopy
from datetime import timedelta

import pendulum

from tests.conftest import assert_duration


def test_pickle() -> None:
    it = pendulum.duration(days=3, seconds=2456, microseconds=123456)
    s = pickle.dumps(it)
    it2 = pickle.loads(s)

    assert it == it2


def test_comparison_to_timedelta() -> None:
    duration = pendulum.duration(days=3)

    assert duration < timedelta(days=4)


def test_deepcopy() -> None:
    duration = pendulum.duration(months=1)
    copied_duration = deepcopy(duration)

    assert copied_duration == duration
    assert_duration(copied_duration, months=1)