Skip to content

Commit 03b6ee3

Browse files
authored
Python: Add import * test
This test shows off a few things: - transitive chains of `import *` - multiple modules exporting the same name (to test for cross-talk)
1 parent dc0b044 commit 03b6ee3

File tree

10 files changed

+27
-0
lines changed

10 files changed

+27
-0
lines changed
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
from trois import *
2+
print(foo)
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
moduleVariables
2+
reads
3+
writes
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import python
2+
import semmle.python.dataflow.new.DataFlow
3+
4+
query DataFlow::Node moduleVariables() { result instanceof DataFlow::ModuleVariableNode }
5+
6+
query predicate reads(DataFlow::Node fromNode, DataFlow::Node toNode) {
7+
fromNode.(DataFlow::ModuleVariableNode).getARead() = toNode
8+
}
9+
10+
query predicate writes(DataFlow::Node fromNode, DataFlow::Node toNode) {
11+
fromNode = toNode.(DataFlow::ModuleVariableNode).getAWrite()
12+
}
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
from two import *
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
from one import *
2+
print(foo)
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
from un import *
2+
print(foo)
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
foo = 5
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
foo = 5
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
from three import *
2+
print(foo)
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
from deux import *

0 commit comments

Comments
 (0)