summaryrefslogtreecommitdiffstats
path: root/tests/datetime/test_naive.py
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2023-01-05 10:38:34 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2023-01-05 10:38:34 +0000
commite3bdad36cc3a1a00c1e6772ca1c1898085ab73e0 (patch)
tree34512072a667ae716fd262e7b37e733e60fe4d89 /tests/datetime/test_naive.py
parentAdding upstream version 2.1.2. (diff)
downloadpendulum-e3bdad36cc3a1a00c1e6772ca1c1898085ab73e0.tar.xz
pendulum-e3bdad36cc3a1a00c1e6772ca1c1898085ab73e0.zip
Adding upstream version 3.0.0~a1.upstream/3.0.0_a1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'tests/datetime/test_naive.py')
-rw-r--r--tests/datetime/test_naive.py78
1 files changed, 78 insertions, 0 deletions
diff --git a/tests/datetime/test_naive.py b/tests/datetime/test_naive.py
new file mode 100644
index 0000000..95bd2d5
--- /dev/null
+++ b/tests/datetime/test_naive.py
@@ -0,0 +1,78 @@
+from __future__ import annotations
+
+import pendulum
+
+from tests.conftest import assert_datetime
+
+
+def test_naive():
+ dt = pendulum.naive(2018, 2, 2, 12, 34, 56, 123456)
+
+ assert_datetime(dt, 2018, 2, 2, 12, 34, 56, 123456)
+ assert dt.tzinfo is None
+ assert dt.timezone is None
+ assert dt.timezone_name is None
+
+
+def test_naive_add():
+ dt = pendulum.naive(2013, 3, 31, 1, 30)
+ new = dt.add(hours=1)
+
+ assert_datetime(new, 2013, 3, 31, 2, 30)
+
+
+def test_naive_subtract():
+ dt = pendulum.naive(2013, 3, 31, 1, 30)
+ new = dt.subtract(hours=1)
+
+ assert_datetime(new, 2013, 3, 31, 0, 30)
+
+
+def test_naive_in_timezone():
+ dt = pendulum.naive(2013, 3, 31, 1, 30)
+ new = dt.in_timezone("Europe/Paris")
+
+ assert_datetime(new, 2013, 3, 31, 1, 30)
+ assert new.timezone_name == "Europe/Paris"
+
+
+def test_naive_in_timezone_dst():
+ dt = pendulum.naive(2013, 3, 31, 2, 30)
+ new = dt.in_timezone("Europe/Paris")
+
+ assert_datetime(new, 2013, 3, 31, 3, 30)
+ assert new.timezone_name == "Europe/Paris"
+
+
+def test_add():
+ dt = pendulum.naive(2013, 3, 31, 2, 30)
+ new = dt.add(days=3)
+
+ assert_datetime(new, 2013, 4, 3, 2, 30)
+
+
+def test_subtract():
+ dt = pendulum.naive(2013, 3, 31, 2, 30)
+ new = dt.subtract(days=3)
+
+ assert_datetime(new, 2013, 3, 28, 2, 30)
+
+
+def test_to_strings():
+ dt = pendulum.naive(2013, 3, 31, 2, 30)
+
+ assert dt.isoformat() == "2013-03-31T02:30:00"
+ assert dt.to_iso8601_string() == "2013-03-31T02:30:00"
+ assert dt.to_rfc3339_string() == "2013-03-31T02:30:00"
+ assert dt.to_atom_string() == "2013-03-31T02:30:00"
+ assert dt.to_cookie_string() == "Sunday, 31-Mar-2013 02:30:00 "
+
+
+def test_naive_method():
+ dt = pendulum.datetime(2018, 2, 2, 12, 34, 56, 123456)
+ dt = dt.naive()
+
+ assert_datetime(dt, 2018, 2, 2, 12, 34, 56, 123456)
+ assert dt.tzinfo is None
+ assert dt.timezone is None
+ assert dt.timezone_name is None