code: def test_dataset_construct_fields_fuzzy():
      arrow_table = generate_random_arrow_table(3, 1000, 42)
      arrow_labels = generate_random_arrow_array(
          1000, 42, generate_nulls=False
      )
      arrow_weights = generate_random_arrow_array(
          1000, 42, generate_nulls=False
      )
      arrow_groups = pa.chunked_array(
          [[300, 400, 50], [250]], type=pa.int32()
      )
  
      arrow_dataset = lgb.Dataset(
          arrow_table,
          label=arrow_labels,
          weight=arrow_weights,
          group=arrow_groups,
      )
      arrow_dataset.construct()
  
      pandas_dataset = lgb.Dataset(
          arrow_table.to_pandas(),
          label=arrow_labels.to_numpy(),
          weight=arrow_weights.to_numpy(),
          group=arrow_groups.to_numpy(),
      )
      pandas_dataset.construct()
  
      # Check for equality
      for field in ("label", "weight", "group"):
          np_assert_array_equal(
              arrow_dataset.get_field(field),
              pandas_dataset.get_field(field),
              strict=True,
          )
      np_assert_array_equal(
          arrow_dataset.get_label(),
          pandas_dataset.get_label(),
          strict=True,
      )
      np_assert_array_equal(
          arrow_dataset.get_weight(),
          pandas_dataset.get_weight(),
          strict=True,
      )
  
imports: import filecmp
  from typing import Any, Dict, Optional
  import numpy
  import pyarrow
  import pytest
  import lightgbm
  from .utils import np_assert_array_equal
label_desc: Use image node_id 8 for calling a global function with example usage: test_dataset_construct_fields_fuzzy() without return types