예제 #1
0
 def test_dgf(self):
     inst = dgf.grammar.instance()
     d = inst.parseString(test)
     m = Mesh(3)
     dgf.parse(m, d.dgf)
     d = inst.parseFile(os.path.join(self.grid_dir, 'simplex.dgf'))
     m = Mesh(3)
     dgf.parse(m, d.dgf)
예제 #2
0
def _convertDiff(filename, do_diff=False):
    m = Mesh(3)
    sf = filename[filename.rindex('.'):]
    if sf == '.smesh':
        sf_o = '.ply'
    else:
        sf_o = '.smesh'
    try:
        m.parse(filename)
        t = NamedTemporaryFile(suffix=sf_o)
        m.write(t.name)
        m.parse(t.name)
        t2 = NamedTemporaryFile(suffix=sf)
        fn2 = m.write(t2.name)
    except Exception as e:
        t.seek(0)
        open('/tmp/error.log', 'w').writelines(t.readlines())
        print((traceback.format_exc()))
        raise e
    #diff = difflib.unified_diff( open( filename ).readlines(), open( fn2 ).readlines() )
    if do_diff:
        print('-' * 15, 'generating diff output, convertDiff')
        diff = difflib.HtmlDiff().make_file(
            open(filename).readlines(),
            open(fn2).readlines())
        open('%s.convert.diff.html' % filename, 'w').writelines(diff)
예제 #3
0
 def test_same(self):
     m1 = Mesh(3)
     infile_name = "2d.smesh"
     infile_path = os.path.join(self.grid_dir, infile_name)
     m1.parse(infile_path)
     outfile_path = os.path.join(self.tmpdir, infile_name)
     fn2 = m1.write(outfile_path)
     self.assertEqual(fn2, outfile_path)
     m2 = Mesh(3)
     m2.parse(outfile_path)
     are_same = m2.equals(m1)
     if not are_same:
         import difflib
         diff = difflib.HtmlDiff().make_file(
             open(infile_path).readlines(),
             open(outfile_path).readlines())
         open(os.path.join(self.tmpdir, '%s.diff.html' % infile_name),
              'w').writelines(diff)
     self.assertTrue(are_same)
예제 #4
0
def _parseWriteDiff(filename, do_diff=False):
    m = Mesh(3)
    m.parse(filename)
    t = NamedTemporaryFile(suffix=filename[filename.rindex('.'):])
    fn2 = m.write(t.name)
    #diff = difflib.unified_diff( open( filename ).readlines(), open( fn2 ).readlines() )
    if do_diff:
        print(('-' * 15, 'generating diff output, parseWriteDiff'))
        diff = difflib.HtmlDiff().make_file(
            open(filename).readlines(),
            open(fn2).readlines())
        open('%s.diff.html' % filename, 'w').writelines(diff)