3939
4040from pandas .sparse .tests .test_array import assert_sp_array_equal
4141
42- import warnings
43- warnings .filterwarnings (action = 'ignore' , category = FutureWarning )
44-
45-
4642def _test_data1 ():
4743 # nan-based
4844 arr = np .arange (20 , dtype = float )
@@ -503,15 +499,6 @@ def check(a, b):
503499 result = self .bseries + self .bseries .to_dense ()
504500 assert_sp_series_equal (result , self .bseries + self .bseries )
505501
506- # @dec.knownfailureif(True, 'Known NumPy failer as of 1.5.1')
507- def test_operators_corner2 (self ):
508- raise nose .SkipTest ('known failer on numpy 1.5.1' )
509-
510- # NumPy circumvents __r*__ operations
511- val = np .float64 (3.0 )
512- result = val - self .zbseries
513- assert_sp_series_equal (result , 3 - self .zbseries )
514-
515502 def test_binary_operators (self ):
516503
517504 # skipping for now #####
@@ -1778,20 +1765,23 @@ def setUp(self):
17781765 'ItemC' : panel_data3 (),
17791766 'ItemD' : panel_data1 (),
17801767 }
1781- self .panel = SparsePanel (self .data_dict )
1768+ with tm .assert_produces_warning (FutureWarning ):
1769+ self .panel = SparsePanel (self .data_dict )
17821770
17831771 @staticmethod
17841772 def _test_op (panel , op ):
17851773 # arithmetic tests
1786- result = op (panel , 1 )
1774+ with tm .assert_produces_warning (FutureWarning , check_stacklevel = False ):
1775+ result = op (panel , 1 )
17871776 assert_sp_frame_equal (result ['ItemA' ], op (panel ['ItemA' ], 1 ))
17881777
17891778 def test_constructor (self ):
1790- self .assertRaises (ValueError , SparsePanel , self .data_dict ,
1791- items = ['Item0' , 'ItemA' , 'ItemB' ])
1792- with tm .assertRaisesRegexp (TypeError ,
1793- "input must be a dict, a 'list' was passed" ):
1794- SparsePanel (['a' , 'b' , 'c' ])
1779+ with tm .assert_produces_warning (FutureWarning , check_stacklevel = False ):
1780+ self .assertRaises (ValueError , SparsePanel , self .data_dict ,
1781+ items = ['Item0' , 'ItemA' , 'ItemB' ])
1782+ with tm .assertRaisesRegexp (TypeError ,
1783+ "input must be a dict, a 'list' was passed" ):
1784+ SparsePanel (['a' , 'b' , 'c' ])
17951785
17961786 # deprecation GH11157
17971787 def test_deprecation (self ):
@@ -1800,13 +1790,15 @@ def test_deprecation(self):
18001790
18011791 # GH 9272
18021792 def test_constructor_empty (self ):
1803- sp = SparsePanel ()
1793+ with tm .assert_produces_warning (FutureWarning ):
1794+ sp = SparsePanel ()
18041795 self .assertEqual (len (sp .items ), 0 )
18051796 self .assertEqual (len (sp .major_axis ), 0 )
18061797 self .assertEqual (len (sp .minor_axis ), 0 )
18071798
18081799 def test_from_dict (self ):
1809- fd = SparsePanel .from_dict (self .data_dict )
1800+ with tm .assert_produces_warning (FutureWarning , check_stacklevel = False ):
1801+ fd = SparsePanel .from_dict (self .data_dict )
18101802 assert_sp_panel_equal (fd , self .panel )
18111803
18121804 def test_pickle (self ):
@@ -1830,21 +1822,25 @@ def test_to_dense(self):
18301822 assert_panel_equal (dwp , dwp2 )
18311823
18321824 def test_to_frame (self ):
1833- def _compare_with_dense (panel ):
1834- slp = panel .to_frame ()
1835- dlp = panel .to_dense ().to_frame ()
18361825
1837- self .assert_numpy_array_equal (slp .values , dlp .values )
1838- self .assertTrue (slp .index .equals (dlp .index ))
1826+ with tm .assert_produces_warning (FutureWarning , check_stacklevel = False ):
1827+
1828+ def _compare_with_dense (panel ):
1829+ slp = panel .to_frame ()
1830+ dlp = panel .to_dense ().to_frame ()
18391831
1840- _compare_with_dense ( self .panel )
1841- _compare_with_dense ( self .panel . reindex ( items = [ 'ItemA' ] ))
1832+ self .assert_numpy_array_equal ( slp . values , dlp . values )
1833+ self .assertTrue ( slp . index . equals ( dlp . index ))
18421834
1843- zero_panel = SparsePanel (self .data_dict , default_fill_value = 0 )
1844- self .assertRaises ( Exception , zero_panel . to_frame )
1835+ _compare_with_dense (self .panel )
1836+ _compare_with_dense ( self .panel . reindex ( items = [ 'ItemA' ]) )
18451837
1846- self .assertRaises (Exception , self .panel .to_frame ,
1847- filter_observations = False )
1838+ with tm .assert_produces_warning (FutureWarning ):
1839+ zero_panel = SparsePanel (self .data_dict , default_fill_value = 0 )
1840+ self .assertRaises (Exception , zero_panel .to_frame )
1841+
1842+ self .assertRaises (Exception , self .panel .to_frame ,
1843+ filter_observations = False )
18481844
18491845 def test_long_to_wide_sparse (self ):
18501846 pass
@@ -1885,47 +1881,53 @@ def test_delitem_pop(self):
18851881 self .assertRaises (KeyError , self .panel .__delitem__ , 'ItemC' )
18861882
18871883 def test_copy (self ):
1888- cop = self .panel .copy ()
1884+ with tm .assert_produces_warning (FutureWarning , check_stacklevel = False ):
1885+ cop = self .panel .copy ()
18891886 assert_sp_panel_equal (cop , self .panel )
18901887
18911888 def test_reindex (self ):
1892- def _compare_with_dense (swp , items , major , minor ):
1893- swp_re = swp .reindex (items = items , major = major ,
1894- minor = minor )
1895- dwp_re = swp .to_dense ().reindex (items = items , major = major ,
1896- minor = minor )
1897- assert_panel_equal (swp_re .to_dense (), dwp_re )
1898-
1899- _compare_with_dense (self .panel , self .panel .items [:2 ],
1900- self .panel .major_axis [::2 ],
1901- self .panel .minor_axis [::2 ])
1902- _compare_with_dense (self .panel , None ,
1903- self .panel .major_axis [::2 ],
1904- self .panel .minor_axis [::2 ])
1905-
1906- self .assertRaises (ValueError , self .panel .reindex )
1907-
1908- # TODO: do something about this later...
1909- self .assertRaises (Exception , self .panel .reindex ,
1910- items = ['item0' , 'ItemA' , 'ItemB' ])
1911-
1912- # test copying
1913- cp = self .panel .reindex (self .panel .major_axis , copy = True )
1914- cp ['ItemA' ]['E' ] = cp ['ItemA' ]['A' ]
1915- self .assertNotIn ('E' , self .panel ['ItemA' ])
1889+ with tm .assert_produces_warning (FutureWarning , check_stacklevel = False ):
1890+
1891+ def _compare_with_dense (swp , items , major , minor ):
1892+ swp_re = swp .reindex (items = items , major = major ,
1893+ minor = minor )
1894+ dwp_re = swp .to_dense ().reindex (items = items , major = major ,
1895+ minor = minor )
1896+ assert_panel_equal (swp_re .to_dense (), dwp_re )
1897+
1898+ _compare_with_dense (self .panel , self .panel .items [:2 ],
1899+ self .panel .major_axis [::2 ],
1900+ self .panel .minor_axis [::2 ])
1901+ _compare_with_dense (self .panel , None ,
1902+ self .panel .major_axis [::2 ],
1903+ self .panel .minor_axis [::2 ])
1904+
1905+ self .assertRaises (ValueError , self .panel .reindex )
1906+
1907+ # TODO: do something about this later...
1908+ self .assertRaises (Exception , self .panel .reindex ,
1909+ items = ['item0' , 'ItemA' , 'ItemB' ])
1910+
1911+ # test copying
1912+ cp = self .panel .reindex (self .panel .major_axis , copy = True )
1913+ cp ['ItemA' ]['E' ] = cp ['ItemA' ]['A' ]
1914+ self .assertNotIn ('E' , self .panel ['ItemA' ])
19161915
19171916 def test_operators (self ):
19181917 def _check_ops (panel ):
1918+
19191919 def _dense_comp (op ):
1920- dense = panel .to_dense ()
1921- sparse_result = op (panel )
1922- dense_result = op (dense )
1923- assert_panel_equal (sparse_result .to_dense (), dense_result )
1920+ with tm .assert_produces_warning (FutureWarning , check_stacklevel = False ):
1921+ dense = panel .to_dense ()
1922+ sparse_result = op (panel )
1923+ dense_result = op (dense )
1924+ assert_panel_equal (sparse_result .to_dense (), dense_result )
19241925
19251926 def _mixed_comp (op ):
1926- result = op (panel , panel .to_dense ())
1927- expected = op (panel .to_dense (), panel .to_dense ())
1928- assert_panel_equal (result , expected )
1927+ with tm .assert_produces_warning (FutureWarning , check_stacklevel = False ):
1928+ result = op (panel , panel .to_dense ())
1929+ expected = op (panel .to_dense (), panel .to_dense ())
1930+ assert_panel_equal (result , expected )
19291931
19301932 op1 = lambda x : x + 2
19311933
0 commit comments