-
Notifications
You must be signed in to change notification settings - Fork 0
/
popo.yml
76 lines (71 loc) · 1.87 KB
/
popo.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
$:
config:
namespace: App\Example\Popo
outputPath: tests/
use:
- SORT_ASC
phpComment: |
@SuppressWarnings(PHPMD)
@phpcs:ignoreFile
Auto-generated POPO example.
default:
title: Hakuna Matata
idForAll: 10
property: [
{name: idForAll, type: int, comment: This property is used in ALL schemas under CURRENT popo file}
]
Example:
$:
default:
title: Example Hakuna Matata
idForAll: 20
property: [
{name: idFromExampleSchema, type: int, default: 20, comment: This property is used in ALL schemas under Example schema}
]
Foo:
default:
title: Example Foo Hakuna Matata
bar: Bar::class
idForAll: 30
property: [
{name: fooId, type: int, comment: Foo ID COMMENT}
{name: title}
{name: value, type: int, default: \App\ExampleInterface::TEST_BUZZ}
{name: bar, type: popo}
{name: isTest, type: bool, default: true}
{name: isTestWithoutDefault, type: bool}
]
Bar:
default:
title: Lorem Ipsum
buzz: \App\Example\Popo\Buzz\Buzz::class
idForAll: 40
property: [
{name: title}
{name: buzz, type: popo}
{name: buzzCollection, type: array, itemType: \App\Example\Popo\Buzz\Buzz::class, itemName: buzz}
]
Buzz:
config:
namespace: App\Example\Popo\Buzz
property: [
{name: value, default: Buzzzzz}
]
AnotherExample:
$:
config:
comment: Another example lorem ipsum
default:
idForAnotherExample: 100
property: [
{name: idForAnotherExample, type: int, comment: This property is used in ALL schemas under AnotherExample schema}
{name: description}
{name: items, type: array, default: [\App\ExampleInterface::TEST_BUZZ]}
]
AnotherFoo:
default:
idForAnotherExample: 200
property: [
{name: title}
{name: description}
]