72
72
expect ($ service ->for ('foo ' ))->toBe ($ resolver );
73
73
});
74
74
75
+ it ('can resolve simple defined route ' , function () {
76
+ URL ::shouldReceive ('route ' )
77
+ ->once ()
78
+ ->with ('foo ' , [])
79
+ ->andReturn ('https://foo.bar/testing-route ' );
80
+
81
+ $ resolver = (new Route ('some-key ' ))->route ('foo ' );
82
+
83
+ expect ($ resolver ->resolve ())->toBe ('https://foo.bar/testing-route ' );
84
+ });
85
+
86
+ it ('can resolve defined route with arguments ' , function () {
87
+ URL ::shouldReceive ('route ' )
88
+ ->once ()
89
+ ->with ('foo ' , ['bar ' => 'test ' , 'foo ' => 'bar ' ])
90
+ ->andReturn ('https://foo.bar/testing-route ' );
91
+
92
+ $ resolver = (new Route ('some-key ' ))->route ('foo ' , ['bar ' => 'overwritten ' , 'foo ' => 'bar ' ]);
93
+
94
+ expect ($ resolver ->resolve (['bar ' => 'test ' ]))->toBe ('https://foo.bar/testing-route ' );
95
+ });
96
+
75
97
it ('can register resource archive with index page and resource entries from array ' , function () {
76
98
setupAppBindings ();
77
99
110
132
111
133
expect ($ resolver )->toBeInstanceOf (Archive::class);
112
134
expect ($ service ->for ('posts ' ))->toBeWorkingArchiveResolver ();
135
+ expect ($ service ->tryFor ('posts.index ' ))->toBeNull ();
113
136
expect ($ service ->for ('posts.item ' ))->toBeWorkingArchiveItemsResolver (
114
137
collect (FakeModel::$ items )->mapWithKeys (fn ($ item ) => [$ item ['id ' ] => $ item ['title ' ]])
115
138
);
@@ -134,6 +157,7 @@ public function toArray() {
134
157
135
158
expect ($ resolver )->toBeInstanceOf (Archive::class);
136
159
expect ($ service ->for ('posts ' ))->toBeWorkingArchiveResolver ();
160
+ expect ($ service ->tryFor ('posts.index ' ))->toBeNull ();
137
161
expect ($ service ->for ('posts.item ' ))->toBeWorkingArchiveItemsResolver (
138
162
collect (FakeModel::$ items )->mapWithKeys (fn ($ item ) => [$ item ['id ' ] => $ item ['title ' ]])
139
163
);
@@ -154,6 +178,7 @@ public function toArray() {
154
178
155
179
expect ($ resolver )->toBeInstanceOf (Archive::class);
156
180
expect ($ service ->for ('posts ' ))->toBeWorkingArchiveResolver ();
181
+ expect ($ service ->tryFor ('posts.index ' ))->toBeNull ();
157
182
expect ($ service ->for ('posts.item ' ))->toBeWorkingArchiveItemsResolver (
158
183
collect (FakeModel::$ items )->mapWithKeys (fn ($ item ) => [$ item ['id ' ] => $ item ['title ' ]])
159
184
);
@@ -174,6 +199,7 @@ public function toArray() {
174
199
175
200
expect ($ resolver )->toBeInstanceOf (Archive::class);
176
201
expect ($ service ->for ('posts ' ))->toBeWorkingArchiveResolver ();
202
+ expect ($ service ->tryFor ('posts.index ' ))->toBeNull ();
177
203
expect ($ service ->for ('posts.item ' ))->toBeWorkingArchiveItemsResolver (
178
204
collect (FakeModel::$ items )->mapWithKeys (fn ($ item ) => [$ item ['id ' ] => $ item ['title ' ]])
179
205
);
@@ -193,6 +219,7 @@ public function toArray() {
193
219
194
220
expect ($ resolver )->toBeInstanceOf (Archive::class);
195
221
expect ($ service ->for ('posts ' ))->toBeWorkingArchiveResolver ();
222
+ expect ($ service ->tryFor ('posts.index ' ))->toBeNull ();
196
223
expect ($ service ->for ('posts.item ' ))->toBeWorkingArchiveItemsResolver (
197
224
collect (FakeModel::$ items )->mapWithKeys (fn ($ item ) => [$ item ['id ' ] => $ item ['title ' ]])
198
225
);
@@ -212,29 +239,8 @@ public function toArray() {
212
239
213
240
expect ($ resolver )->toBeInstanceOf (Archive::class);
214
241
expect ($ service ->for ('posts ' ))->toBeWorkingArchiveResolver ();
242
+ expect ($ service ->tryFor ('posts.index ' ))->toBeNull ();
215
243
expect ($ service ->for ('posts.item ' ))->toBeWorkingArchiveItemsResolver (
216
244
collect (FakeModel::$ items )->take (2 )->mapWithKeys (fn ($ item ) => [$ item ['id ' ] => $ item ['title ' ]])
217
245
);
218
246
});
219
-
220
- it ('can resolve simple defined route ' , function () {
221
- URL ::shouldReceive ('route ' )
222
- ->once ()
223
- ->with ('foo ' , [])
224
- ->andReturn ('https://foo.bar/testing-route ' );
225
-
226
- $ resolver = (new Route ('some-key ' ))->route ('foo ' );
227
-
228
- expect ($ resolver ->resolve ())->toBe ('https://foo.bar/testing-route ' );
229
- });
230
-
231
- it ('can resolve defined route with arguments ' , function () {
232
- URL ::shouldReceive ('route ' )
233
- ->once ()
234
- ->with ('foo ' , ['bar ' => 'test ' , 'foo ' => 'bar ' ])
235
- ->andReturn ('https://foo.bar/testing-route ' );
236
-
237
- $ resolver = (new Route ('some-key ' ))->route ('foo ' , ['bar ' => 'overwritten ' , 'foo ' => 'bar ' ]);
238
-
239
- expect ($ resolver ->resolve (['bar ' => 'test ' ]))->toBe ('https://foo.bar/testing-route ' );
240
- });
0 commit comments