Skip to content

Commit 8b729a8

Browse files
committed
Fixed most of the variables on the test suite nodes
1 parent 25bd7bd commit 8b729a8

File tree

4 files changed

+41
-78
lines changed

4 files changed

+41
-78
lines changed

tests/PE/Nodes/Farm/BuildingNode.php

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,21 +6,21 @@
66
use PE\Nodes\EncoderNode;
77
use PE\Nodes\EncoderNodeVariable;
88
use PE\Samples\Farm\Building;
9+
use PE\Variables\Types\NodeAccessor;
10+
use PE\Variables\Types\PostNodeGetter;
911

1012
class BuildingNode extends EncoderNode {
1113

1214
function __construct($classPrepend = null, $nodeTypeName = null) {
1315

1416
parent::__construct('buildings', 'building', $classPrepend !== null ? $classPrepend : '\\PE\\Samples\\Farm', $nodeTypeName);
1517

16-
$this->addVariable(new EncoderNodeVariable('type', array(
17-
'getterAction' => array(
18-
'type' => EncoderNodeVariable::ACTION_TYPE_NODE,
19-
'method' => 'getBuildingType',
20-
'variables' => array(ActionVariable::GETTER_OBJECT)
21-
),
22-
'alwaysExecute' => true
18+
$type = $this->addVariable(new EncoderNodeVariable('type'));
19+
20+
$typePostNodeGetter = $type->postNodeGetter(new PostNodeGetter('getBuildingType', array(
21+
NodeAccessor::VARIABLE_OBJECT
2322
)));
23+
$typePostNodeGetter->alwaysExecute(true);
2424
}
2525

2626
public function getBuildingType($nodeData, Building $building) {

tests/PE/Nodes/Specials/AccessorMethodActionTypeNodeNode.php

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,9 @@
55
use PE\Enums\ActionVariable;
66
use PE\Nodes\EncoderNode;
77
use PE\Nodes\EncoderNodeVariable;
8+
use PE\Variables\Types\NodeAccessor;
9+
use PE\Variables\Types\PostNodeGetter;
10+
use PE\Variables\Types\PostNodeSetter;
811

912
class AccessorMethodActionTypeNodeNode extends EncoderNode {
1013

@@ -13,18 +16,9 @@ function __construct() {
1316

1417
$this->addVariable(new EncoderNodeVariable('special'));
1518

16-
$this->addVariable(new EncoderNodeVariable('node', array(
17-
'setterAction' => array(
18-
'type' => EncoderNodeVariable::ACTION_TYPE_NODE,
19-
'method' => 'addNodeToSpecial',
20-
'variables' => array(ActionVariable::SETTER_NAME)
21-
),
22-
'getterAction' => array(
23-
'type' => EncoderNodeVariable::ACTION_TYPE_NODE,
24-
'method' => 'getNodeFromSpecial',
25-
'variables' => array(ActionVariable::GETTER_NAME)
26-
)
27-
)));
19+
$special = $this->addVariable(new EncoderNodeVariable('node'));
20+
$special->postNodeSetter(new PostNodeSetter('addNodeToSpecial', array(NodeAccessor::VARIABLE_NAME)));
21+
$special->postNodeGetter(new PostNodeGetter('getNodeFromSpecial', array(NodeAccessor::VARIABLE_NAME)));
2822
}
2923

3024
public function addNodeToSpecial($data, $setterName) {

tests/PE/Nodes/Specials/AddAfterDecodeChildRequiresNode.php

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,19 +7,16 @@
77
use PE\Nodes\EncoderNodeChild;
88
use PE\Nodes\EncoderNodeVariable;
99
use PE\Samples\Specials\AddAfterDecodeParent;
10+
use PE\Variables\Types\NodeAccessor;
11+
use PE\Variables\Types\PostNodeSetter;
1012

1113
class AddAfterDecodeChildRequiresNode extends EncoderNode {
1214

1315
function __construct() {
1416
parent::__construct('add-after-decode-children-require', 'add-after-decode-child-require', '\\PE\\Samples\\Specials');
1517

16-
$this->addVariable(new EncoderNodeVariable('name', array(
17-
'setterAction' => array(
18-
'type' => EncoderNodeChild::ACTION_TYPE_NODE,
19-
'method' => 'nodeSetName',
20-
'variables' => array(ActionVariable::SETTER_VALUE, ActionVariable::SETTER_PARENT)
21-
)
22-
)));
18+
$name = $this->addVariable(new EncoderNodeVariable('name'));
19+
$name->postNodeSetter(new PostNodeSetter('setNodeName', array(NodeAccessor::VARIABLE_VALUE, NodeAccessor::VARIABLE_PARENT)));
2320
}
2421

2522
public function nodeSetName($nodeData, $value, AddAfterDecodeParent $parent) {

tests/PE/Nodes/Specials/EncoderNodeVariableApplyToSetterNode.php

Lines changed: 24 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -7,73 +7,45 @@
77
use PE\Nodes\EncoderNodeVariable;
88
use PE\Samples\General\Thing;
99
use PE\Samples\Specials\EncoderNodeVariableApplyToSetter;
10+
use PE\Variables\Types\NodeAccessor;
11+
use PE\Variables\Types\ObjectSetter;
12+
use PE\Variables\Types\PostNodeSetter;
1013

1114
class EncoderNodeVariableApplyToSetterNode extends EncoderNode {
1215

1316
function __construct() {
1417
parent::__construct('encoder-node-variable-apply-to-setters-node', 'encoder-node-variable-apply-to-setters-node', '\\PE\\Samples\\Specials');
1518

16-
$this->addVariable(new EncoderNodeVariable('node-simple', array(
17-
'setterAction' => array(
18-
'type' => EncoderNodeVariable::ACTION_TYPE_NODE,
19-
'method' => 'nodeSimple',
20-
'variables' => array(ActionVariable::SETTER_NAME)
21-
)
22-
)));
19+
$nodeSimple = $this->addVariable(new EncoderNodeVariable('node-simple'));
20+
$nodeSimple->postNodeSetter(new PostNodeSetter('nodeSimple', NodeAccessor::VARIABLE_NAME));
2321

24-
$this->addVariable(new EncoderNodeVariable('node-full', array(
25-
'setterAction' => array(
26-
'type' => EncoderNodeVariable::ACTION_TYPE_NODE,
27-
'method' => 'nodeFull',
28-
'variables' => array(ActionVariable::SETTER_NAME, ActionVariable::SETTER_VALUE, ActionVariable::SETTER_OBJECT, ActionVariable::SETTER_PARENT)
29-
)
22+
$nodeFull = $this->addVariable(new EncoderNodeVariable('node-full'));
23+
$nodeFull->postNodeSetter(new PostNodeSetter('nodeFull', array(
24+
NodeAccessor::VARIABLE_NAME,
25+
NodeAccessor::VARIABLE_VALUE,
26+
NodeAccessor::VARIABLE_OBJECT,
27+
NodeAccessor::VARIABLE_PARENT
3028
)));
3129

32-
$this->addVariable(new EncoderNodeVariable('node-without-variables', array(
33-
'setterAction' => array(
34-
'type' => EncoderNodeVariable::ACTION_TYPE_NODE,
35-
'method' => 'nodeWithoutVariables'
36-
)
37-
)));
38-
$this->addVariable(new EncoderNodeVariable('node-without-variables-empty', array(
39-
'setterAction' => array(
40-
'type' => EncoderNodeVariable::ACTION_TYPE_NODE,
41-
'method' => 'nodeWithoutVariables',
42-
'variables' => array()
43-
)
44-
)));
45-
$this->addVariable(new EncoderNodeVariable('node-without-variables-null', array(
46-
'setterAction' => array(
47-
'type' => EncoderNodeVariable::ACTION_TYPE_NODE,
48-
'method' => 'nodeWithoutVariables',
49-
'variables' => array()
50-
)
51-
)));
30+
$nodeWithoutVariables = $this->addVariable(new EncoderNodeVariable('node-without-variables'));
31+
$nodeWithoutVariables->postNodeSetter(new PostNodeSetter('nodeWithoutVariables'));
5232

53-
$this->addVariable(new EncoderNodeVariable('node-unknown-variable', array(
54-
'setterAction' => array(
55-
'type' => EncoderNodeVariable::ACTION_TYPE_NODE,
56-
'method' => 'nodeSimple',
57-
'variables' => array('unknown_variable')
58-
)
59-
)));
33+
$nodeWithoutVariablesEmpty = $this->addVariable(new EncoderNodeVariable('node-without-variables-empty'));
34+
$nodeWithoutVariablesEmpty->postNodeSetter(new PostNodeSetter('nodeWithoutVariables', array()));
6035

36+
$nodeWithoutVariablesNull = $this->addVariable(new EncoderNodeVariable('node-without-variables-null'));
37+
$nodeWithoutVariablesNull->postNodeSetter(new PostNodeSetter('nodeWithoutVariables', array()));
38+
39+
$nodeUnknownVariable = $this->addVariable(new EncoderNodeVariable('node-unknown-variable'));
40+
$nodeUnknownVariable->postNodeSetter(new PostNodeSetter('nodeSimple', array('unknown_variable')));
6141

6242
$this->addVariable(new EncoderNodeVariable('var'));
6343

64-
$this->addVariable(new EncoderNodeVariable('object-using-setter-action', array(
65-
'setterAction' => array(
66-
'method' => 'setVar'
67-
)
68-
)));
44+
$objectUsingSetterMethod = $this->addVariable(new EncoderNodeVariable('object-using-setter-method'));
45+
$objectUsingSetterMethod->objectSetter(new ObjectSetter('setVar'));
6946

70-
$this->addVariable(new EncoderNodeVariable('object-using-setter-method', array(
71-
'setter' => 'setVar'
72-
)));
73-
74-
$this->addVariable(new EncoderNodeVariable('object-using-unknown-setter-method', array(
75-
'setterMethod' => 'unknownMethod'
76-
)));
47+
$objectUsingUnknownSetterMethod = $this->addVariable(new EncoderNodeVariable('object-using-unknown-setter-method'));
48+
$objectUsingUnknownSetterMethod->objectSetter(new ObjectSetter('unknownMethod'));
7749
}
7850

7951
public function nodeSimple($nodeData, $setterName) {

0 commit comments

Comments
 (0)