Salome HOME
dc671d1e63d17b5c1df277d4b4ecccb0b5084382
[modules/shaper.git] / test.hdfs / test.py
1 #!/usr/bin/env python
2 if __name__ == '__main__':
3
4   import subprocess
5   from time import sleep
6   import sys, os
7
8   salomeKernelDir = sys.argv[1]
9   sourceDir = sys.argv[2]
10   testfile = sys.argv[3]
11
12   portlogfile = os.getcwd() + "/.salome_port"
13   testlogfile = os.getcwd() + "/test.log"
14   # remove port file if any
15   try:
16     os.remove(portlogfile)
17   except:
18     pass
19
20   isOk = True
21   error = ""
22
23   proc = subprocess.Popen([salomeKernelDir + "/bin/salome/runSalome.py", "--modules", "SHAPER,GEOM", "--gui", "--ns-port-log=" + portlogfile, sourceDir + "/test_hdf.py", "args:" + testfile + "," + portlogfile + "," + testlogfile + "," + salomeKernelDir + "," + sourceDir], stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
24   try:
25     proc.communicate(timeout = 600)
26   except TimeoutExpired:
27     isOk = False
28     proc.kill()
29     out, err = proc.communicate()
30     error = "Killed by CPU limit."
31     print(err)
32
33   with open(testlogfile, 'r') as inputFile:
34     s = inputFile.read()
35     print(s)
36     isOk = isOk and s.find("FAIL") < 0
37   try:
38     os.remove(testlogfile)
39   except:
40     pass
41
42   assert isOk, "Test failed. {}".format(error)