class_docstr: Additional methods;
  Public methods that can be used for test cases.
class_docstr_tok: ["Additional","methods",";","Public","methods","that","can","be","used","for","test","cases","."]
docstr: init collection with one shard, insert data into two segments on one shard (they can be merged)
  :param collection_prefix: collection name prefix
  :param num_of_segment: number of segments
  :param nb_of_segment: number of entities per segment
  :param is_dup: whether the primary keys of each segment is duplicated
  :return: collection wrap and partition wrap
docstr_tok: ["init","collection","with","one","shard",",","insert","data","into","two","segments","on","one","shard","(","they","can","be","merged",")",":","param","collection_prefix",":","collection","name","prefix",":","param","num_of_segment",":","number","of","segments",":","param","nb_of_segment",":","number","of","entities","per","segment",":","param","is_dup",":","whether","the","primary","keys","of","each","segment","is","duplicated",":","return",":","collection","wrap","and","partition","wrap"]
code: def collection_insert_multi_segments_one_shard(
      self,
      collection_prefix,
      num_of_segment=2,
      nb_of_segment=1,
      is_dup=True,
  ):
      """
      init collection with one shard, insert data into two segments on one shard (they can be merged)
      :param collection_prefix: collection name prefix
      :param num_of_segment: number of segments
      :param nb_of_segment: number of entities per segment
      :param is_dup: whether the primary keys of each segment is duplicated
      :return: collection wrap and partition wrap
      """
      collection_w = self.init_collection_wrap(
          name=cf.gen_unique_str(collection_prefix), shards_num=1
      )
  
      for i in range(num_of_segment):
          start = 0 if is_dup else i * nb_of_segment
          df = cf.gen_default_dataframe_data(nb_of_segment, start=start)
          collection_w.insert(df)
          assert collection_w.num_entities == nb_of_segment * (i + 1)
      return collection_w
  
imports: from numpy.core.fromnumeric import _partition_dispatcher
  import pytest
  import sys
  from pymilvus import DefaultConfig
  from base.database_wrapper import ApiDatabaseWrapper
  from base.connections_wrapper import ApiConnectionsWrapper
  from base.collection_wrapper import ApiCollectionWrapper
  from base.partition_wrapper import ApiPartitionWrapper
  from base.index_wrapper import ApiIndexWrapper
  from base.utility_wrapper import ApiUtilityWrapper
  from base.schema_wrapper import ApiCollectionSchemaWrapper, ApiFieldSchemaWrapper
  from base.high_level_api_wrapper import HighLevelApiWrapper
  from utils.util_log import test_log
  from common import common_func
  from common import common_type
  from pymilvus import ResourceGroupInfo
label_desc: Use image node_id 8 for calling the TestcaseBase obj's underlying member method code with example usage: obj.collection_insert_multi_segments_one_shard(collection_prefix, num_of_segment, nb_of_segment, is_dup) and returns: collection_w