code: def test_accept(self):
      # test that steps are randomly accepted for f_new > f_old
      one_accept = False
      one_reject = False
      for i in range(1000):
          if one_accept and one_reject:
              break
          ret = self.met(f_new=1.0, f_old=0.5)
          if ret:
              one_accept = True
          else:
              one_reject = True
      assert_(one_accept)
      assert_(one_reject)
  
imports: import copy
  from numpy.testing import assert_almost_equal, assert_equal, assert_
  import pytest
  from pytest import raises
  import numpy
  from numpy import cos, sin
  from scipy.optimize import basinhopping, OptimizeResult
  from scipy.optimize._basinhopping import Storage, RandomDisplacement, Metropolis, AdaptiveStepsize
  from scipy._lib._pep440 import Version
label_desc: Use image node_id 5 for calling the Test_Metropolis obj's underlying member method code with example usage: obj.test_accept() without return types