mirror of
https://github.com/github/codeql.git
synced 2026-04-23 07:45:17 +02:00
Java: Add some inheritance test cases for the model generator and updated expected test output.
This commit is contained in:
@@ -0,0 +1,91 @@
|
||||
package p;
|
||||
|
||||
public class Inheritance {
|
||||
private abstract class BasePrivate {
|
||||
public abstract String id(String s);
|
||||
}
|
||||
|
||||
public abstract class BasePublic {
|
||||
public abstract String id(String s);
|
||||
}
|
||||
|
||||
public class AImplBasePrivateImpl extends BasePrivate {
|
||||
// SPURIOUS-summary=p;Inheritance$BasePrivate;true;id;(String);;Argument[0];ReturnValue;taint;df-generated
|
||||
@Override
|
||||
public String id(String s) {
|
||||
return s;
|
||||
}
|
||||
}
|
||||
|
||||
public class AImplBasePublic extends BasePublic {
|
||||
// summary=p;Inheritance$BasePublic;true;id;(String);;Argument[0];ReturnValue;taint;df-generated
|
||||
@Override
|
||||
public String id(String s) {
|
||||
return s;
|
||||
}
|
||||
}
|
||||
|
||||
private interface IPrivate1 {
|
||||
String id(String s);
|
||||
}
|
||||
|
||||
private interface IPrivate2 {
|
||||
String id(String s);
|
||||
}
|
||||
|
||||
public interface IPublic1 {
|
||||
String id(String s);
|
||||
}
|
||||
|
||||
public interface IPublic2 {
|
||||
String id(String s);
|
||||
}
|
||||
|
||||
public abstract class B implements IPublic1 {
|
||||
public abstract String id(String s);
|
||||
}
|
||||
|
||||
public abstract class C implements IPrivate1 {
|
||||
public abstract String id(String s);
|
||||
}
|
||||
|
||||
private abstract class D implements IPublic2 {
|
||||
public abstract String id(String s);
|
||||
}
|
||||
|
||||
private abstract class E implements IPrivate2 {
|
||||
public abstract String id(String s);
|
||||
}
|
||||
|
||||
public class BImpl extends B {
|
||||
// summary=p;Inheritance$IPublic1;true;id;(String);;Argument[0];ReturnValue;taint;df-generated
|
||||
@Override
|
||||
public String id(String s) {
|
||||
return s;
|
||||
}
|
||||
}
|
||||
|
||||
public class CImpl extends C {
|
||||
// SPURIOUS-summary=p;Inheritance$IPrivate1;true;id;(String);;Argument[0];ReturnValue;taint;df-generated
|
||||
@Override
|
||||
public String id(String s) {
|
||||
return s;
|
||||
}
|
||||
}
|
||||
|
||||
public class DImpl extends D {
|
||||
// summary=p;Inheritance$IPublic2;true;id;(String);;Argument[0];ReturnValue;taint;df-generated
|
||||
@Override
|
||||
public String id(String s) {
|
||||
return s;
|
||||
}
|
||||
}
|
||||
|
||||
public class EImpl extends E {
|
||||
// SPURIOUS-summary=p;Inheritance$IPrivate2;true;id;(String);;Argument[0];ReturnValue;taint;df-generated
|
||||
@Override
|
||||
public String id(String s) {
|
||||
return s;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user