[Python-modules-commits] [fparser] 04/05: Test: Contiguous_Stmt

Alastair McKinstry mckinstry at moszumanska.debian.org
Fri Jul 28 10:45:44 UTC 2017


This is an automated email from the git hooks/post-receive script.

mckinstry pushed a commit to branch dev-f2015
in repository fparser.

commit f46619ef89c0ed7331fdf4d492b7ba90523f2e23
Author: Alastair McKinstry <mckinstry at debian.org>
Date:   Wed Jul 26 16:27:04 2017 +0100

    Test: Contiguous_Stmt
---
 src/fparser/Fortran2015.py            |   10 +
 src/fparser/tests/test_Fortran2003.py | 3625 ---------------------------------
 src/fparser/tests/test_Fortran2015.py | 3563 +++++++++++++++++++++++++++++++-
 3 files changed, 3555 insertions(+), 3643 deletions(-)

diff --git a/src/fparser/Fortran2015.py b/src/fparser/Fortran2015.py
index 4326898..0694757 100644
--- a/src/fparser/Fortran2015.py
+++ b/src/fparser/Fortran2015.py
@@ -2947,6 +2947,16 @@ class Dimension_Stmt(StmtBase): # R535
     def tostr(self):
         return 'DIMENSION :: ' + ', '.join(['%s(%s)' % ns for ns in self.items[0]])
 
+class Contiguous_Stmt(StmtBase): #R536
+    """
+    <contiguous-stmt> = CONTIGUOUS [ :: ] <object-name-list>
+    """
+    subclass_names = []
+    use_names = [ 'Object_Name_list' ]
+    def match(string): return WORDClsBase.match('CONTIGUOUS',Pointer_Decl_List,string,check_colons=True, require_cls=True)
+    tostr = WORDClsBase.toStr_a
+    match = staticmethod(match)
+    
 class Intent_Stmt(StmtBase): # R536
     """
     <intent-stmt> = INTENT ( <intent-spec> ) [ :: ] <dummy-arg-name-list>
diff --git a/src/fparser/tests/test_Fortran2003.py b/src/fparser/tests/test_Fortran2003.py
deleted file mode 100644
index dab0cf8..0000000
--- a/src/fparser/tests/test_Fortran2003.py
+++ /dev/null
@@ -1,3625 +0,0 @@
-# Modified work Copyright (c) 2017 Science and Technology Facilities Council
-# Original work Copyright (c) 1999-2008 Pearu Peterson
-
-# All rights reserved.
-
-# Modifications made as part of the fparser project are distributed
-# under the following license:
-
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-
-# 1. Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-
-# 2. Redistributions in binary form must reproduce the above copyright
-# notice, this list of conditions and the following disclaimer in the
-# documentation and/or other materials provided with the distribution.
-
-# 3. Neither the name of the copyright holder nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-# --------------------------------------------------------------------
-
-# The original software (in the f2py project) was distributed under
-# the following license:
-
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are met:
-
-#   a. Redistributions of source code must retain the above copyright notice,
-#      this list of conditions and the following disclaimer.
-#   b. Redistributions in binary form must reproduce the above copyright
-#      notice, this list of conditions and the following disclaimer in the
-#      documentation and/or other materials provided with the distribution.
-#   c. Neither the name of the F2PY project nor the names of its
-#      contributors may be used to endorse or promote products derived from
-#      this software without specific prior written permission.
-
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-# ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR
-# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
-# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
-# DAMAGE.
-
-from fparser.Fortran2015 import *
-from fparser.api import get_reader
-
-from nose.tools import assert_equal
-import pytest
-
-def assertRaises(exc, cls, s):
-    try:
-        cls(s)
-        raise AssertionError('Expected %s but got nothing' % exc)
-    except exc:
-        pass
-
-
-###############################################################################
-############################### SECTION  2 ####################################
-###############################################################################
-
-def test_Program(): # R201
-
-        cls = Program
-        reader = get_reader('''\
-      subroutine foo
-      end subroutine Foo
-      subroutine bar
-      end
-      ''')
-        a = cls(reader)
-        assert isinstance(a, cls),`a`
-        assert "SUBROUTINE foo\nEND SUBROUTINE Foo\nSUBROUTINE bar\n" \
-            "END SUBROUTINE bar" == str(a)
-
-        reader = get_reader('''\
-      subroutine foo (*)
-      end subroutine foo
-      ''')
-        a = cls(reader)
-        assert isinstance(a, cls),`a`
-        assert_equal(str(a), 'SUBROUTINE foo(*)\nEND SUBROUTINE foo')
-
-def test_Specification_Part(): # R204
-
-    reader = get_reader('''\
-    integer a''')
-    cls = Specification_Part
-    a = cls(reader)
-    assert isinstance(a, cls),`a`
-    assert_equal(str(a),'INTEGER :: a')
-    assert_equal(repr(a), "Specification_Part(Type_Declaration_Stmt(Intrinsic_Type_Spec('INTEGER', None), None, Entity_Decl(Name('a'), None, None, None)))")
-
-    a = cls(get_reader('''
-type a
-end type a
-type b
-end type b
-    '''))
-    assert isinstance(a, cls),`a`
-    assert_equal(str(a),'TYPE :: a\nEND TYPE a\nTYPE :: b\nEND TYPE b')
-
-###############################################################################
-############################### SECTION  3 ####################################
-###############################################################################
-
-def test_Name(): # R304
-
-        a = Name('a')
-        assert isinstance(a,Name),`a`
-        a = Name('a2')
-        assert isinstance(a,Name),`a`
-        a = Designator('a')
-        assert isinstance(a,Name),`a`
-        a = Constant('a')
-        assert isinstance(a,Name),`a`
-        a = Expr('a')
-        assert isinstance(a,Name),`a`
-
-def test_Literal_Constant(): # R305
-
-    cls = Constant
-    a = cls('.false.')
-    assert isinstance(a, Logical_Literal_Constant), `a`
-    assert str(a)=='.FALSE.'
-
-def test_Literal_Constant(): # R306
-
-    cls = Literal_Constant
-    a = cls('.false.')
-    assert isinstance(a, Logical_Literal_Constant), `a`
-    assert str(a)=='.FALSE.'
-
-###############################################################################
-############################### SECTION  4 ####################################
-###############################################################################
-
-def test_Type_Param_Value(): # 402
-
-        cls = Type_Param_Value
-        a = cls('*')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'*')
-        assert_equal(repr(a),"Type_Param_Value('*')")
-
-        a = cls(':')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),':')
-
-        a = cls('1+2')
-        assert isinstance(a,Level_2_Expr),`a`
-        assert_equal(str(a),'1 + 2')
-
-def test_Intrinsic_Type_Spec(): # R403
-
-        cls = Intrinsic_Type_Spec
-        a = cls('INTEGER')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'INTEGER')
-        assert_equal(repr(a), "Intrinsic_Type_Spec('INTEGER', None)")
-
-        a = cls('Integer*2')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'INTEGER*2')
-
-        a = cls('real*2')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'REAL*2')
-
-        a = cls('logical*2')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'LOGICAL*2')
-
-        a = cls('complex*2')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'COMPLEX*2')
-
-        a = cls('character*2')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'CHARACTER*2')
-
-        a = cls('double complex')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'DOUBLE COMPLEX')
-
-        a = cls('double  precision')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'DOUBLE PRECISION')
-
-def test_Kind_Selector(): # R404
-
-        cls = Kind_Selector
-        a = cls('(1)')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'(KIND = 1)')
-        assert_equal(repr(a),"Kind_Selector('(', Int_Literal_Constant('1', None), ')')")
-
-        a = cls('(kind=1+2)')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'(KIND = 1 + 2)')
-
-        a = cls('* 1')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'*1')
-
-def test_Signed_Int_Literal_Constant(): # R405
-
-        cls = Signed_Int_Literal_Constant
-        a = cls('1')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'1')
-        assert_equal(repr(a),"%s('1', None)" % (cls.__name__))
-
-        a = cls('+ 21_2')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'+21_2')
-        assert_equal(repr(a),"%s('+21', '2')" % (cls.__name__))
-
-        a = cls('-21_SHORT')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'-21_SHORT')
-
-        a = cls('21_short')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'21_short')
-
-        a = cls('+1976354279568241_8')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'+1976354279568241_8')
-
-def test_Int_Literal_Constant(): # R406
-
-        cls = Int_Literal_Constant
-        a = cls('1')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'1')
-        assert_equal(repr(a),"%s('1', None)" % (cls.__name__))
-
-        a = cls('21_2')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'21_2')
-        assert_equal(repr(a),"%s('21', '2')" % (cls.__name__))
-
-        a = cls('21_SHORT')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'21_SHORT')
-
-        a = cls('21_short')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'21_short')
-
-        a = cls('1976354279568241_8')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'1976354279568241_8')
-
-def test_Binary_Constant(): # R412
-
-        cls = Boz_Literal_Constant
-        bcls = Binary_Constant
-        a = cls('B"01"')
-        assert isinstance(a,bcls),`a`
-        assert_equal(str(a),'B"01"')
-        assert_equal(repr(a),"%s('B\"01\"')" % (bcls.__name__))
-
-def test_Octal_Constant(): # R413
-
-        cls = Boz_Literal_Constant
-        ocls = Octal_Constant
-        a = cls('O"017"')
-        assert isinstance(a,ocls),`a`
-        assert_equal(str(a),'O"017"')
-        assert_equal(repr(a),"%s('O\"017\"')" % (ocls.__name__))
-
-def test_Hex_Constant(): # R414
-
-        cls = Boz_Literal_Constant
-        zcls = Hex_Constant
-        a = cls('Z"01A"')
-        assert isinstance(a,zcls),`a`
-        assert_equal(str(a),'Z"01A"')
-        assert_equal(repr(a),"%s('Z\"01A\"')" % (zcls.__name__))
-
-def test_Signed_Real_Literal_Constant(): # R416
-
-        cls = Signed_Real_Literal_Constant
-        a = cls('12.78')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'12.78')
-        assert_equal(repr(a),"%s('12.78', None)" % (cls.__name__))
-
-        a = cls('+12.78_8')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'+12.78_8')
-        assert_equal(repr(a),"%s('+12.78', '8')" % (cls.__name__))
-
-        a = cls('- 12.')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'-12.')
-
-        a = cls('1.6E3')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'1.6E3')
-
-        a = cls('+1.6E3_8')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'+1.6E3_8')
-
-        a = cls('1.6D3')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'1.6D3')
-
-        a = cls('-1.6E-3')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'-1.6E-3')
-        a = cls('1.6E+3')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'1.6E+3')
-
-        a = cls('3E4')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'3E4')
-
-        a = cls('.123')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'.123')
-
-        a = cls('+1.6E-3')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'+1.6E-3')
-
-        a = cls('10.9E7_QUAD')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'10.9E7_QUAD')
-
-        a = cls('-10.9e-17_quad')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'-10.9E-17_quad')
-
-def test_Real_Literal_Constant(): # R417
-
-        cls = Real_Literal_Constant
-        a = cls('12.78')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'12.78')
-        assert_equal(repr(a),"%s('12.78', None)" % (cls.__name__))
-
-        a = cls('12.78_8')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'12.78_8')
-        assert_equal(repr(a),"%s('12.78', '8')" % (cls.__name__))
-
-        a = cls('12.')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'12.')
-
-        a = cls('1.6E3')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'1.6E3')
-
-        a = cls('1.6E3_8')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'1.6E3_8')
-
-        a = cls('1.6D3')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'1.6D3')
-
-        a = cls('1.6E-3')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'1.6E-3')
-        a = cls('1.6E+3')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'1.6E+3')
-
-        a = cls('3E4')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'3E4')
-
-        a = cls('.123')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'.123')
-
-        a = cls('1.6E-3')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'1.6E-3')
-
-        a = cls('10.9E7_QUAD')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'10.9E7_QUAD')
-
-        a = cls('10.9e-17_quad')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'10.9E-17_quad')
-
-        a = cls('0.0D+0')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'0.0D+0')
-
-def test_Char_Selector(): # R424
-
-        cls = Char_Selector
-        a = cls('(len=2, kind=8)')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'(LEN = 2, KIND = 8)')
-        assert_equal(repr(a),"Char_Selector(Int_Literal_Constant('2', None), Int_Literal_Constant('8', None))")
-
-
-        a = cls('(2, kind=8)')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'(LEN = 2, KIND = 8)')
-
-        a = cls('(2, 8)')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'(LEN = 2, KIND = 8)')
-
-        a = cls('(kind=8)')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'(KIND = 8)')
-
-        a = cls('(kind=8,len=2)')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'(LEN = 2, KIND = 8)')
-
-def test_Complex_Literal_Constant(): # R421
-
-        cls = Complex_Literal_Constant
-        a = cls('(1.0, -1.0)')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'(1.0, -1.0)')
-        assert_equal(repr(a),"Complex_Literal_Constant(Signed_Real_Literal_Constant('1.0', None), Signed_Real_Literal_Constant('-1.0', None))")
-
-        a = cls('(3,3.1E6)')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'(3, 3.1E6)')
-
-        a = cls('(4.0_4, 3.6E7_8)')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'(4.0_4, 3.6E7_8)')
-
-        a = cls('( 0., PI)')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'(0., PI)')
-
-
-def test_Type_Name(): # C424
-
-        cls = Type_Name
-        a = cls('a')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'a')
-        assert_equal(repr(a),"Type_Name('a')")
-
-        assertRaises(NoMatchError,cls,'integer')
-        assertRaises(NoMatchError,cls,'doubleprecision')
-
-def test_Length_Selector(): # R425
-
-        cls = Length_Selector
-        a = cls('( len = *)')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'(LEN = *)')
-        assert_equal(repr(a),"Length_Selector('(', Type_Param_Value('*'), ')')")
-
-        a = cls('*2,')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'*2')
-
-def test_Char_Length(): # R426
-
-        cls = Char_Length
-        a = cls('(1)')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'(1)')
-        assert_equal(repr(a),"Char_Length('(', Int_Literal_Constant('1', None), ')')")
-
-        a = cls('1')
-        assert isinstance(a,Int_Literal_Constant),`a`
-        assert_equal(str(a),'1')
-
-        a = cls('(*)')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'(*)')
-
-        a = cls('(:)')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'(:)')
-
-def test_Char_Literal_Constant(): # R427
-
-        cls = Char_Literal_Constant
-        a = cls('NIH_"DO"')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'NIH_"DO"')
-        assert_equal(repr(a),'Char_Literal_Constant(\'"DO"\', \'NIH\')')
-
-        a = cls("'DO'")
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),"'DO'")
-        assert_equal(repr(a),'Char_Literal_Constant("\'DO\'", None)')
-
-        a = cls("'DON''T'")
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),"'DON''T'")
-
-        a = cls('"DON\'T"')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'"DON\'T"')
-
-        a = cls('""')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'""')
-
-        a = cls("''")
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),"''")
-
-        a = cls('"hey ha(ada)\t"')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'"hey ha(ada)\t"')
-
-def test_Logical_Literal_Constant(): # R428
-
-        cls = Logical_Literal_Constant
-        a = cls('.TRUE.')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'.TRUE.')
-        assert_equal(repr(a),"%s('.TRUE.', None)" % (cls.__name__))
-
-        a = cls('.True.')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'.TRUE.')
-
-        a = cls('.FALSE.')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'.FALSE.')
-        
-        a = cls('.false.')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'.FALSE.')
-
-        a = cls('.TRUE._HA')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'.TRUE._HA')
-
-def test_Derived_Type_Stmt(): # R430
-
-        cls = Derived_Type_Stmt
-        a = cls('type a')
-        assert isinstance(a, cls),`a`
-        assert_equal(str(a),'TYPE :: a')
-        assert_equal(repr(a),"Derived_Type_Stmt(None, Type_Name('a'), None)")
-
-        a = cls('type ::a(b,c)')
-        assert isinstance(a, cls),`a`
-        assert_equal(str(a),'TYPE :: a(b, c)')
-
-        a = cls('type, private, abstract::a(b,c)')
-        assert isinstance(a, cls),`a`
-        assert_equal(str(a),'TYPE, PRIVATE, ABSTRACT :: a(b, c)')
-
-def test_Type_Name(): # C423
-
-        cls = Type_Name
-        a = cls('a')
-        assert isinstance(a, cls),`a`
-        assert_equal(str(a),'a')
-        assert_equal(repr(a),"Type_Name('a')")
-
-def test_Type_Attr_Spec(): # R431
-
-        cls = Type_Attr_Spec
-        a = cls('abstract')
-        assert isinstance(a, cls),`a`
-        assert_equal(str(a),'ABSTRACT')
-        assert_equal(repr(a),"Type_Attr_Spec('ABSTRACT', None)")
-
-        a = cls('bind (c )')
-        assert isinstance(a, cls),`a`
-        assert_equal(str(a),'BIND(C)')
-
-        a = cls('extends(a)')
-        assert isinstance(a, cls),`a`
-        assert_equal(str(a),'EXTENDS(a)')
-
-        a = cls('private')
-        assert isinstance(a, Access_Spec),`a`
-        assert_equal(str(a),'PRIVATE')
-
-
-def test_End_Type_Stmt(): # R433
-
-        cls = End_Type_Stmt
-        a = cls('end type')
-        assert isinstance(a, cls),`a`
-        assert_equal(str(a),'END TYPE')
-        assert_equal(repr(a),"End_Type_Stmt('TYPE', None)")
-
-        a = cls('end type  a')
-        assert isinstance(a, cls),`a`
-        assert_equal(str(a),'END TYPE a')
-
-def test_Sequence_Stmt(): # R434
-
-        cls = Sequence_Stmt
-        a = cls('sequence')
-        assert isinstance(a, cls),`a`
-        assert_equal(str(a),'SEQUENCE')
-        assert_equal(repr(a),"Sequence_Stmt('SEQUENCE')")
-
-def test_Type_Param_Def_Stmt(): # R435
-
-        cls = Type_Param_Def_Stmt
-        a = cls('integer ,kind :: a')
-        assert isinstance(a, cls),`a`
-        assert_equal(str(a),'INTEGER, KIND :: a')
-        assert_equal(repr(a),"Type_Param_Def_Stmt(None, Type_Param_Attr_Spec('KIND'), Name('a'))")
-
-        a = cls('integer*2 ,len :: a=3, b=2+c')
-        assert isinstance(a, cls),`a`
-        assert_equal(str(a),'INTEGER*2, LEN :: a = 3, b = 2 + c')
-
-def test_Type_Param_Decl(): # R436
-
-        cls = Type_Param_Decl
-        a = cls('a=2')
-        assert isinstance(a, cls),`a`
-        assert_equal(str(a),'a = 2')
-        assert_equal(repr(a),"Type_Param_Decl(Name('a'), '=', Int_Literal_Constant('2', None))")
-
-        a = cls('a')
-        assert isinstance(a, Name),`a`
-        assert_equal(str(a),'a')
-
-def test_Type_Param_Attr_Spec(): # R437
-
-        cls = Type_Param_Attr_Spec
-        a = cls('kind')
-        assert isinstance(a, cls),`a`
-        assert_equal(str(a),'KIND')
-        assert_equal(repr(a),"Type_Param_Attr_Spec('KIND')")
-
-        a = cls('len')
-        assert isinstance(a, cls),`a`
-        assert_equal(str(a),'LEN')
-
-def test_Component_Attr_Spec(): # R441
-
-        cls = Component_Attr_Spec
-        a = cls('pointer')
-        assert isinstance(a, cls),`a`
-        assert_equal(str(a),'POINTER')
-        assert_equal(repr(a),"Component_Attr_Spec('POINTER')")
-
-        a = cls('allocatable')
-        assert isinstance(a, cls),`a`
-        assert_equal(str(a),'ALLOCATABLE')
-
-        a = cls('dimension(a)')
-        assert isinstance(a, Dimension_Component_Attr_Spec),`a`
-        assert_equal(str(a),'DIMENSION(a)')
-
-        a = cls('private')
-        assert isinstance(a, Access_Spec),`a`
-        assert_equal(str(a),'PRIVATE')
-
-def test_Component_Decl(): # R442
-
-        cls = Component_Decl
-        a = cls('a(1)')
-        assert isinstance(a, cls),`a`
-        assert_equal(str(a),'a(1)')
-        assert_equal(repr(a),"Component_Decl(Name('a'), Explicit_Shape_Spec(None, Int_Literal_Constant('1', None)), None, None)")
-
-        a = cls('a(1)*(3)')
-        assert isinstance(a, cls),`a`
-        assert_equal(str(a),'a(1)*(3)')
-
-        a = cls('a(1)*(3) = 2')
-        assert isinstance(a, cls),`a`
-        assert_equal(str(a),'a(1)*(3) = 2')
-
-        a = cls('a(1) => NULL')
-        assert isinstance(a, cls),`a`
-        assert_equal(str(a),'a(1) => NULL')
-
-def test_Proc_Component_Def_Stmt(): # R445
-    cls = Proc_Component_Def_Stmt
-    a = cls('procedure(), pointer :: a')
-    assert isinstance(a, cls),`a`
-    assert_equal(str(a),'PROCEDURE(), POINTER :: a')
-
-    a = cls('procedure(real*8), pointer, pass(n) :: a, b')
-    assert isinstance(a, cls),`a`
-    assert_equal(str(a),'PROCEDURE(REAL*8), POINTER, PASS(n) :: a, b')
-
-def test_Type_Bound_Procedure_Part(): # R448
-    cls = Type_Bound_Procedure_Part
-    a = cls(get_reader('''
-contains
-procedure, pass :: length => point_length
-    '''))
-    assert isinstance(a, cls),`a`
-    assert_equal(str(a),'CONTAINS\nPROCEDURE, PASS :: length => point_length')
-
-def test_Proc_Binding_Stmt(): # R450
-    cls = Proc_Binding_Stmt
-    a = cls('procedure, pass :: length => point_length')
-    assert isinstance(a, Specific_Binding),`a`
-    assert_equal(str(a),'PROCEDURE, PASS :: length => point_length')
-
-def test_Specific_Binding(): # R451
-    cls = Specific_Binding
-    a = cls('procedure, pass :: length => point_length')
-    assert isinstance(a, cls),`a`
-    assert_equal(str(a),'PROCEDURE, PASS :: length => point_length')
-
-def test_Generic_Binding(): # R452
-    cls = Generic_Binding
-    a = cls('generic :: a => b')
-    assert isinstance(a, cls),`a`
-    assert_equal(str(a),'GENERIC :: a => b')
-
-    a = cls('generic, private :: read(formatted) => b,c')
-    assert isinstance(a, cls),`a`
-    assert_equal(str(a),'GENERIC, PRIVATE :: READ(FORMATTED) => b, c')
-
-def test_Final_Binding(): # R454
-
-        cls = Final_Binding
-        a = cls('final a, b')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'FINAL :: a, b')
-        assert_equal(repr(a),"Final_Binding('FINAL', Final_Subroutine_Name_List(',', (Name('a'), Name('b'))))")
-
-        a = cls('final::a')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'FINAL :: a')
-
-def test_Derived_Type_Spec(): # R455
-
-        cls = Derived_Type_Spec
-        a = cls('a(b)')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'a(b)')
-        assert_equal(repr(a),"Derived_Type_Spec(Type_Name('a'), Name('b'))")
-
-        a = cls('a(b,c,g=1)')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'a(b, c, g = 1)')
-
-        a = cls('a')
-        assert isinstance(a,Name),`a`
-        assert_equal(str(a),'a')
-
-        a = cls('a()')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'a()')
-
-def test_Type_Param_Spec(): # R456
-
-        cls = Type_Param_Spec
-        a = cls('a=1')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'a = 1')
-        assert_equal(repr(a),"Type_Param_Spec(Name('a'), Int_Literal_Constant('1', None))")
-
-        a = cls('k=a')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'k = a')
-
-        a = cls('k=:')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'k = :')
-
-def test_Type_Param_Spec_List(): # R456-list
-
-        cls = Type_Param_Spec_List
-
-        a = cls('a,b')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'a, b')
-        assert_equal(repr(a),"Type_Param_Spec_List(',', (Name('a'), Name('b')))")
-
-        a = cls('a')
-        assert isinstance(a,Name),`a`
-
-        a = cls('k=a,c,g=1')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'k = a, c, g = 1')
-
-def test_Structure_Constructor_2(): # R457.b
-
-        cls = Structure_Constructor_2
-        a = cls('k=a')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'k = a')
-        assert_equal(repr(a),"Structure_Constructor_2(Name('k'), Name('a'))")
-
-        a = cls('a')
-        assert isinstance(a,Name),`a`
-        assert_equal(str(a),'a')
-
-def test_Structure_Constructor(): # R457
-
-        cls = Structure_Constructor
-        a = cls('t()')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'t()')
-        assert_equal(repr(a),"Structure_Constructor(Type_Name('t'), None)")
-
-        a = cls('t(s=1, a)')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'t(s = 1, a)')
-
-        a = cls('a=k')
-        assert isinstance(a,Structure_Constructor_2),`a`
-        assert_equal(str(a),'a = k')
-        assert_equal(repr(a),"Structure_Constructor_2(Name('a'), Name('k'))")
-
-        a = cls('a')
-        assert isinstance(a,Name),`a`
-        assert_equal(str(a),'a')
-
-def test_Component_Spec(): # R458
-
-        cls = Component_Spec
-        a = cls('k=a')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'k = a')
-        assert_equal(repr(a),"Component_Spec(Name('k'), Name('a'))")
-
-        a = cls('a')
-        assert isinstance(a,Name),`a`
-        assert_equal(str(a),'a')
-
-        a = cls('a % b')
-        assert isinstance(a, Proc_Component_Ref),`a`
-        assert_equal(str(a),'a % b')
-
-        a = cls('s =a % b')
-        assert isinstance(a, Component_Spec),`a`
-        assert_equal(str(a),'s = a % b')
-
-def test_Component_Spec_List(): # R458-list
-
-        cls = Component_Spec_List
-        a = cls('k=a, b')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'k = a, b')
-        assert_equal(repr(a),"Component_Spec_List(',', (Component_Spec(Name('k'), Name('a')), Name('b')))")
-
-        a = cls('k=a, c')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'k = a, c')
-
-def test_Enum_Def(): # R460
-    cls = Enum_Def
-    a = cls(get_reader('''
-enum, bind(c)
-enumerator :: red = 4, blue = 9
-enumerator yellow
-end enum
-    '''))
-    assert isinstance(a,cls),`a`
-    assert_equal(str(a),'ENUM, BIND(C)\n  ENUMERATOR :: red = 4, blue = 9\n  ENUMERATOR :: yellow\nEND ENUM')
-
-def test_Enum_Def_Stmt(): # R461
-    cls = Enum_Def_Stmt
-    a = cls('enum, bind(c)')
-    assert isinstance(a,cls),`a`
-    assert_equal(str(a),'ENUM, BIND(C)')
-
-def test_Array_Constructor(): # R465
-
-        cls = Array_Constructor
-        a = cls('(/a/)')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'(/a/)')
-        assert_equal(repr(a),"Array_Constructor('(/', Name('a'), '/)')")
-
-        a = cls('[a]')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'[a]')
-        assert_equal(repr(a),"Array_Constructor('[', Name('a'), ']')")
-
-        a = cls('[integer::a]')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'[INTEGER :: a]')
-
-        a = cls('[integer::a,b]')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'[INTEGER :: a, b]')
-
-def test_Ac_Spec(): # R466
-
-        cls = Ac_Spec
-        a = cls('integer ::')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'INTEGER ::')
-        assert_equal(repr(a),"Ac_Spec(Intrinsic_Type_Spec('INTEGER', None), None)")
-
-        a = cls('integer :: a,b')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'INTEGER :: a, b')
-
-        a = cls('a,b')
-        assert isinstance(a,Ac_Value_List),`a`
-        assert_equal(str(a),'a, b')
-
-        a = cls('integer :: a, (a, b, n = 1, 5)')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'INTEGER :: a, (a, b, n = 1, 5)')
-
-def test_Ac_Value_List(): # R469-list
-
-        cls = Ac_Value_List
-        a = cls('a, b')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'a, b')
-        assert_equal(repr(a),"Ac_Value_List(',', (Name('a'), Name('b')))")
-
-        a = cls('a')
-        assert isinstance(a,Name),`a`
-        assert_equal(str(a),'a')
-
-def test_Ac_Implied_Do(): # R470
-
-        cls = Ac_Implied_Do
-        a = cls('( a, b, n = 1, 5 )')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'(a, b, n = 1, 5)')
-        assert_equal(repr(a),"Ac_Implied_Do(Ac_Value_List(',', (Name('a'), Name('b'))), Ac_Implied_Do_Control(Name('n'), [Int_Literal_Constant('1', None), Int_Literal_Constant('5', None)]))")
-
-def test_Ac_Implied_Do_Control(): # R471
-
-        cls = Ac_Implied_Do_Control
-        a = cls('n = 3, 5')
-        assert isinstance(a,cls),`a`
-        assert_equal(str(a),'n = 3, 5')
-        assert_equal(repr(a),"Ac_Implied_Do_Control(Name('n'), [Int_Literal_Constant('3', None), Int_Literal_Constant('5', None)])")
-
... 6255 lines suppressed ...

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/fparser.git



More information about the Python-modules-commits mailing list