code: def test_update_file_collection(self):
      file_collection = self.dal.file_collection.create(
          FileCollection(self.file_collection_input_dict)
      )
  
      # Update required and optional parameters
      updated_file_collection_input_dict = (
          self.file_collection_input_dict.copy()
      )
      updated_file_collection_input_dict["id"] = file_collection.id
      updated_file_collection_input_dict["driver_type"] = "new_driver"
      updated_file_collection_input_dict[
          "created_at"
      ] = datetime.utcnow()
      updated_file_collection = self.dal.file_collection.update(
          updated_file_collection_input_dict
      )
      assert file_collection.id == updated_file_collection.id
      assert (
          file_collection.updated_at
          < updated_file_collection.updated_at
      )
      assert (
          updated_file_collection.driver_type
          == updated_file_collection_input_dict["driver_type"]
      )
      assert (
          updated_file_collection.created_at
          == updated_file_collection_input_dict["created_at"]
      )
  
imports: from __future__ import division
  from __future__ import print_function
  from __future__ import unicode_literals
  import os
  import tempfile
  import platform
  from datetime import datetime
  from datmo.core.storage.driver.blitzdb_dal_driver import BlitzDBDALDriver
  from datmo.core.storage.local.dal import LocalDAL
  from datmo.core.entity.model import Model
  from datmo.core.entity.file_collection import FileCollection
  from datmo.core.util.exceptions import EntityNotFound, InvalidArgumentType
label_desc: Use image node_id 7 for calling the TestLocalDAL obj's underlying member method code with example usage: obj.test_update_file_collection() without return types