1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-08-18 13:45:45 +02:00

Consolidated tests.

This commit is contained in:
Sergey Prigogin 2011-11-15 11:58:08 -08:00
parent 29762a2885
commit 1e824bb514

View file

@ -39,45 +39,31 @@ public class ClassTypeHelperTests extends AST2BaseTest {
return new BindingAssertionHelper(code, true); return new BindingAssertionHelper(code, true);
} }
// class A {
// public:
// A();
// int x;
// A* y;
// const A& z;
// };
public void testHasTrivialCopyCtor_1() throws Exception {
BindingAssertionHelper helper = getAssertionHelper();
ICPPClassType classType = helper.assertNonProblem("A {", 1, ICPPClassType.class);
assertTrue(ClassTypeHelper.hasTrivialCopyCtor(classType));
}
// struct A { // struct A {
// A(const A& a); // A(const A& a);
// }; // };
// //
// class B { // class B {
// public: // public:
// A a; // B();
// };
public void testHasTrivialCopyCtor_2() throws Exception {
BindingAssertionHelper helper = getAssertionHelper();
ICPPClassType classType = helper.assertNonProblem("B {", 1, ICPPClassType.class);
assertFalse(ClassTypeHelper.hasTrivialCopyCtor(classType));
}
// class A {
// public:
// A();
// A(const A& a);
// int x; // int x;
// A* y; // A* y;
// const A& z; // const A& z;
// static A s;
// }; // };
public void testHasTrivialDesctructor_1() throws Exception { //
// class C {
// public:
// A a;
// };
public void testHasTrivialCopyCtor() throws Exception {
BindingAssertionHelper helper = getAssertionHelper(); BindingAssertionHelper helper = getAssertionHelper();
ICPPClassType classType = helper.assertNonProblem("A {", 1, ICPPClassType.class); ICPPClassType classA = helper.assertNonProblem("A {", 1, ICPPClassType.class);
assertTrue(ClassTypeHelper.hasTrivialDestructor(classType)); assertFalse(ClassTypeHelper.hasTrivialCopyCtor(classA));
ICPPClassType classB = helper.assertNonProblem("B {", 1, ICPPClassType.class);
assertTrue(ClassTypeHelper.hasTrivialCopyCtor(classB));
ICPPClassType classC = helper.assertNonProblem("C {", 1, ICPPClassType.class);
assertFalse(ClassTypeHelper.hasTrivialCopyCtor(classC));
} }
// struct A { // struct A {
@ -86,38 +72,51 @@ public class ClassTypeHelperTests extends AST2BaseTest {
// //
// class B { // class B {
// public: // public:
// B();
// B(const B& a);
// int x;
// B* y;
// const B& z;
// static A s;
// };
//
// class C {
// public:
// A a; // A a;
// }; // };
public void testHasTrivialDesctructor_2() throws Exception { public void testHasTrivialDestructor() throws Exception {
BindingAssertionHelper helper = getAssertionHelper(); BindingAssertionHelper helper = getAssertionHelper();
ICPPClassType classType = helper.assertNonProblem("B {", 1, ICPPClassType.class); ICPPClassType classA = helper.assertNonProblem("A {", 1, ICPPClassType.class);
assertFalse(ClassTypeHelper.hasTrivialDestructor(classType)); assertFalse(ClassTypeHelper.hasTrivialDestructor(classA));
} ICPPClassType classB = helper.assertNonProblem("B {", 1, ICPPClassType.class);
assertTrue(ClassTypeHelper.hasTrivialDestructor(classB));
// class A { ICPPClassType classC = helper.assertNonProblem("C {", 1, ICPPClassType.class);
// public: assertFalse(ClassTypeHelper.hasTrivialDestructor(classC));
// A();
// A(const A& a);
// void m();
// int x;
// A* y;
// const A& z;
// };
public void testIsPolymorphic_1() throws Exception {
BindingAssertionHelper helper = getAssertionHelper();
ICPPClassType classType = helper.assertNonProblem("A {", 1, ICPPClassType.class);
assertFalse(ClassTypeHelper.isPolymorphic(classType));
} }
// struct A { // struct A {
// virtual void m(); // virtual void m();
// }; // };
// //
// class B : public A { // class B {
// public:
// B();
// B(const B& a);
// void m();
// int x;
// B* y;
// const B& z;
// }; // };
public void testIsPolymorphic_2() throws Exception { //
// class C : public A {
// };
public void testIsPolymorphic() throws Exception {
BindingAssertionHelper helper = getAssertionHelper(); BindingAssertionHelper helper = getAssertionHelper();
ICPPClassType classType = helper.assertNonProblem("B", 1, ICPPClassType.class); ICPPClassType classA = helper.assertNonProblem("A {", 1, ICPPClassType.class);
assertTrue(ClassTypeHelper.isPolymorphic(classType)); assertTrue(ClassTypeHelper.isPolymorphic(classA));
ICPPClassType classB = helper.assertNonProblem("B {", 1, ICPPClassType.class);
assertFalse(ClassTypeHelper.isPolymorphic(classB));
ICPPClassType classC = helper.assertNonProblem("C", 1, ICPPClassType.class);
assertTrue(ClassTypeHelper.isPolymorphic(classC));
} }
} }