Skip to content

Commit 78deff6

Browse files
committed
Swift: add generated enum tests
1 parent a928633 commit 78deff6

10 files changed

+92
-4
lines changed
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
| enums.swift:1:1:4:1 | EnumValues | getInterfaceType: | EnumValues.Type | getName: | EnumValues | getType: | EnumValues |
2+
| enums.swift:7:1:10:1 | EnumValuesWithBase | getInterfaceType: | EnumValuesWithBase.Type | getName: | EnumValuesWithBase | getType: | EnumValuesWithBase |
3+
| enums.swift:12:1:16:1 | EnumWithParams | getInterfaceType: | EnumWithParams.Type | getName: | EnumWithParams | getType: | EnumWithParams |
4+
| enums.swift:18:1:21:1 | GenericEnum | getInterfaceType: | GenericEnum<T>.Type | getName: | GenericEnum | getType: | GenericEnum |
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
// generated by codegen/codegen.py
2+
import codeql.swift.elements
3+
import TestUtils
4+
5+
from EnumDecl x, Type getInterfaceType, string getName, Type getType
6+
where
7+
toBeTested(x) and
8+
not x.isUnknown() and
9+
getInterfaceType = x.getInterfaceType() and
10+
getName = x.getName() and
11+
getType = x.getType()
12+
select x, "getInterfaceType:", getInterfaceType, "getName:", getName, "getType:", getType
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
| enums.swift:7:1:10:1 | EnumValuesWithBase | 0 | Double |
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
// generated by codegen/codegen.py
2+
import codeql.swift.elements
3+
import TestUtils
4+
5+
from EnumDecl x, int index
6+
where toBeTested(x) and not x.isUnknown()
7+
select x, index, x.getBaseType(index)
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
| enums.swift:18:1:21:1 | GenericEnum | 0 | enums.swift:18:18:18:18 | T |
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
// generated by codegen/codegen.py
2+
import codeql.swift.elements
3+
import TestUtils
4+
5+
from EnumDecl x, int index
6+
where toBeTested(x) and not x.isUnknown()
7+
select x, index, x.getGenericTypeParam(index)
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
| enums.swift:1:1:4:1 | EnumValues | 0 | enums.swift:2:5:2:18 | case ... |
2+
| enums.swift:1:1:4:1 | EnumValues | 1 | enums.swift:2:10:2:10 | value1 |
3+
| enums.swift:1:1:4:1 | EnumValues | 2 | enums.swift:2:18:2:18 | value2 |
4+
| enums.swift:1:1:4:1 | EnumValues | 3 | enums.swift:3:5:3:26 | case ... |
5+
| enums.swift:1:1:4:1 | EnumValues | 4 | enums.swift:3:10:3:10 | value3 |
6+
| enums.swift:1:1:4:1 | EnumValues | 5 | enums.swift:3:18:3:18 | value4 |
7+
| enums.swift:1:1:4:1 | EnumValues | 6 | enums.swift:3:26:3:26 | value5 |
8+
| enums.swift:1:1:4:1 | EnumValues | 7 | file://:0:0:0:0 | __derived_enum_equals |
9+
| enums.swift:1:1:4:1 | EnumValues | 8 | file://:0:0:0:0 | var ... = ... |
10+
| enums.swift:1:1:4:1 | EnumValues | 9 | file://:0:0:0:0 | hash |
11+
| enums.swift:1:1:4:1 | EnumValues | 10 | file://:0:0:0:0 | hashValue |
12+
| enums.swift:7:1:10:1 | EnumValuesWithBase | 0 | enums.swift:8:5:8:18 | case ... |
13+
| enums.swift:7:1:10:1 | EnumValuesWithBase | 1 | enums.swift:8:10:8:10 | value1 |
14+
| enums.swift:7:1:10:1 | EnumValuesWithBase | 2 | enums.swift:8:18:8:18 | value2 |
15+
| enums.swift:7:1:10:1 | EnumValuesWithBase | 3 | enums.swift:9:5:9:26 | case ... |
16+
| enums.swift:7:1:10:1 | EnumValuesWithBase | 4 | enums.swift:9:10:9:10 | value3 |
17+
| enums.swift:7:1:10:1 | EnumValuesWithBase | 5 | enums.swift:9:18:9:18 | value4 |
18+
| enums.swift:7:1:10:1 | EnumValuesWithBase | 6 | enums.swift:9:26:9:26 | value5 |
19+
| enums.swift:7:1:10:1 | EnumValuesWithBase | 7 | file://:0:0:0:0 | init |
20+
| enums.swift:7:1:10:1 | EnumValuesWithBase | 8 | file://:0:0:0:0 | var ... = ... |
21+
| enums.swift:7:1:10:1 | EnumValuesWithBase | 9 | file://:0:0:0:0 | RawValue |
22+
| enums.swift:7:1:10:1 | EnumValuesWithBase | 10 | file://:0:0:0:0 | rawValue |
23+
| enums.swift:12:1:16:1 | EnumWithParams | 0 | enums.swift:13:5:13:22 | case ... |
24+
| enums.swift:12:1:16:1 | EnumWithParams | 1 | enums.swift:13:10:13:22 | nodata1 |
25+
| enums.swift:12:1:16:1 | EnumWithParams | 2 | enums.swift:14:5:14:21 | case ... |
26+
| enums.swift:12:1:16:1 | EnumWithParams | 3 | enums.swift:14:10:14:21 | intdata |
27+
| enums.swift:12:1:16:1 | EnumWithParams | 4 | enums.swift:15:5:15:35 | case ... |
28+
| enums.swift:12:1:16:1 | EnumWithParams | 5 | enums.swift:15:10:15:35 | tuple |
29+
| enums.swift:18:1:21:1 | GenericEnum | 0 | enums.swift:19:5:19:10 | case ... |
30+
| enums.swift:18:1:21:1 | GenericEnum | 1 | enums.swift:19:10:19:10 | none |
31+
| enums.swift:18:1:21:1 | GenericEnum | 2 | enums.swift:20:5:20:16 | case ... |
32+
| enums.swift:18:1:21:1 | GenericEnum | 3 | enums.swift:20:10:20:16 | some |
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
// generated by codegen/codegen.py
2+
import codeql.swift.elements
3+
import TestUtils
4+
5+
from EnumDecl x, int index
6+
where toBeTested(x) and not x.isUnknown()
7+
select x, index, x.getMember(index)

swift/ql/test/extractor-tests/generated/decl/EnumDecl/MISSING_SOURCE.txt

Lines changed: 0 additions & 4 deletions
This file was deleted.
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
enum EnumValues {
2+
case value1, value2
3+
case value3, value4, value5
4+
}
5+
6+
7+
enum EnumValuesWithBase : Double {
8+
case value1, value2
9+
case value3, value4, value5
10+
}
11+
12+
enum EnumWithParams {
13+
case nodata1(Void)
14+
case intdata(Int)
15+
case tuple(Int, String, Double)
16+
}
17+
18+
enum GenericEnum<T> {
19+
case none
20+
case some(T)
21+
}

0 commit comments

Comments
 (0)