From b2e401398d71be75c29875d0d18682fa081ade7c Mon Sep 17 00:00:00 2001 From: Edoardo Abati Date: Thu, 16 Apr 2020 00:17:50 +0100 Subject: [PATCH 1/5] Added test case from issue --- pandas/tests/frame/indexing/test_at.py | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 pandas/tests/frame/indexing/test_at.py diff --git a/pandas/tests/frame/indexing/test_at.py b/pandas/tests/frame/indexing/test_at.py new file mode 100644 index 0000000000000..2385a36533165 --- /dev/null +++ b/pandas/tests/frame/indexing/test_at.py @@ -0,0 +1,9 @@ +from datetime import datetime, timezone +import pandas as pd + + +def test_at_timezone(): + # https://github.com/pandas-dev/pandas/issues/33544 + df = pd.DataFrame({"foo": [datetime(2000, 1, 1)]}) + df.at[0, "foo"] = datetime(2000, 1, 2, tzinfo=timezone.utc) + assert df.at[0, "foo"].tzinfo is not None From 18d727fa4de473d9053c703704857ccfb8daf862 Mon Sep 17 00:00:00 2001 From: Edoardo Abati Date: Thu, 16 Apr 2020 00:28:35 +0100 Subject: [PATCH 2/5] Changed assert to equal utc --- pandas/tests/frame/indexing/test_at.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pandas/tests/frame/indexing/test_at.py b/pandas/tests/frame/indexing/test_at.py index 2385a36533165..f70e88b750689 100644 --- a/pandas/tests/frame/indexing/test_at.py +++ b/pandas/tests/frame/indexing/test_at.py @@ -6,4 +6,4 @@ def test_at_timezone(): # https://github.com/pandas-dev/pandas/issues/33544 df = pd.DataFrame({"foo": [datetime(2000, 1, 1)]}) df.at[0, "foo"] = datetime(2000, 1, 2, tzinfo=timezone.utc) - assert df.at[0, "foo"].tzinfo is not None + assert df.at[0, "foo"].tzinfo == timezone.utc From fdbfa82ae3a716f0d138241826c476f8a9afacdc Mon Sep 17 00:00:00 2001 From: Edoardo Abati Date: Thu, 16 Apr 2020 09:06:19 +0100 Subject: [PATCH 3/5] fixed imports with isort --- pandas/tests/frame/indexing/test_at.py | 1 + 1 file changed, 1 insertion(+) diff --git a/pandas/tests/frame/indexing/test_at.py b/pandas/tests/frame/indexing/test_at.py index f70e88b750689..e9bd33d0c0679 100644 --- a/pandas/tests/frame/indexing/test_at.py +++ b/pandas/tests/frame/indexing/test_at.py @@ -1,4 +1,5 @@ from datetime import datetime, timezone + import pandas as pd From ac97198817dd8167f8d548af413fdec6de15667f Mon Sep 17 00:00:00 2001 From: Edoardo Abati Date: Fri, 17 Apr 2020 12:42:29 +0100 Subject: [PATCH 4/5] switched to assert_frame_equal --- pandas/tests/frame/indexing/test_at.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pandas/tests/frame/indexing/test_at.py b/pandas/tests/frame/indexing/test_at.py index e9bd33d0c0679..43c1aff37addc 100644 --- a/pandas/tests/frame/indexing/test_at.py +++ b/pandas/tests/frame/indexing/test_at.py @@ -1,10 +1,12 @@ from datetime import datetime, timezone import pandas as pd +import pandas._testing as tm def test_at_timezone(): # https://github.com/pandas-dev/pandas/issues/33544 - df = pd.DataFrame({"foo": [datetime(2000, 1, 1)]}) - df.at[0, "foo"] = datetime(2000, 1, 2, tzinfo=timezone.utc) - assert df.at[0, "foo"].tzinfo == timezone.utc + result = pd.DataFrame({"foo": [datetime(2000, 1, 1)]}) + result.at[0, "foo"] = datetime(2000, 1, 2, tzinfo=timezone.utc) + expected = pd.DataFrame({"foo": [datetime(2000, 1, 2, tzinfo=timezone.utc)]}) + tm.assert_frame_equal(result, expected) From 13fdfbea79637bd564a35d2c704c7e643c267519 Mon Sep 17 00:00:00 2001 From: Edoardo Abati Date: Fri, 17 Apr 2020 18:52:36 +0100 Subject: [PATCH 5/5] fixed dytpe in expected dataframe --- pandas/tests/frame/indexing/test_at.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pandas/tests/frame/indexing/test_at.py b/pandas/tests/frame/indexing/test_at.py index 43c1aff37addc..9c2d88f1589c2 100644 --- a/pandas/tests/frame/indexing/test_at.py +++ b/pandas/tests/frame/indexing/test_at.py @@ -8,5 +8,7 @@ def test_at_timezone(): # https://github.com/pandas-dev/pandas/issues/33544 result = pd.DataFrame({"foo": [datetime(2000, 1, 1)]}) result.at[0, "foo"] = datetime(2000, 1, 2, tzinfo=timezone.utc) - expected = pd.DataFrame({"foo": [datetime(2000, 1, 2, tzinfo=timezone.utc)]}) + expected = pd.DataFrame( + {"foo": [datetime(2000, 1, 2, tzinfo=timezone.utc)]}, dtype=object + ) tm.assert_frame_equal(result, expected)