code: def test_init_create_success_environment(self):
      test_name = "foobar"
      test_description = "test model"
      self.project_command.parse(
          [
              "init",
              "--name",
              test_name,
              "--description",
              test_description,
          ]
      )
  
      # Test when environment is created
      @self.project_command.cli_helper.input("y\n\n\n\n")
      def dummy(self):
          return self.project_command.execute()
  
      result = dummy(self)
  
      definition_filepath = os.path.join(
          self.project_command.project_controller.environment_driver.environment_directory_path,
          "Dockerfile",
      )
  
      assert result
      assert os.path.isfile(definition_filepath)
      assert (
          "FROM datmo/python-base:cpu-py27"
          in open(definition_filepath, "r").read()
      )
  
      # test for desired side effects
      assert os.path.exists(os.path.join(self.temp_dir, ".datmo"))
      assert result.name == test_name
      assert result.description == test_description
  
imports: from __future__ import division
  from __future__ import print_function
  from __future__ import unicode_literals
  import os
  import tempfile
  import platform
  import timeout_decorator
  from datmo.config import Config
  from datmo import __version__
  from datmo.cli.driver.helper import Helper
  from datmo.cli.command.project import ProjectCommand
  from datmo.cli.command.snapshot import SnapshotCommand
  from datmo.core.entity.snapshot import Snapshot
  from datmo.cli.command.run import RunCommand
  from datmo.core.controller.task import TaskController
  from datmo.core.util.exceptions import UnrecognizedCLIArgument
  from datmo.core.util.misc_functions import pytest_docker_environment_failed_instantiation
label_desc: Use image node_id 6 for calling the TestProjectCommand obj's underlying member method code with example usage: obj.test_init_create_success_environment() and returns: self