[Modeling-cvs] ProjectModeling/Modeling/tests test_generate_python_code.sh,NONE,1.1.2.1
Status: Abandoned
Brought to you by:
sbigaret
From: <sbi...@us...> - 2003-05-20 14:24:47
|
Update of /cvsroot/modeling/ProjectModeling/Modeling/tests In directory sc8-pr-cvs1:/tmp/cvs-serv23937 Added Files: Tag: brch-0_9pre6-1-ModelMasons_base_generation_scheme test_generate_python_code.sh Log Message: * Added tests/test_generate_python_code.sh: tests the generation of python code in different situations, and it also checks that the appropriate python test (such as test_EditingContext_Global.py) succeeds with the generated code. Also added: xmlmodels/model_StoreEmployees.xml[2|3] --- NEW FILE: test_generate_python_code.sh --- #! /bin/sh GENERATE=../scripts/mdl_generate_python_code.py RMDIR='/bin/rm -rf' function test_AuthorBooks() { ./test_EditingContext_Global.py > /dev/null 2>&1 } function test_StoreEmployees() { ./test_EditingContext_Global_Inheritance.py > /dev/null 2>&1 } tests_dir=`pwd` mdl_dir=`dirname $tests_dir` export PYTHONPATH=`dirname $mdl_dir`:$PYTHONPATH ##-------- function check_success() { if [ $? -ne 0 ]; then echo "ERROR: Failed: $1" 1>&2 else echo "OK: Success: $1" fi } function check_failure() { if [ $? -ne 0 ]; then echo "OK: Failed: $1" 1>&2 else echo "ERROR: Success: $1" fi } function generate() { $GENERATE $* > /dev/null 2>&1 } ## Save the original trestPackages directories cp -Rp testPackages/AuthorBooks testPackages/AuthorBooks.ori cp -Rp testPackages/StoreEmployees testPackages/StoreEmployees.ori ######## AuthorBooks / -B $RMDIR testPackages/AuthorBooks ; generate -B ./xmlmodels/model_AuthorBooks.xml testPackages/ test_AuthorBooks check_success "AuthorBooks / -B" ######## AuthorBooks / -C $RMDIR testPackages/AuthorBooks generate -C ./xmlmodels/model_AuthorBooks.xml testPackages/ test_AuthorBooks check_success "AuthorBooks / -C" ######## StoreEmployees / -B / xml $RMDIR testPackages/StoreEmployees generate -B ./xmlmodels/model_StoreEmployees.xml testPackages/ test_StoreEmployees check_success "StoreEmployees / -B / xml" ######## StoreEmployees / -C / xml $RMDIR testPackages/StoreEmployees generate -C ./xmlmodels/model_StoreEmployees.xml testPackages/ test_StoreEmployees check_success "StoreEmployees / -C / xml" ######## StoreEmployees / -B / xml 2 (Executive&SalesClerk in module Employees) $RMDIR testPackages/StoreEmployees generate -B ./xmlmodels/model_StoreEmployees.xml2 testPackages/ echo 'from Employees import Executive' > testPackages/StoreEmployees/Executive.py echo 'from Employees import SalesClerk' > testPackages/StoreEmployees/SalesClerk.py test_StoreEmployees check_success "StoreEmployees / -B / xml2" # less StoreEmployees/MDL/Employees.py ######## StoreEmployees / -C / xml 2 $RMDIR testPackages/StoreEmployees generate -C ./xmlmodels/model_StoreEmployees.xml2 testPackages/ echo 'from Employees import Executive' > testPackages/StoreEmployees/Executive.py echo 'from Employees import SalesClerk' > testPackages/StoreEmployees/SalesClerk.py test_StoreEmployees check_success "StoreEmployees / -C / xml2" ######## StoreEmployees / -C / xml 3 ######## (Executive+SalesClerk+Employee in module Employees) $RMDIR testPackages/StoreEmployees generate -C ./xmlmodels/model_StoreEmployees.xml3 testPackages/ echo 'from Employees import Executive' > testPackages/StoreEmployees/Executive.py echo 'from Employees import SalesClerk' > testPackages/StoreEmployees/SalesClerk.py echo 'from Employees import Employee' > testPackages/StoreEmployees/Employee.py test_StoreEmployees check_success "StoreEmployees / -C / xml3" ######## StoreEmployees / -B / xml 3 ######## Should fail!!! $RMDIR testPackages/StoreEmployees generate -B ./xmlmodels/model_StoreEmployees.xml3 testPackages/ check_failure "StoreEmployees / -B / xml3" # less StoreEmployees/MDL/Employees.py ## Restore original directories \rm -rf AuthorBooks \rm -rf StoreEmployees cp -Rp testPackages/AuthorBooks.ori testPackages/AuthorBooks && \ $RMDIR testPackages/AuthorBooks.ori cp -Rp testPackages/StoreEmployees.ori testPackages/StoreEmployees && \ $RMDIR testPackages/StoreEmployees.ori |