code: def _test_fetch_from_container(
      self, init_container, get_containers_as_rows
  ):
      container_id1, container_id2 = None, None
      key1 = self.gen_key()
      key2 = f"{self.gen_key()}/{self.gen_key()}"
      value1 = random.randint(1, 100)
      value2 = fake.name()
  
      with init_container() as container:
          container_id1 = container["sys/id"].fetch()
          container[key1] = value1
          container[key2] = value2
          container.sync()
  
      with init_container() as container:
          container_id2 = container["sys/id"].fetch()
          container[key1] = value1
          container.sync()
  
      # wait for the cache to fill
      time.sleep(5)
  
      containers_as_rows = get_containers_as_rows()
      container1 = next(
          filter(
              lambda m: m.get_attribute_value("sys/id")
              == container_id1,
              containers_as_rows,
          )
      )
      container2 = next(
          filter(
              lambda m: m.get_attribute_value("sys/id")
              == container_id2,
              containers_as_rows,
          )
      )
  
      assert container1.get_attribute_value(key1) == value1
      assert container1.get_attribute_value(key2) == value2
      assert container2.get_attribute_value(key1) == value1
      with pytest.raises(ValueError):
          container2.get_attribute_value(key2)
  
      def get_container1(**kwargs):
          containers_as_rows = get_containers_as_rows(**kwargs)
          return next(
              filter(
                  lambda m: m.get_attribute_value("sys/id")
                  == container_id1,
                  containers_as_rows,
              )
          )
  
      non_filtered = get_container1()
      assert non_filtered.get_attribute_value(key1) == value1
      assert non_filtered.get_attribute_value(key2) == value2
  
      columns_none = get_container1(columns=None)
      assert columns_none.get_attribute_value(key1) == value1
      assert columns_none.get_attribute_value(key2) == value2
  
      columns_empty = get_container1(columns=[])
      with pytest.raises(ValueError):
          columns_empty.get_attribute_value(key1)
      with pytest.raises(ValueError):
          columns_empty.get_attribute_value(key2)
  
      columns_with_one_key = get_container1(columns=[key1])
      assert columns_with_one_key.get_attribute_value(key1) == value1
      with pytest.raises(ValueError):
          columns_with_one_key.get_attribute_value(key2)
  
      columns_with_one_key = get_container1(columns=[key2])
      with pytest.raises(ValueError):
          columns_with_one_key.get_attribute_value(key1)
      assert columns_with_one_key.get_attribute_value(key2) == value2
  
file_path: neptune-client/tests/e2e/standard/test_fetch_tables.py
imports: import random
  import time
  import uuid
  import pytest
  import neptune
  from neptune.metadata_containers import Model
  from tests.e2e.base import BaseE2ETest, fake
  from tests.e2e.utils import a_key
label_desc: Use image node_id 3 for calling the TestFetchTable obj's underlying member method code with example usage: obj._test_fetch_from_container(init_container, get_containers_as_rows) and returns: next