|
27 | 27 |
|
28 | 28 | import utilities as tutil |
29 | 29 | from sonar import errcodes as e |
30 | | -from sonar import portfolios, applications |
| 30 | +from sonar import portfolios, applications, projects |
31 | 31 | from sonar import logging |
32 | 32 | import sonar.util.constants as c |
| 33 | +from sonar import utilities as util |
33 | 34 |
|
34 | 35 | import cli.options as opt |
35 | 36 | from cli import config |
@@ -205,3 +206,20 @@ def test_config_import_apps() -> None: |
205 | 206 | app_list = applications.get_list(tutil.TEST_SQ) |
206 | 207 | assert len(app_list) == len(json_config) |
207 | 208 | assert sorted(app_list.keys()) == sorted(json_config.keys()) |
| 209 | + |
| 210 | +def test_config_import_projects() -> None: |
| 211 | + """TEsts that the import of projects config works""" |
| 212 | + config_file = f"{tutil.FILES_ROOT}/config.json" |
| 213 | + json_config = util.read_json_file(config_file)["projects"] |
| 214 | + |
| 215 | + # delete all projects in test |
| 216 | + for p in projects.get_list(tutil.TEST_SQ).values(): |
| 217 | + p.delete() |
| 218 | + # Import config |
| 219 | + cmd = f"{CMD} {tutil.SQS_TEST_OPTS} --{opt.IMPORT} --{opt.REPORT_FILE} {config_file} --{opt.WHAT} {opt.WHAT_PROJECTS}" |
| 220 | + assert tutil.run_cmd(config.main, cmd) == e.OK |
| 221 | + |
| 222 | + # Compare projects |
| 223 | + project_list = projects.get_list(tutil.TEST_SQ) |
| 224 | + assert len(project_list) == len(json_config) |
| 225 | + assert sorted(project_list.keys()) == sorted(json_config.keys()) |
0 commit comments