Skip to content

Commit

Permalink
Rust: QL Test: exclude crate graph related elements
Browse files Browse the repository at this point in the history
  • Loading branch information
aibaars committed Feb 27, 2025
1 parent 1fd8dd1 commit c651fee
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 4 deletions.
9 changes: 8 additions & 1 deletion rust/ql/test/TestUtils.qll
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
private import rust

predicate toBeTested(Element e) { any() }
predicate toBeTested(Element e) { not e instanceof CrateElement }

class CrateElement extends Element {
CrateElement() {
this instanceof Crate or
any(Crate c).getModule() = this.(AstNode).getParentNode*()
}
}
3 changes: 2 additions & 1 deletion rust/ql/test/extractor-tests/utf8/ast.ql
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import codeql.rust.elements
import TestUtils

select any(AstNode n)
select any(AstNode n | toBeTested(n))
5 changes: 3 additions & 2 deletions rust/ql/test/library-tests/path-resolution/path-resolution.ql
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
import rust
import codeql.rust.elements.internal.PathResolution
import utils.test.InlineExpectationsTest
import TestUtils

query predicate mod(Module m) { any() }
query predicate mod(Module m) { toBeTested(m) }

query predicate resolvePath(Path p, ItemNode i) { i = resolvePath(p) }
query predicate resolvePath(Path p, ItemNode i) { toBeTested(p) and i = resolvePath(p) }

module ResolveTest implements TestSig {
string getARelevantTag() { result = "item" }
Expand Down

0 comments on commit c651fee

Please sign in to comment.