Kaynağa Gözat

Support setting project name from the environment.

Signed-off-by: Daniel Nephin <[email protected]>
Daniel Nephin 11 yıl önce
ebeveyn
işleme
fac49b62b6
2 değiştirilmiş dosya ile 9 ekleme ve 0 silme
  1. 1 0
      fig/cli/command.py
  2. 8 0
      tests/unit/cli_test.py

+ 1 - 0
fig/cli/command.py

@@ -81,6 +81,7 @@ class Command(DocoptCommand):
         def normalize_name(name):
             return re.sub(r'[^a-zA-Z0-9]', '', name)
 
+        project_name = project_name or os.environ.get('FIG_PROJECT_NAME')
         if project_name is not None:
             return normalize_name(project_name)
 

+ 8 - 0
tests/unit/cli_test.py

@@ -35,6 +35,14 @@ class CLITestCase(unittest.TestCase):
         project_name = command.get_project_name(None, project_name=name)
         self.assertEquals('explicitprojectname', project_name)
 
+    def test_project_name_from_environment(self):
+        command = TopLevelCommand()
+        name = 'namefromenv'
+        with mock.patch.dict(os.environ):
+            os.environ['FIG_PROJECT_NAME'] = name
+            project_name = command.get_project_name(None)
+        self.assertEquals(project_name, name)
+
     def test_yaml_filename_check(self):
         command = TopLevelCommand()
         command.base_dir = 'tests/fixtures/longer-filename-figfile'