@@ -32,24 +32,34 @@ void main() {
3232 EnumSpec enumSpec = EnumSpec (EnumFoo , [EnumFoo .A , EnumFoo .B ]);
3333 EnumSpec enumSubTypeSpec =
3434 EnumSpec (EnumSubClass , [EnumSubClass .A , EnumSubClass .B ]);
35- EnumSpec enumWithIdsSpec = EnumSpec (
36- EnumWithIds ,
37- [EnumWithIds .A , EnumWithIds .B , EnumWithIds .C ],
38- {
39- 10 : EnumWithIds .A ,
40- 20 : EnumWithIds .B ,
41- 30 : EnumWithIds .C ,
42- });
43- EnumSpec enumPartialIdsSpec =
44- EnumSpec (EnumPartialIds ,[EnumPartialIds .A , EnumPartialIds .B , EnumPartialIds .C ]);
45- EnumSpec enumDuplicateIdsSpec =
46- EnumSpec (EnumDuplicateIds , [EnumDuplicateIds .A , EnumDuplicateIds .B , EnumDuplicateIds .C ]);
4735
4836 check ($EnumFoo ).equals (enumSpec);
4937 check ($EnumSubClass ).equals (enumSubTypeSpec);
38+ });
39+
40+ test ('test per-value @ForyEnumId spec generation' , () {
41+ EnumSpec enumWithIdsSpec = EnumSpec (EnumWithIds ,
42+ [EnumWithIds .A , EnumWithIds .B , EnumWithIds .C ],
43+ {10 : EnumWithIds .A , 20 : EnumWithIds .B , 30 : EnumWithIds .C });
44+ EnumSpec enumPartialIdsSpec = EnumSpec (
45+ EnumPartialIds , [EnumPartialIds .A , EnumPartialIds .B , EnumPartialIds .C ]);
46+ EnumSpec enumDuplicateIdsSpec = EnumSpec (EnumDuplicateIds ,
47+ [EnumDuplicateIds .A , EnumDuplicateIds .B , EnumDuplicateIds .C ]);
48+
5049 check ($EnumWithIds ).equals (enumWithIdsSpec);
5150 check ($EnumPartialIds ).equals (enumPartialIdsSpec);
5251 check ($EnumDuplicateIds ).equals (enumDuplicateIdsSpec);
5352 });
53+
54+ test ('test field-based @ForyEnumId spec generation' , () {
55+ EnumSpec enumFieldBasedIdsSpec = EnumSpec (EnumFieldBasedIds ,
56+ [EnumFieldBasedIds .A , EnumFieldBasedIds .B , EnumFieldBasedIds .C ],
57+ {10 : EnumFieldBasedIds .A , 20 : EnumFieldBasedIds .B , 30 : EnumFieldBasedIds .C });
58+ EnumSpec enumFieldBasedDuplicateIdsSpec = EnumSpec (EnumFieldBasedDuplicateIds ,
59+ [EnumFieldBasedDuplicateIds .A , EnumFieldBasedDuplicateIds .B , EnumFieldBasedDuplicateIds .C ]);
60+
61+ check ($EnumFieldBasedIds ).equals (enumFieldBasedIdsSpec);
62+ check ($EnumFieldBasedDuplicateIds ).equals (enumFieldBasedDuplicateIdsSpec);
63+ });
5464 });
5565}
0 commit comments