⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test.py

📁 finite element library for mathematic majored research
💻 PY
字号:
"Regression tests for FFC"__author__ = "Anders Logg (logg@simula.no)"__date__ = "2007-03-05 -- 2007-05-07"__copyright__ = "Copyright (C) 2007 Anders Logg"__license__  = "GNU GPL version 3 or any later version"import sysfrom os import chdir, listdir, systemfrom difflib import unified_diff# Check all in demo directorychdir("../../demo")form_files = [f for f in listdir(".") if f[-5:] == ".form"]num_forms = len(form_files)num_forms_ok = 0forms_not_ok = []# Iterate over form filesfor form_file in form_files:    print "Compiling and verifying form %s..." % form_file    # Compile form    if system("../bin/ffc -fprecision=10 -s %s" % form_file) == 0:        # Compare against reference        code_file = form_file.split(".")[0] + ".h"        f0 = open("../test/regression/reference/%s" % code_file, "r")        f1 = open(code_file, "r")        c0 = f0.read().split("\n")        c1 = f1.read().split("\n")        f0.close()        f1.close()        if c0 == c1:            num_forms_ok += 1        else:            print "*** Generated code does not match reference, diff follows"            diff = unified_diff(c0, c1)            for line in diff:                print line            forms_not_ok += [form_file]# Print summaryif num_forms_ok == num_forms:    print ""    print "Regression test completed for all %d forms" % num_forms_ok    print ""    print "OK"else:    print ""    print "*** Regression test failed for %d of %d forms:" % (num_forms - num_forms_ok, num_forms)    for form_file in forms_not_ok:        print "  " + form_file    # Generate script for viewing diffs in meld                                    \    file = open("../test/regression/viewdiff.sh", "w")    file.write("#!/bin/sh\n\n")    for form_file in forms_not_ok:        code_file = form_file.split(".")[0] + ".h"        file.write("meld reference/%s ../../demo/%s\n" % (code_file, code_file))    file.close()    print "\nTo view diffs with meld, run the script viewdiff.sh"    # Return error code if tests failed    sys.exit(True)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -