-
-
Notifications
You must be signed in to change notification settings - Fork 17.9k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
TST: collect tests by method from test_api (#37472)
- Loading branch information
1 parent
72acb78
commit 2039d4c
Showing
4 changed files
with
171 additions
and
172 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,71 @@ | ||
import numpy as np | ||
import pytest | ||
|
||
from pandas import Series, Timestamp | ||
import pandas._testing as tm | ||
|
||
|
||
class TestCopy: | ||
@pytest.mark.parametrize("deep", [None, False, True]) | ||
def test_copy(self, deep): | ||
|
||
ser = Series(np.arange(10), dtype="float64") | ||
|
||
# default deep is True | ||
if deep is None: | ||
ser2 = ser.copy() | ||
else: | ||
ser2 = ser.copy(deep=deep) | ||
|
||
ser2[::2] = np.NaN | ||
|
||
if deep is None or deep is True: | ||
# Did not modify original Series | ||
assert np.isnan(ser2[0]) | ||
assert not np.isnan(ser[0]) | ||
else: | ||
# we DID modify the original Series | ||
assert np.isnan(ser2[0]) | ||
assert np.isnan(ser[0]) | ||
|
||
@pytest.mark.parametrize("deep", [None, False, True]) | ||
def test_copy_tzaware(self, deep): | ||
# GH#11794 | ||
# copy of tz-aware | ||
expected = Series([Timestamp("2012/01/01", tz="UTC")]) | ||
expected2 = Series([Timestamp("1999/01/01", tz="UTC")]) | ||
|
||
ser = Series([Timestamp("2012/01/01", tz="UTC")]) | ||
|
||
if deep is None: | ||
ser2 = ser.copy() | ||
else: | ||
ser2 = ser.copy(deep=deep) | ||
|
||
ser2[0] = Timestamp("1999/01/01", tz="UTC") | ||
|
||
# default deep is True | ||
if deep is None or deep is True: | ||
# Did not modify original Series | ||
tm.assert_series_equal(ser2, expected2) | ||
tm.assert_series_equal(ser, expected) | ||
else: | ||
# we DID modify the original Series | ||
tm.assert_series_equal(ser2, expected2) | ||
tm.assert_series_equal(ser, expected2) | ||
|
||
def test_copy_name(self, datetime_series): | ||
result = datetime_series.copy() | ||
assert result.name == datetime_series.name | ||
|
||
def test_copy_index_name_checking(self, datetime_series): | ||
# don't want to be able to modify the index stored elsewhere after | ||
# making a copy | ||
|
||
datetime_series.index.name = None | ||
assert datetime_series.index.name is None | ||
assert datetime_series is datetime_series | ||
|
||
cp = datetime_series.copy() | ||
cp.index.name = "foo" | ||
assert datetime_series.index.name is None |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters