cmvr_head/packages/erpc-1.14.0/erpcgen/test/test_enum.yml
2025-12-30 15:44:41 +08:00

182 lines
2.2 KiB
YAML

---
name: basic enum
desc:
params:
name:
- ""
- E
idl: |
enum {name} {
A,
B,
C
}
test_common.h:
# named enums get a typedef
- if: name
then:
- re: ^typedef enum {name}
else:
- re: ^enum
- A = 0
- B = 1
- C = 2
- if: name
then:
- '} {name}'
---
name: enum incr value
desc:
params:
name:
- ""
- E
idl: |
enum {name} {
A = 10,
B,
C
}
test_common.h:
# named enums get a typedef
- if: name
then:
- re: ^typedef enum {name}
else:
- re: ^enum
- A = 10
- B = 11
- C = 12
- if: name
then:
- '} {name}'
---
name: enum all values
desc: tests enum with all enumerators having a value, both in and out of order
params:
name:
- ""
- E
c_val:
- 10
- 40
idl: |
enum {name} {
A = 20,
B = 30,
C = {c_val}
}
test_common.h:
# named enums get a typedef
- if: name
then:
- re: ^typedef enum {name}
else:
- re: ^enum
- A = 20
- B = 30
- C = {c_val}
- if: name
then:
- '} {name}'
---
name: single enum
desc:
params:
name:
- ""
- "E"
opt_comma:
- ""
- ","
a_val:
- ""
- " = 10"
idl: |
enum {name} {
A{a_val}{opt_comma}
}
test_common.h:
# named enums get a typedef
- if: name
then:
- re: ^typedef enum {name}
else:
- re: ^enum
- A{a_val}
- if: name
then:
- '} {name}'
---
name: enum with negative value
desc:
params:
name:
- ""
- E
idl: |
enum {name} {
A = 0,
B = -1
}
test_common.h:
# named enums get a typedef
- if: name
then:
- re: ^typedef enum {name}
else:
- re: ^enum
- A = 0
- B = -1
- if: name
then:
- '} {name}'
---
name: enum values
desc:
idl: |
const uint8 five=5;
enum MyEnum {
A = 0,
B = five,
C,
D= 1*five,
E = 2*five,
}
test_common.h:
# named enums get a typedef
- A = 0
- B = 5
- C = 6
- D = 5
- E = 10
---
name: py basic enum
desc:
params:
name:
- ""
- "E"
idl: |
enum {name} {
A,
B,
C
}
lang: py
test/common.py:
- if: name
then:
- class E
else:
- not: class E
- A = 0
- B = 1
- C = 2