コード例 #1
0
def test_add_template_function():
    parser = Parser("test.hpp")
    parser.init_ast()
    parser.add_template_function("myFun", "void")
    assert_equal(len(parser.ast.nodes), 1)
    parser.add_template_type("T")
    assert_equal(len(parser.ast.nodes[0].template_types), 1)
コード例 #2
0
ファイル: test_parser.py プロジェクト: shoman2/cythonwrapper
def test_add_template_function():
    parser = Parser("test.hpp")
    parser.init_ast()
    parser.add_template_function("myFun", "void")
    assert_equal(len(parser.ast.nodes), 1)
    parser.add_template_type("T")
    assert_equal(len(parser.ast.nodes[0].template_types), 1)
コード例 #3
0
ファイル: test_parser.py プロジェクト: shoman2/cythonwrapper
def test_distributed_struct():
    parser = Parser("test.hpp")
    parser.init_ast()
    parser.add_struct_decl("")
    assert_is_not_none(parser.unnamed_struct)
    parser.add_typedef("struct mystruct", "mystruct")
    assert_is_none(parser.unnamed_struct)
    assert_equal(len(parser.ast.nodes), 1)
コード例 #4
0
def test_distributed_struct():
    parser = Parser("test.hpp")
    parser.init_ast()
    parser.add_struct_decl("")
    assert_is_not_none(parser.unnamed_struct)
    parser.add_typedef("struct mystruct", "mystruct")
    assert_is_none(parser.unnamed_struct)
    assert_equal(len(parser.ast.nodes), 1)
コード例 #5
0
ファイル: test_parser.py プロジェクト: shoman2/cythonwrapper
def test_add_class_with_field_ctor_and_method():
    parser = Parser("test.hpp")
    parser.init_ast()
    parser.add_class("MyClass")
    assert_equal(len(parser.ast.nodes), 1)
    parser.add_ctor()
    assert_equal(len(parser.ast.nodes[0].nodes), 1)
    parser.add_param("a", "int")
    assert_equal(len(parser.ast.nodes[0].nodes[0].nodes), 1)
    parser.add_method("myMethod", "int")
    assert_equal(len(parser.ast.nodes[0].nodes), 2)
    parser.add_field("b", "bool")
    assert_equal(len(parser.ast.nodes[0].nodes), 3)
コード例 #6
0
def test_add_class_with_field_ctor_and_method():
    parser = Parser("test.hpp")
    parser.init_ast()
    parser.add_class("MyClass")
    assert_equal(len(parser.ast.nodes), 1)
    parser.add_ctor()
    assert_equal(len(parser.ast.nodes[0].nodes), 1)
    parser.add_param("a", "int")
    assert_equal(len(parser.ast.nodes[0].nodes[0].nodes), 1)
    parser.add_method("myMethod", "int")
    assert_equal(len(parser.ast.nodes[0].nodes), 2)
    parser.add_field("b", "bool")
    assert_equal(len(parser.ast.nodes[0].nodes), 3)
コード例 #7
0
ファイル: test_parser.py プロジェクト: shoman2/cythonwrapper
def test_add_template_class():
    parser = Parser("test.hpp")
    parser.init_ast()
    parser.add_template_class("MyTemplateClass")
    assert_equal(len(parser.ast.nodes), 1)
    parser.add_template_type("T")
    assert_equal(len(parser.ast.nodes[0].template_types), 1)
    parser.add_ctor()
    assert_equal(len(parser.ast.nodes[0].nodes), 1)
    parser.add_param("a", "T")
    assert_equal(len(parser.ast.nodes[0].nodes[0].nodes), 1)
    parser.add_method("myMethod", "int")
    assert_equal(len(parser.ast.nodes[0].nodes), 2)
    parser.add_field("b", "bool")
    assert_equal(len(parser.ast.nodes[0].nodes), 3)
コード例 #8
0
def test_add_template_class():
    parser = Parser("test.hpp")
    parser.init_ast()
    parser.add_template_class("MyTemplateClass")
    assert_equal(len(parser.ast.nodes), 1)
    parser.add_template_type("T")
    assert_equal(len(parser.ast.nodes[0].template_types), 1)
    parser.add_ctor()
    assert_equal(len(parser.ast.nodes[0].nodes), 1)
    parser.add_param("a", "T")
    assert_equal(len(parser.ast.nodes[0].nodes[0].nodes), 1)
    parser.add_method("myMethod", "int")
    assert_equal(len(parser.ast.nodes[0].nodes), 2)
    parser.add_field("b", "bool")
    assert_equal(len(parser.ast.nodes[0].nodes), 3)
コード例 #9
0
ファイル: test_parser.py プロジェクト: shoman2/cythonwrapper
def test_add_argument_without_method():
    parser = Parser("test.hpp")
    parser.init_ast()
    assert_warns_message(UserWarning, "Ignored function parameter",
                         parser.add_param, "a", "void")
コード例 #10
0
ファイル: test_parser.py プロジェクト: shoman2/cythonwrapper
def test_add_function():
    parser = Parser("test.hpp")
    parser.init_ast()
    parser.add_function("myFun", "void", "")
    assert_equal(len(parser.ast.nodes), 1)
コード例 #11
0
ファイル: test_parser.py プロジェクト: shoman2/cythonwrapper
def test_struct():
    parser = Parser("test.hpp")
    parser.init_ast()
    parser.add_struct_decl("MyStruct")
    assert_equal(len(parser.ast.nodes), 1)
コード例 #12
0
ファイル: test_parser.py プロジェクト: shoman2/cythonwrapper
def test_add_typedef():
    parser = Parser("test.hpp")
    parser.init_ast()
    parser.add_typedef("double", "tdef")
    assert_equal(len(parser.ast.nodes), 1)
コード例 #13
0
def test_add_argument_without_method():
    parser = Parser("test.hpp")
    parser.init_ast()
    assert_warns_message(UserWarning, "Ignored function parameter",
                         parser.add_param, "a", "void")
コード例 #14
0
def test_add_function():
    parser = Parser("test.hpp")
    parser.init_ast()
    parser.add_function("myFun", "void", "")
    assert_equal(len(parser.ast.nodes), 1)
コード例 #15
0
def test_struct():
    parser = Parser("test.hpp")
    parser.init_ast()
    parser.add_struct_decl("MyStruct")
    assert_equal(len(parser.ast.nodes), 1)
コード例 #16
0
def test_add_typedef():
    parser = Parser("test.hpp")
    parser.init_ast()
    parser.add_typedef("double", "tdef")
    assert_equal(len(parser.ast.nodes), 1)