Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • silecs/opensilecs
  • k.fugiel/opensilecs
  • s.kupiecki/opensilecs
3 results
Show changes
Showing
with 1310 additions and 2226 deletions
......@@ -14,10 +14,9 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import sys
import libxml2
import unittest
from test.testBase import *
import fesa.fesa_3_0_0.fillFESADeployUnit
simpleSilecsDeploy = '''<?xml version="1.0" encoding="UTF-8"?>
......@@ -44,25 +43,23 @@ simpleSilecsDeploy = '''<?xml version="1.0" encoding="UTF-8"?>
simpleSilecsDeployParsed = libxml2.parseDoc(simpleSilecsDeploy)
simpleFesaDeployParsed = libxml2.parseFile("test/fesa/DeploymentUnitTemplateFESA300.xml")
def fillDU_3_0_0(generator):
generator.fillXML(simpleFesaDeployParsed,simpleSilecsDeployParsed,"MyTestDeploy", "some/schema.xsd", "1.2.3")
# check that default class is removed
defaultClassTemplate = simpleFesaDeployParsed.xpathEval('/deploy-unit/class[class-name/text()="class-name"]')
assertEqual( len(defaultClassTemplate), 0 )
class TestFillDeployUnit(unittest.TestCase):
# test 2 classes available
classes = simpleFesaDeployParsed.xpathEval('/deploy-unit/class')
assertEqual( len(classes), 2 )
def setUp(self):
self.generator = fesa.fesa_3_0_0.fillFESADeployUnit.FESADeployUnitGenerator3_0_0()
# test 2 classes available after overwrite
generator.fillXML(simpleFesaDeployParsed,simpleSilecsDeployParsed,"MyTestDeploy", "some/schema.xsd", "1.2.3")
classes = simpleFesaDeployParsed.xpathEval('/deploy-unit/class')
assertEqual( len(classes), 2 )
def test_fillDU_3_0_0(self):
self.generator.fillXML(simpleFesaDeployParsed,simpleSilecsDeployParsed,"MyTestDeploy", "some/schema.xsd", "1.2.3")
def runTests():
generator = fesa.fesa_3_0_0.fillFESADeployUnit.FESADeployUnitGenerator3_0_0()
fillDU_3_0_0(generator)
# No need to test 3.1.0, it uses the same generator than 3.0.0
allTestsOk()
# check that default class is removed
defaultClassTemplate = simpleFesaDeployParsed.xpathEval('/deploy-unit/class[class-name/text()="class-name"]')
self.assertEqual(len(defaultClassTemplate), 0)
# test 2 classes available
classes = simpleFesaDeployParsed.xpathEval('/deploy-unit/class')
self.assertEqual(len(classes), 2)
# test 2 classes available after overwrite
self.generator.fillXML(simpleFesaDeployParsed,simpleSilecsDeployParsed,"MyTestDeploy", "some/schema.xsd", "1.2.3")
classes = simpleFesaDeployParsed.xpathEval('/deploy-unit/class')
self.assertEqual(len(classes), 2)
......@@ -14,9 +14,8 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import sys
import unittest
from test.testBase import *
import fesa.fesa_3_0_0.generateSourceCode
import fesa.fesa_3_1_0.generateSourceCode
......@@ -30,19 +29,19 @@ generatedCppName = "AllTypes.cpp"
silecsDesignRoot = libxml2.parseFile("test/AllTypesFESA.silecsdesign")
class TestGenerateSourceCode(unittest.TestCase):
def setUp(self):
self.fesaDesignRoot = libxml2.parseFile(generationFolder + "/AllTypesFESA.design" )
def assertFileEqual(self, filePath1, filePath2):
with open(filePath1) as a, open(filePath2) as b:
self.assertListEqual(list(a), list(b))
def testGenHSource():
fesaDesignRoot = libxml2.parseFile(generationFolder + "/AllTypesFESA.design" )
fesa.fesa_3_1_0.generateSourceCode.genHSource('AllTypes', silecsDesignRoot,fesaDesignRoot,generationFolder,logTopics={'errorlog': True})
assertFileEqual( generationFolder + "/" + generatedHeaderName, comparisonFolder + "/" + generatedHeaderName)
def test_genHSource(self):
fesa.fesa_3_1_0.generateSourceCode.genHSource('AllTypes', silecsDesignRoot, self.fesaDesignRoot, generationFolder,logTopics={'errorlog': True})
self.assertFileEqual(generationFolder + "/" + generatedHeaderName, comparisonFolder + "/" + generatedHeaderName)
def testGenCppSource():
fesaDesignRoot = libxml2.parseFile(generationFolder + "/AllTypesFESA.design" )
fesa.fesa_3_1_0.generateSourceCode.genCppSource('AllTypes', silecsDesignRoot,fesaDesignRoot,generationFolder,logTopics={'errorlog': True})
assertFileEqual( generationFolder + "/" + generatedCppName, comparisonFolder + "/" + generatedCppName)
def runTests():
testGenHSource()
testGenCppSource()
allTestsOk()
def test_genCppSource(self):
fesaDesignRoot = libxml2.parseFile(generationFolder + "/AllTypesFESA.design" )
fesa.fesa_3_1_0.generateSourceCode.genCppSource('AllTypes', silecsDesignRoot,fesaDesignRoot,generationFolder,logTopics={'errorlog': True})
self.assertFileEqual(generationFolder + "/" + generatedCppName, comparisonFolder + "/" + generatedCppName)
This diff is collapsed.
This diff is collapsed.
......@@ -14,15 +14,9 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import sys
import libxml2
import unittest
from test.testBase import *
from genduwrapper import *
import iecommon
import iefiles
import libxml2
from genduwrapper import genDuWrapperBase
testFolder = "test"
generationFolder = testFolder + "/generated_temp/wrapper"
......@@ -42,11 +36,15 @@ def fakeGetDuDesignWrapperFile(workspacePath,deployName,designName):
def fakeGetDuWrapperFile(workspacePath, deployName, controllerName):
return generationFolder + "/" + controllerName + ".h"
def CompareGeneratedFiles():
assertFileEqual( duDesignWrapperGenerated, duDesignWrapperCorrect)
assertFileEqual( duControllerWrapperGenerated, duControllerWrapperCorrect)
class TestGenDuWrapperBase(unittest.TestCase):
def setUp(self):
genDuWrapperBase(deployFilePath, fakeGetDuWrapperFile, "fake", fakeGetSilecsDesignFilePath, fakeGetDuDesignWrapperFile)
def assertFileEqual(self, filePath1, filePath2):
with open(filePath1) as a, open(filePath2) as b:
self.assertListEqual(list(a), list(b))
def runTests():
genDuWrapperBase(deployFilePath,fakeGetDuWrapperFile,"fake",fakeGetSilecsDesignFilePath, fakeGetDuDesignWrapperFile)
CompareGeneratedFiles()
allTestsOk()
def test_compareGeneratedFiles(self):
self.assertFileEqual(duDesignWrapperGenerated, duDesignWrapperCorrect)
self.assertFileEqual(duControllerWrapperGenerated, duControllerWrapperCorrect)
This diff is collapsed.
This diff is collapsed.
/AllTypesFESA.design.testing
../../../../../test/AllTypesFESA/src/AllTypesFESA.design
\ No newline at end of file