void () { assertTrue(hasDefaultConstructor(createTopLevelClass("public class A {}"))); assertTrue(hasDefaultConstructor(createTopLevelClass("public class A { public A() {}}"))); assertFalse(hasDefaultConstructor(createTopLevelClass("public class A { public A(int i) {}}"))); assertTrue(hasDefaultConstructor(createTopLevelClass("public class A extends B { } class B {}"))); assertTrue(hasDefaultConstructor(createTopLevelClass("public class A extends B { } class B { B(int i) {}}"))); assertFalse(hasDefaultConstructor(createTopLevelClass("class A { A() {}}"))); assertTrue(hasDefaultConstructor(createTopLevelClass("class A { A() {}}"), false, true)); assertTrue(hasDefaultConstructor(createTopLevelClass("class A { A() {}}"), true, true)); assertFalse(hasDefaultConstructor(createTopLevelClass("class A { A() {}}"), true, false)); assertTrue(hasDefaultConstructor(createTopLevelClass("class A { protected A() {}}"), true, false)); }