Files
codeql/csharp/ql/test/library-tests/assemblies/assemblies.ql
2018-08-02 17:53:23 +01:00

65 lines
1.3 KiB
Plaintext

import csharp
class TypeRef extends @typeref
{
string toString() {
hasName(result)
}
predicate hasName(string name) {
typerefs(this, name)
}
Type getType() {
typeref_type(this, result)
}
}
class MissingType extends TypeRef
{
MissingType() {
not exists(getType())
}
}
from
Class class1,
MissingType class2,
MissingType class3,
MissingType class4,
MissingType class5,
MissingType del2,
Field a,
Method b,
Method c,
Method d,
Method e,
Method f,
Method g
where
class1.hasQualifiedName("Assembly1.Class1") and
class2.hasName("Class2") and
class3.hasName("Class3") and
class4.hasName("Class4") and
class5.hasName("Class5") and
del2.hasName("del2") and
a.hasName("a") and
b.hasName("b") and
c.hasName("c") and
d.hasName("d") and
e.hasName("e") and
f.hasName("f") and
g.hasName("g") and
a.getDeclaringType()=class1 and
a.getDeclaringType()=class1 and
b.getDeclaringType()=class1 and
c.getDeclaringType()=class1 and
not exists(c.getParameter(0).getType()) and
not exists(a.getType()) and
not exists(b.getReturnType()) and
not exists(c.getReturnType()) and
not exists(e.getReturnType()) and
not exists(g.getReturnType()) and
not exists(g.getParameter(0).getType())
select "Test passed"