Skip to content

Commit 9a82ea4

Browse files
committed
Add test for cross-package references with test extraction
1 parent 01c9509 commit 9a82ea4

File tree

5 files changed

+29
-1
lines changed

5 files changed

+29
-1
lines changed
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
go 1.14
1+
go 1.18
22

33
module testsample
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
package pkg1
2+
3+
type Generic[T any] struct {
4+
element T
5+
}
6+
7+
func TestMe() { }
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
package pkg1
2+
3+
func UsePkg1() {
4+
TestMe()
5+
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package pkg2
2+
3+
import (
4+
"testsample/pkg1"
5+
)
6+
7+
// This tests the case of cross-package generic type references
8+
// in the presence of test extraction. We need to make sure we
9+
// extract packages, including test variants, in the right order
10+
// such that we've seen pkg1.Generic before we try to use it here.
11+
12+
type Specialised = pkg1.Generic[string]

go/ql/integration-tests/test-extraction/test.expected

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,12 @@
11
#select
2+
| src/pkg1/def.go:0:0:0:0 | src/pkg1/def.go |
3+
| src/pkg1/def_test.go:0:0:0:0 | src/pkg1/def_test.go |
4+
| src/pkg2/use.go:0:0:0:0 | src/pkg2/use.go |
25
| src/testme.go:0:0:0:0 | src/testme.go |
36
| src/testme_blackbox_test.go:0:0:0:0 | src/testme_blackbox_test.go |
47
| src/testme_test.go:0:0:0:0 | src/testme_test.go |
58
calls
9+
| src/pkg1/def_test.go:4:2:4:9 | call to TestMe | src/pkg1/def.go:7:1:7:17 | function declaration |
610
| src/testme_blackbox_test.go:10:18:10:44 | call to PublicFunction | src/testme.go:3:1:3:38 | function declaration |
711
| src/testme_test.go:9:18:9:33 | call to PublicFunction | src/testme.go:3:1:3:38 | function declaration |
812
| src/testme_test.go:14:19:14:35 | call to privateFunction | src/testme.go:5:1:5:39 | function declaration |

0 commit comments

Comments
 (0)