Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TST: make test_astype_categorical_to_other deterministic #26244

Merged
merged 1 commit into from
Apr 30, 2019

Commits on Apr 29, 2019

  1. TST: make test_astype_categorical_to_other deterministic

    The use of an unseeded random number generator means that this test can
    occasionally fail for no particular reason.
    
    In particular, I saw the following error:
    
    =================================== FAILURES ===================================
    ______________ TestSeriesDtypes.test_astype_categorical_to_other _______________
    
    self = <pandas.tests.series.test_dtypes.TestSeriesDtypes object at 0x7f223951b750>
    
        def test_astype_categorical_to_other(self):
    
            df = DataFrame({'value': np.random.randint(0, 10000, 100)})
            labels = ["{0} - {1}".format(i, i + 499) for i in range(0, 10000, 500)]
            cat_labels = Categorical(labels, labels)
    
            df = df.sort_values(by=['value'], ascending=True)
            df['value_group'] = pd.cut(df.value, range(0, 10500, 500),
                                       right=False, labels=cat_labels)
    
            s = df['value_group']
            expected = s
            tm.assert_series_equal(s.astype('category'), expected)
            tm.assert_series_equal(s.astype(CategoricalDtype()), expected)
            msg = (r"could not convert string to float: '(0 - 499|9500 - 9999)'|"
                   r"invalid literal for float\(\): (0 - 499|9500 - 9999)")
            with pytest.raises(ValueError, match=msg):
    >           s.astype('float64')
    E           AssertionError: Pattern 'could not convert string to float: '(0 - 499|9500 - 9999)'|invalid literal for float\(\): (0 - 499|9500 - 9999)' not found in 'invalid literal for float(): 9000 - 9499'
    
    By setting the random number seed, this should no longer be able to happen.
    shoyer committed Apr 29, 2019
    Configuration menu
    Copy the full SHA
    a93b15e View commit details
    Browse the repository at this point in the history