Skip to content

Commit b42165e

Browse files
committed
Tweaks to test cases
1 parent 2cd3e4f commit b42165e

File tree

4 files changed

+79
-56
lines changed

4 files changed

+79
-56
lines changed

tests/bson/typemap-004.phpt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,7 @@ function fetch($manager, $typemap = []) {
3434
$cursor->setTypeMap($typemap);
3535
}
3636

37-
$documents = $cursor->toArray();
38-
return $documents;
37+
return $cursor->toArray();
3938
}
4039

4140

tests/bson/typemap-006.phpt

Lines changed: 36 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
--TEST--
2-
MongoDB\Driver\Cursor::setTypeMap(): Setting fieldPath typemaps for compound types with wild card keys
2+
MongoDB\Driver\Cursor::setTypeMap(): Setting fieldPath typemaps for compound types with wildcard keys
33
--SKIPIF--
44
<?php require __DIR__ . "/../utils/basic-skipif.inc"; ?>
55
<?php NEEDS('STANDALONE'); CLEANUP(STANDALONE); ?>
@@ -16,7 +16,13 @@ class MyArrayObject extends ArrayObject implements MongoDB\BSON\Unserializable
1616
}
1717
}
1818

19-
class MyWildCardArrayObject extends MyArrayObject {};
19+
class MyWildcardArrayObject extends ArrayObject implements MongoDB\BSON\Unserializable
20+
{
21+
function bsonUnserialize(array $data)
22+
{
23+
parent::__construct($data, ArrayObject::ARRAY_AS_PROPS);
24+
}
25+
}
2026

2127
$manager = new MongoDB\Driver\Manager(STANDALONE);
2228

@@ -41,99 +47,99 @@ function fetch($manager, $typemap = []) {
4147
}
4248

4349

44-
echo "\nSetting 'array.$' path to 'MyWildCardArrayObject'\n";
50+
echo "\nSetting 'array.$' path to 'MyWildcardArrayObject'\n";
4551
$documents = fetch($manager, ["fieldPaths" => [
46-
'array.$' => "MyWildCardArrayObject"
52+
'array.$' => "MyWildcardArrayObject"
4753
]]);
4854
var_dump($documents[0] instanceof stdClass);
4955
var_dump(is_array($documents[0]->array));
50-
var_dump($documents[0]->array[0] instanceof MyWildCardArrayObject);
51-
var_dump($documents[0]->array[1] instanceof MyWildCardArrayObject);
56+
var_dump($documents[0]->array[0] instanceof MyWildcardArrayObject);
57+
var_dump($documents[0]->array[1] instanceof MyWildcardArrayObject);
5258

53-
echo "\nSetting 'array.1' to 'MyArrayObject' and 'array.$' path to 'MyWildCardArrayObject'\n";
59+
echo "\nSetting 'array.1' to 'MyArrayObject' and 'array.$' path to 'MyWildcardArrayObject'\n";
5460
$documents = fetch($manager, ["fieldPaths" => [
5561
'array.1' => "MyArrayObject",
56-
'array.$' => "MyWildCardArrayObject"
62+
'array.$' => "MyWildcardArrayObject"
5763
]]);
5864
var_dump($documents[0] instanceof stdClass);
5965
var_dump(is_array($documents[0]->array));
60-
var_dump($documents[0]->array[0] instanceof MyWildCardArrayObject);
66+
var_dump($documents[0]->array[0] instanceof MyWildcardArrayObject);
6167
var_dump($documents[0]->array[1] instanceof MyArrayObject);
6268

63-
echo "\nSetting 'array.$' to 'MyWildCardArrayObject' and 'array.1' path to 'MyArrayObject'\n";
69+
echo "\nSetting 'array.$' to 'MyWildcardArrayObject' and 'array.1' path to 'MyArrayObject'\n";
6470
$documents = fetch($manager, ["fieldPaths" => [
65-
'array.$' => "MyWildCardArrayObject",
71+
'array.$' => "MyWildcardArrayObject",
6672
'array.1' => "MyArrayObject"
6773
]]);
6874
var_dump($documents[0] instanceof stdClass);
6975
var_dump(is_array($documents[0]->array));
70-
var_dump($documents[0]->array[0] instanceof MyWildCardArrayObject);
71-
var_dump($documents[0]->array[1] instanceof MyArrayObject);
76+
var_dump($documents[0]->array[0] instanceof MyWildcardArrayObject);
77+
var_dump($documents[0]->array[1] instanceof MyWildcardArrayObject);
7278

7379

74-
echo "\nSetting 'object.$' path to 'MyWildCardArrayObject'\n";
80+
echo "\nSetting 'object.$' path to 'MyWildcardArrayObject'\n";
7581
$documents = fetch($manager, ["fieldPaths" => [
76-
'object.$' => "MyWildCardArrayObject"
82+
'object.$' => "MyWildcardArrayObject"
7783
]]);
7884
var_dump($documents[0] instanceof stdClass);
7985
var_dump(is_object($documents[0]->object));
80-
var_dump($documents[0]->object->one instanceof MyWildCardArrayObject);
81-
var_dump($documents[0]->object->two instanceof MyWildCardArrayObject);
86+
var_dump($documents[0]->object->one instanceof MyWildcardArrayObject);
87+
var_dump($documents[0]->object->two instanceof MyWildcardArrayObject);
8288

83-
echo "\nSetting 'object.two' to 'MyArrayObject' and 'object.$' path to 'MyWildCardArrayObject'\n";
89+
echo "\nSetting 'object.two' to 'MyArrayObject' and 'object.$' path to 'MyWildcardArrayObject'\n";
8490
$documents = fetch($manager, ["fieldPaths" => [
8591
'object.two' => "MyArrayObject",
86-
'object.$' => "MyWildCardArrayObject"
92+
'object.$' => "MyWildcardArrayObject"
8793
]]);
8894
var_dump($documents[0] instanceof stdClass);
8995
var_dump(is_object($documents[0]->object));
90-
var_dump($documents[0]->object->one instanceof MyWildCardArrayObject);
96+
var_dump($documents[0]->object->one instanceof MyWildcardArrayObject);
9197
var_dump($documents[0]->object->two instanceof MyArrayObject);
9298

93-
echo "\nSetting 'object.$' to 'MyWildCardArrayObject' and 'object.one' path to 'MyArrayObject'\n";
99+
echo "\nSetting 'object.$' to 'MyWildcardArrayObject' and 'object.one' path to 'MyArrayObject'\n";
94100
$documents = fetch($manager, ["fieldPaths" => [
95-
'object.$' => "MyWildCardArrayObject",
101+
'object.$' => "MyWildcardArrayObject",
96102
'object.one' => "MyArrayObject"
97103
]]);
98104
var_dump($documents[0] instanceof stdClass);
99105
var_dump(is_object($documents[0]->object));
100-
var_dump($documents[0]->object->one instanceof MyArrayObject);
101-
var_dump($documents[0]->object->two instanceof MyWildCardArrayObject);
106+
var_dump($documents[0]->object->one instanceof MyWildcardArrayObject);
107+
var_dump($documents[0]->object->two instanceof MyWildcardArrayObject);
102108
?>
103109
===DONE===
104110
<?php exit(0); ?>
105111
--EXPECT--
106-
Setting 'array.$' path to 'MyWildCardArrayObject'
112+
Setting 'array.$' path to 'MyWildcardArrayObject'
107113
bool(true)
108114
bool(true)
109115
bool(true)
110116
bool(true)
111117

112-
Setting 'array.1' to 'MyArrayObject' and 'array.$' path to 'MyWildCardArrayObject'
118+
Setting 'array.1' to 'MyArrayObject' and 'array.$' path to 'MyWildcardArrayObject'
113119
bool(true)
114120
bool(true)
115121
bool(true)
116122
bool(true)
117123

118-
Setting 'array.$' to 'MyWildCardArrayObject' and 'array.1' path to 'MyArrayObject'
124+
Setting 'array.$' to 'MyWildcardArrayObject' and 'array.1' path to 'MyArrayObject'
119125
bool(true)
120126
bool(true)
121127
bool(true)
122128
bool(true)
123129

124-
Setting 'object.$' path to 'MyWildCardArrayObject'
130+
Setting 'object.$' path to 'MyWildcardArrayObject'
125131
bool(true)
126132
bool(true)
127133
bool(true)
128134
bool(true)
129135

130-
Setting 'object.two' to 'MyArrayObject' and 'object.$' path to 'MyWildCardArrayObject'
136+
Setting 'object.two' to 'MyArrayObject' and 'object.$' path to 'MyWildcardArrayObject'
131137
bool(true)
132138
bool(true)
133139
bool(true)
134140
bool(true)
135141

136-
Setting 'object.$' to 'MyWildCardArrayObject' and 'object.one' path to 'MyArrayObject'
142+
Setting 'object.$' to 'MyWildcardArrayObject' and 'object.one' path to 'MyArrayObject'
137143
bool(true)
138144
bool(true)
139145
bool(true)

tests/bson/typemap-007.phpt

Lines changed: 41 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
--TEST--
2-
MongoDB\Driver\Cursor::setTypeMap(): Setting fieldPath typemaps for compound types with wild card keys (nested)
2+
MongoDB\Driver\Cursor::setTypeMap(): Setting fieldPath typemaps for compound types with wildcard keys (nested)
33
--SKIPIF--
44
<?php require __DIR__ . "/../utils/basic-skipif.inc"; ?>
55
<?php NEEDS('STANDALONE'); CLEANUP(STANDALONE); ?>
@@ -16,7 +16,7 @@ class MyArrayObject extends ArrayObject implements MongoDB\BSON\Unserializable
1616
}
1717
}
1818

19-
class MyWildCardArrayObject extends MyArrayObject {};
19+
class MyWildcardArrayObject extends MyArrayObject {};
2020

2121
$manager = new MongoDB\Driver\Manager(STANDALONE);
2222

@@ -49,81 +49,101 @@ function fetch($manager, $typemap = []) {
4949
}
5050

5151

52-
echo "\nSetting 'object.$.child1' path to 'MyWildCardArrayObject'\n";
52+
echo "\nSetting 'object.$.child1' path to 'MyWildcardArrayObject'\n";
5353
$documents = fetch($manager, ["fieldPaths" => [
54-
'object.$.child1' => "MyWildCardArrayObject"
54+
'object.$.child1' => "MyWildcardArrayObject"
5555
]]);
5656
var_dump($documents[0]->object->parent1 instanceof stdClass);
57-
var_dump($documents[0]->object->parent1->child1 instanceof MyWildCardArrayObject);
57+
var_dump($documents[0]->object->parent1->child1 instanceof MyWildcardArrayObject);
5858
var_dump(is_array($documents[0]->object->parent1->child2));
5959
var_dump($documents[0]->object->parent2 instanceof stdClass);
60-
var_dump($documents[0]->object->parent2->child1 instanceof MyWildCardArrayObject);
60+
var_dump($documents[0]->object->parent2->child1 instanceof MyWildcardArrayObject);
6161
var_dump(is_array($documents[0]->object->parent2->child2));
6262

63-
echo "\nSetting 'object.parent1.$' path to 'MyWildCardArrayObject' and 'object.parent2.child1' to 'MyArrayObject'\n";
63+
echo "\nSetting 'object.parent1.$' path to 'MyWildcardArrayObject' and 'object.parent2.child1' to 'MyArrayObject'\n";
6464
$documents = fetch($manager, ["fieldPaths" => [
65-
'object.parent1.$' => "MyWildCardArrayObject",
65+
'object.parent1.$' => "MyWildcardArrayObject",
6666
'object.parent2.child1' => "MyArrayObject",
6767
]]);
6868
var_dump($documents[0]->object->parent1 instanceof stdClass);
69-
var_dump($documents[0]->object->parent1->child1 instanceof MyWildCardArrayObject);
70-
var_dump($documents[0]->object->parent1->child2 instanceof MyWildCardArrayObject);
69+
var_dump($documents[0]->object->parent1->child1 instanceof MyWildcardArrayObject);
70+
var_dump($documents[0]->object->parent1->child2 instanceof MyWildcardArrayObject);
7171
var_dump($documents[0]->object->parent2 instanceof stdClass);
7272
var_dump($documents[0]->object->parent2->child1 instanceof MyArrayObject);
7373
var_dump(is_array($documents[0]->object->parent2->child2));
7474

75-
echo "\nSetting 'object.parent1.$' path to 'MyWildCardArrayObject' and 'object.$.$' to 'MyArrayObject'\n";
75+
echo "\nSetting 'object.parent1.$' path to 'MyWildcardArrayObject' and 'object.$.$' to 'MyArrayObject'\n";
7676
$documents = fetch($manager, ["fieldPaths" => [
77-
'object.parent1.$' => "MyWildCardArrayObject",
77+
'object.parent1.$' => "MyWildcardArrayObject",
7878
'object.$.$' => "MyArrayObject",
7979
]]);
8080
var_dump($documents[0]->object->parent1 instanceof stdClass);
81-
var_dump($documents[0]->object->parent1->child1 instanceof MyWildCardArrayObject);
82-
var_dump($documents[0]->object->parent1->child2 instanceof MyWildCardArrayObject);
81+
var_dump($documents[0]->object->parent1->child1 instanceof MyWildcardArrayObject);
82+
var_dump($documents[0]->object->parent1->child2 instanceof MyWildcardArrayObject);
8383
var_dump($documents[0]->object->parent2 instanceof stdClass);
8484
var_dump($documents[0]->object->parent2->child1 instanceof MyArrayObject);
8585
var_dump($documents[0]->object->parent2->child2 instanceof MyArrayObject);
8686

87-
echo "\nSetting 'object.parent1.$' path to 'MyWildCardArrayObject' and 'object.$.child2' to 'MyArrayObject'\n";
87+
echo "\nSetting 'object.parent1.$' path to 'MyWildcardArrayObject' and 'object.$.child2' to 'MyArrayObject'\n";
8888
$documents = fetch($manager, ["fieldPaths" => [
89-
'object.parent1.child1' => "MyWildCardArrayObject",
89+
'object.parent1.child1' => "MyWildcardArrayObject",
9090
'object.$.child2' => "MyArrayObject",
9191
]]);
9292
var_dump($documents[0]->object->parent1 instanceof stdClass);
93-
var_dump($documents[0]->object->parent1->child1 instanceof MyWildCardArrayObject);
93+
var_dump($documents[0]->object->parent1->child1 instanceof MyWildcardArrayObject);
9494
var_dump($documents[0]->object->parent1->child2 instanceof MyArrayObject);
9595
var_dump($documents[0]->object->parent2 instanceof stdClass);
9696
var_dump(is_array($documents[0]->object->parent2->child1));
9797
var_dump($documents[0]->object->parent2->child2 instanceof MyArrayObject);
98+
99+
echo "\nSetting 'object.parent1.child2 path to 'MyArrayObject' and 'object.$.$' to 'MyWildcardArrayObject'\n";
100+
$documents = fetch($manager, ["fieldPaths" => [
101+
'object.parent1.child2' => "MyArrayObject",
102+
'object.$.$' => "MyWildcardArrayObject",
103+
]]);
104+
var_dump($documents[0]->object->parent1 instanceof stdClass);
105+
var_dump($documents[0]->object->parent1->child1 instanceof MyWildcardArrayObject);
106+
var_dump($documents[0]->object->parent1->child2 instanceof MyArrayObject);
107+
var_dump($documents[0]->object->parent2 instanceof stdClass);
108+
var_dump($documents[0]->object->parent2->child1 instanceof MyWildcardArrayObject);
109+
var_dump($documents[0]->object->parent2->child2 instanceof MyWildcardArrayObject);
98110
?>
99111
===DONE===
100112
<?php exit(0); ?>
101113
--EXPECT--
102-
Setting 'object.$.child1' path to 'MyWildCardArrayObject'
114+
Setting 'object.$.child1' path to 'MyWildcardArrayObject'
115+
bool(true)
116+
bool(true)
117+
bool(true)
118+
bool(true)
119+
bool(true)
120+
bool(true)
121+
122+
Setting 'object.parent1.$' path to 'MyWildcardArrayObject' and 'object.parent2.child1' to 'MyArrayObject'
103123
bool(true)
104124
bool(true)
105125
bool(true)
106126
bool(true)
107127
bool(true)
108128
bool(true)
109129

110-
Setting 'object.parent1.$' path to 'MyWildCardArrayObject' and 'object.parent2.child1' to 'MyArrayObject'
130+
Setting 'object.parent1.$' path to 'MyWildcardArrayObject' and 'object.$.$' to 'MyArrayObject'
111131
bool(true)
112132
bool(true)
113133
bool(true)
114134
bool(true)
115135
bool(true)
116136
bool(true)
117137

118-
Setting 'object.parent1.$' path to 'MyWildCardArrayObject' and 'object.$.$' to 'MyArrayObject'
138+
Setting 'object.parent1.$' path to 'MyWildcardArrayObject' and 'object.$.child2' to 'MyArrayObject'
119139
bool(true)
120140
bool(true)
121141
bool(true)
122142
bool(true)
123143
bool(true)
124144
bool(true)
125145

126-
Setting 'object.parent1.$' path to 'MyWildCardArrayObject' and 'object.$.child2' to 'MyArrayObject'
146+
Setting 'object.parent1.child2 path to 'MyArrayObject' and 'object.$.$' to 'MyWildcardArrayObject'
127147
bool(true)
128148
bool(true)
129149
bool(true)

tests/cursor/cursor-setTypeMap_error-003.phpt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,7 @@ foreach ($fieldPaths as $fieldPath) {
3131

3232
echo throws(function() use ($cursor, $typeMap) {
3333
$cursor->setTypeMap($typeMap);
34-
}, 'MongoDB\Driver\Exception\InvalidArgumentException'), "\n";
35-
36-
echo "\n";
34+
}, 'MongoDB\Driver\Exception\InvalidArgumentException'), "\n\n";
3735
}
3836

3937
?>

0 commit comments

Comments
 (0)