mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-08-18 13:45:45 +02:00
Consolidated tests.
This commit is contained in:
parent
29762a2885
commit
1e824bb514
1 changed files with 49 additions and 50 deletions
|
@ -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));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue