diff options
-rw-r--r-- | RELEASE_NOTES | 5 | ||||
-rwxr-xr-x | tests/test_pretty_print.py | 5 | ||||
-rwxr-xr-x | tests/test_upload.py | 39 |
3 files changed, 32 insertions, 17 deletions
diff --git a/RELEASE_NOTES b/RELEASE_NOTES index 1e0a737..b22621f 100644 --- a/RELEASE_NOTES +++ b/RELEASE_NOTES @@ -4,6 +4,8 @@ OpenSCAD 2013.XX Features: o Console output is now enabled on Windows through the openscad.com executable o Added basic syntax highlighting in the editor +o Commandline output of CGAL render to png image using '-o f.png --render' +o Regression test now creates single monolithic .html file for easier uploading Bugfixes: o OpenCSG rendering sometimes crashed when rendering large models @@ -11,6 +13,9 @@ o We didn't always print a warning when CSG normalization created too many eleme o Binary STLs can now be read on big endian architectures o Some binary STLs couldn't be read o Fixed some issues related to ARM builds +o Improved regression dumptest multmatrix output portability +o Regression test auto-starts & stops Xvfb / Xvnc if on headless unix machine +o CGAL triangulation more lenient- enables partial rendering of 'bad' DXF data OpenSCAD 2013.01 ================ diff --git a/tests/test_pretty_print.py b/tests/test_pretty_print.py index 8458fdb..a4b5e70 100755 --- a/tests/test_pretty_print.py +++ b/tests/test_pretty_print.py @@ -86,8 +86,8 @@ def read_sysinfo(filename): if not data: sinfo = platform.sys.platform sinfo += '\nsystem cannot create offscreen GL framebuffer object' - sinfo += '\nsystem cannot create images' - sysid = platform.sys.platform+'_no_images' + sinfo += '\nsystem cannot create GL based images' + sysid = platform.sys.platform+'_no_GL_renderer' return sinfo, sysid machine = ezsearch('Machine:(.*?)\n',data) @@ -118,6 +118,7 @@ def read_sysinfo(filename): for c in hexhash: hash += chr(ord(c)+97-48) sysid = osplain + '_' + machine + '_' + renderer + '_' + hash + sysid = sysid.replace('(','_').replace(')','_') sysid = sysid.lower() return data, sysid diff --git a/tests/test_upload.py b/tests/test_upload.py index 817d971..39cd237 100755 --- a/tests/test_upload.py +++ b/tests/test_upload.py @@ -21,8 +21,9 @@ # # This license is based on zlib license by Jean-loup Gailly and Mark Adler + # This script takes html output by test_pretty_print.py and uploads -# it to a web server. +# it to a web server over ssh using sftp. # # Simple example: (see help() for more info) # @@ -30,7 +31,7 @@ # # -# design +# Design # # On the remote web server there is a directory called 'openscad_tests' # Inside of it is a file, 'index.html', that lists all the test reports @@ -59,14 +60,17 @@ # This script returns '1' on failure, '0' on success (shell-style) # -import sys,os,platform,string +# todo: support plain old ftp ?? +# todo: support new-fangled sites like dropbox ?? + +import sys,os,platform,string,getpass try: import paramiko except: x=''' -please install the paramiko python library in your -PYTHONPATH If that is not feasible, you can upload the main html report +please install the paramiko python library in your PYTHONPATH +If that is not feasible, you can upload the single html report file by hand to any site that accepts html code. ''' @@ -88,18 +92,17 @@ usage: example1: - $ ctest # result is linux_x86_nvidia_report.html - $ test_upload.py --username=andreis --host=web.sourceforge.net \ - --remotepath=/home/project-web/projectxyz/htdocs/ + $ ctest # result is Testing/Temporary/linux_x86_nvidia_report.html + $ test_upload.py --username=andreis --host=web.sourceforge.net --remotepath=/home/project-web/projectxyz/htdocs/ $ firefox http://projectxyz.sourceforge.net/openscad_tests/index.html # should display the test results example2: - $ ctest # result in freebsd_ppc_gallium_report.html - $ test_upload.py --username=agorenko --host=fontanka.org --remotepath=/tmp/ - $ ssh agorenko@fontanka.org "ls /tmp" - # result is 'index.html' 'freebsd_ppc_gallium_report.html' + $ ctest # result is Testing/Temporary/freebsd_ppc_gallium_report.html + $ test_upload.py --username=annag --host=fontanka.org --remotepath=/tmp/ + $ ssh annag@fontanka.org "ls /tmp" + # result is 'index.html' 'freebsd_ppc_gallium_report.html' in /tmp ''' print text @@ -157,15 +160,21 @@ def paramiko_upload( newrept_fname, username, host, remotepath ): try: client.connect(host,username=username) except paramiko.PasswordRequiredException, e: - passw = getpass.getpass('enter passphrase for private key: ') + passw = getpass.getpass('enter passphrase for private ssh key: ') client.connect(host,username=username,password=passw) #stdin,stdout,stderr=client.exec_command('ls -l') - debug("find remote path " + basepath + " (or create) ") + debug("find remote path: " + remotepath) ftp = client.open_sftp() + try: + ftp.chdir( remotepath ) + except: + debug("failed to change dir to remote path: "+remotepath) + return 1 + debug("find basepath ( or create ):" + basepath ) if not basepath in ftp.listdir(): ftp.mkdir( basepath ) ftp.chdir( basepath ) @@ -205,7 +214,7 @@ def paramiko_upload( newrept_fname, username, host, remotepath ): if newrept_basefname in text: debug( newrept_basefname + " already linked from index.html") else: - debug("add new reprt link to index.html") + debug("add new report link to index.html") text = text.replace( blankchunk, blankchunk+'\n'+text2 ) f = ftp.file( 'index.html', 'w+' ) |