code: def test_asc_merge_4():
      """Test ascending merge"""
      hroi = make_hroi()
      hroi.set_roi_feature("labels", list(range(9)))
      hroi.set_roi_feature("labels2", list(range(9)))
      parents = np.arange(9) - 1
      parents[0] = 0
      hroi.parents = parents
      labels3 = [hroi.label[hroi.label == k] for k in range(hroi.k)]
      hroi.set_feature("labels3", labels3)
      hroi.merge_ascending([1], pull_features=["labels2"])
      assert hroi.k == 8
      assert hroi.get_roi_feature("labels", 0) == 0
      assert hroi.get_roi_feature("labels2", 0) == 1
      assert len(hroi.get_feature("labels3")) == hroi.k
      assert hroi.get_roi_feature("labels2").size == hroi.k
  
imports: import numpy
  from numpy.testing import assert_array_equal
  from ..discrete_domain import domain_from_binary_array
  from ..hroi import HROI_as_discrete_domain_blobs, make_hroi_from_subdomain
  from ..mroi import subdomain_from_array
label_desc: Use image node_id 9 for calling a global function with example usage: test_asc_merge_4() without return types