Skip to content
Snippets Groups Projects

Port silecs cli to Python

Merged m.nabywaniec requested to merge 70-port-cli-client-to-python into master
Compare and Show latest version
2 files
+ 82
25
Compare changes
  • Side-by-side
  • Inline
Files
2
@@ -5,21 +5,7 @@ import unittest
sys.path.append('../')
from silecs_cli import silecs
filenames_extensions = [("test1.design", "design"), ("test2.deploy", "deploy")]
filenames_project_names = [("test1.design", "test1"), ("test2.deploy", "test2")]
filenames_dirs = [("/home/test/example/test1.design", "/home/test/example"),
("/home/test/example/test2.deploy", "/home/test/example")]
filenames_schema_paths = [("/home/test/example/test1.silecsdesign",
"../silecs-model/src/xml/DesignSchema.xsd"),
("/home/test/example/test2.silecsdeploy",
"../silecs-model/src/xml/DeploySchema.xsd")]
BASE_FOR_BACKUP = os.path.join("tests", "examples", "SilecsTestClass.design")
silecs_design_deploy_paths = [os.path.join("tests", "examples", "SilecsTestClass.silecsdesign"), \
os.path.join("tests", "examples", "SilecsTestClassDU.silecsdeploy")]
silecs_design_deplov_paths = [os.path.join("tests", "examples", "SilecsTestClass.silecsdesign"), \
os.path.join("tests", "examples", "SilecsTestClassDU.silecsdeploy")]
invalid_silecs_deploy_path = os.path.join("tests", "examples", "SilecsTestClassDU_invalid.silecsdeploy")
BACKUP = BASE_FOR_BACKUP + ".backup"
DESIGN_PATH = os.path.join("tests", "examples", "SilecsTestClass2.design")
@@ -45,24 +31,40 @@ class SilecsTest(unittest.TestCase):
def test_get_extension(self):
"""Test getting extension from file"""
filenames_extensions = [("test1.design", "design"), ("test2.deploy", "deploy")]
for filename, expected in filenames_extensions:
with self.subTest():
self.assertEqual(silecs.get_extension(filename), expected)
def test_get_project_name(self):
"""Test getting extension from filepath"""
filenames_project_names = [("test1.design", "test1"), ("test2.deploy", "test2")]
for filename, project_name in filenames_project_names:
with self.subTest():
self.assertEqual(silecs.get_project_name(filename), project_name)
def test_get_project_path(self):
"""Test getting project path from filepath"""
filenames_project_paths = [("workspace/test1/src/test1.design", "workspace/test1"),
("workspace/test2/src/test2.deploy", "workspace/test2")]
for filename, project_path in filenames_project_paths:
with self.subTest():
self.assertEqual(silecs.get_project_path(filename), project_path)
def test_get_project_dir(self):
"""Test getting project directory from filepath"""
filenames_dirs = [("workspace/test1/src/test1.design", "workspace/test1/src"),
("workspace/test2/src/test2.deploy", "workspace/test2/src")]
for filename, directory in filenames_dirs:
with self.subTest():
self.assertEqual(silecs.get_project_dir(filename), directory)
def test_get_schema_path(self):
"""Test getting xml schema path for silecs design deploy files"""
filenames_schema_paths = [("/home/test/example/test1.silecsdesign",
"../silecs-model/src/xml/DesignSchema.xsd"),
("/home/test/example/test2.silecsdeploy",
"../silecs-model/src/xml/DeploySchema.xsd")]
for filename, schema_path in filenames_schema_paths:
with self.subTest():
self.assertEqual(silecs.get_schema_path(filename), schema_path)
@@ -95,12 +97,15 @@ class SilecsTest(unittest.TestCase):
def test_silecs_validate(self):
"""Test validating silecs design/deploy files"""
silecs_design_deploy_paths = [os.path.join("tests", "examples", "SilecsTestClass.silecsdesign"), \
os.path.join("tests", "examples", "SilecsTestClassDU.silecsdeploy")]
for path in silecs_design_deploy_paths:
xsd_path = silecs.get_schema_path(path)
self.assertEqual(silecs.validate(path, xsd_path), True)
def test_silecs_validate_invalid(self):
"""Test validating invalid silecs file"""
invalid_silecs_deploy_path = os.path.join("tests", "examples", "SilecsTestClassDU_invalid.silecsdeploy")
xsd_path = silecs.get_schema_path(invalid_silecs_deploy_path)
self.assertEqual(silecs.validate(invalid_silecs_deploy_path, xsd_path), False)
Loading