コード例 #1
0
ファイル: test_pybdf.py プロジェクト: yqliaohk/pyNastran
    def test_unicode_errors1(self):
        """tests some error handling"""
        bdf_filename = 'unicode.bdf'
        with open(bdf_filename, 'w') as bdf_file:
            bdf_file.write('CEND\n'
                           'SUBCASE 1\n'
                           '  DISP = ALL\n'
                           'BEGIN BULK\n'
                           'GRID,1,,0.,0.,0.\n'
                           'GRID.2,,1.,0.,0.\n'
                           'GRID,3,,1.,1.,0.\n'
                           'GRID,4,,0.,1.,0.\n'
                           '$ helló wörld from two\n'
                           'CQUAD4,1,2,3,4,5',
                           #'ENDDATA'
                           )

        read_includes = True
        dumplines = True
        encoding = 'utf8'
        pybdf = BDFInputPy(read_includes,
                           dumplines,
                           encoding,
                           nastran_format='msc',
                           consider_superelements=False,
                           log=None,
                           debug=False)
        if sys.platform == 'win32':
            with self.assertRaises(RuntimeError):
                pybdf.get_lines(bdf_filename, punch=None, make_ilines=True)
        else:
            pybdf.get_lines(bdf_filename, punch=None, make_ilines=True)
コード例 #2
0
ファイル: test_pybdf.py プロジェクト: yqliaohk/pyNastran
    def test_unicode_errors2(self):
        """tests some error handling"""
        bdf_filename = 'unicode.bdf'
        with open(bdf_filename, 'w') as bdf_file:
            bdf_file.write('CEND\n'
                           'SUBCASE 1\n'
                           '  DISP = ALL\n'
                           'BEGIN BULK\n'
                           'GRID,1,,0.,0.,0.\n'
                           'GRID.2,,1.,0.,0.\n'
                           'GRID,3,,1.,1.,0.\n'
                           'GRID,4,,0.,1.,0.\n'
                           '$ helló wörld from two\n'
                           'CQUAD4,1,2,3,4,5',
                           #'ENDDATA'
                           )

        read_includes = True
        dumplines = True
        #unused_bulk_data_lines1 = ...

        encoding = 'latin1'
        pybdf = BDFInputPy(read_includes,
                           dumplines,
                           encoding,
                           nastran_format='msc',
                           consider_superelements=False,
                           log=None,
                           debug=False)
        unused_bulk_data_lines2 = pybdf.get_lines(bdf_filename,
                                                  punch=None,
                                                  make_ilines=True)[3]
        os.remove(bdf_filename)

        #--------------
        bdf_filename = 'inc.inc'
        with open(bdf_filename, 'w') as bdf_file:
            bdf_file.write('GRID,3,,1.,1.,0.\n'
                           'GRID,4,,0.,1.,0.\n'
                           "INCLUDE 'main.bdf'\n")

        bdf_filename = 'main.bdf'
        with open(bdf_filename, 'w') as bdf_file:
            bdf_file.write('GRID,1,,0.,0.,0.\n' "INCLUDE 'inc.inc'\n")

        pybdf = BDFInputPy(read_includes,
                           dumplines,
                           encoding,
                           nastran_format='msc',
                           consider_superelements=False,
                           log=None,
                           debug=False)
        with self.assertRaises(RuntimeError):
            unused_bulk_data_lines3 = pybdf.get_lines(bdf_filename,
                                                      punch=True,
                                                      make_ilines=True)
        os.remove('main.bdf')
        os.remove('inc.inc')
コード例 #3
0
ファイル: test_pybdf.py プロジェクト: yqliaohk/pyNastran
    def test_no_punch(self):
        """tests not definng punch"""
        bdf_filename = StringIO()
        bdf_filename.write('GRID,1,,0.,0.,0.\n'
                           'GRID.2,,1.,0.,0.\n'
                           'GRID,3,,1.,1.,0.\n'
                           'GRID,4,,0.,1.,0.\n'
                           'CQUAD4,1,2,3,4,5',
                           #'ENDDATA'
                           )
        bdf_filename.seek(0)
        read_includes = True
        dumplines = True
        encoding = None
        pybdf = BDFInputPy(read_includes,
                           dumplines,
                           encoding,
                           nastran_format='msc',
                           consider_superelements=False,
                           log=None,
                           debug=False)
        with self.assertRaises(MissingDeckSections):
            bulk_data_lines = pybdf.get_lines(bdf_filename,
                                              punch=False,
                                              make_ilines=True)[3]

        #pybdf = BDFInputPy(read_includes, dumplines, encoding, nastran_format='msc',
        #consider_superelements=False, log=None, debug=False)
        bdf_filename.seek(0)
        bulk_data_lines = pybdf.get_lines(bdf_filename,
                                          punch=None,
                                          make_ilines=True)[3]
        assert len(bulk_data_lines) == 5, bulk_data_lines
        #print(bulk_data_lines)
        # -----------------------------------
        bdf_filename = StringIO()
        bdf_filename.write('CEND\n'
                           'GRID,1,,0.,0.,0.\n'
                           'GRID.2,,1.,0.,0.\n'
                           'GRID,3,,1.,1.,0.\n'
                           'GRID,4,,0.,1.,0.\n'
                           'CQUAD4,1,2,3,4,5',
                           #'ENDDATA'
                           )
        bdf_filename.seek(0)
        bulk_data_lines = pybdf.get_lines(bdf_filename,
                                          punch=None,
                                          make_ilines=True)[3]
        assert len(bulk_data_lines) == 5, bulk_data_lines
コード例 #4
0
ファイル: test_pybdf.py プロジェクト: yqliaohk/pyNastran
    def test_get_lines_2(self):
        """tests system control lines"""
        with open('junk.bdf', 'w') as bdf_file:
            bdf_file.write('CEND\n')
            bdf_file.write('BEGIN BULK\n')
            bdf_file.write('GRID,1\n')
            bdf_file.write('ENDDATA\n')

        bdf_filename = StringIO()
        bdf_filename.write('ASSIGN FEM="junk.bdf"\n'
                           'ASSIGN MATRIX=junk.mat\n'
                           'ASSIGN OUTPUT4=junk.op4\n'
                           'CEND\n'
                           'BEGIN BULK\n'
                           'GRID,2')
        bdf_filename.seek(0)

        read_includes = True
        dumplines = True
        encoding = None
        pybdf = BDFInputPy(read_includes,
                           dumplines,
                           encoding,
                           nastran_format='zona',
                           consider_superelements=False,
                           log=None,
                           debug=False)
        bulk_data_lines = pybdf.get_lines(bdf_filename,
                                          punch=False,
                                          make_ilines=True)[3]
        #(unused_system_lines,
        #unused_executive_control_lines,
        #unused_case_control_lines,
        #bulk_data_lines,
        #unused_bulk_data_ilines) = out
        #print('bulk_data_linesA =', bulk_data_lines)
        assert bulk_data_lines == ['GRID,1', 'GRID,2'], bulk_data_lines

        #-----------------------------------------------------------------------
        bdf_filename = StringIO()
        bdf_filename.write('ASSIGN FEM=junk.f06\n'
                           'CEND\n'
                           'BEGIN BULK\n'
                           'GRID,2\n'
                           #'ENDDATA'
                           )
        bdf_filename.seek(0)

        read_includes = True
        dumplines = True
        encoding = None
        pybdf = BDFInputPy(read_includes,
                           dumplines,
                           encoding,
                           nastran_format='zona',
                           consider_superelements=False,
                           log=None,
                           debug=False)
        bulk_data_lines = pybdf.get_lines(bdf_filename,
                                          punch=False,
                                          make_ilines=True)[3]
        #print('bulk_data_linesB =', bulk_data_lines)

        #-----------------------------------------------------------------------
        bdf_filename = StringIO()
        bdf_filename.write("ASSIGN FEM='junk.f06'\n"
                           'CEND\n'
                           'BEGIN BULK\n'
                           'GRID,3\n'
                           #'ENDDATA'
                           )
        bdf_filename.seek(0)

        read_includes = True
        dumplines = True
        encoding = None
        pybdf = BDFInputPy(read_includes,
                           dumplines,
                           encoding,
                           nastran_format='zona',
                           consider_superelements=False,
                           log=None,
                           debug=False)
        bulk_data_lines = pybdf.get_lines(bdf_filename,
                                          punch=False,
                                          make_ilines=True)[3]
        #print('bulk_data_linesC =', bulk_data_lines)
        os.remove('junk.bdf')