77use Illuminate \Support \Facades \Config ;
88use LIQRGV \QueryFilter \Exception \ModelNotFoundException ;
99use LIQRGV \QueryFilter \Exception \NotModelException ;
10+ use LIQRGV \QueryFilter \Mocks \MockClosureModel ;
11+ use LIQRGV \QueryFilter \Mocks \MockModel ;
1012use LIQRGV \QueryFilter \Mocks \MockModelController ;
1113use LIQRGV \QueryFilter \RequestParser ;
1214use Symfony \Component \HttpFoundation \ParameterBag ;
@@ -36,7 +38,7 @@ function testRequestViaController()
3638 Config::request_parser ($ requestParserOptions );
3739 $ requestParser = new RequestParser ($ request );
3840 $ builderStruct = $ requestParser ->createModelBuilderStruct ($ request );
39- $ this ->assertEquals (' LIQRGV\QueryFilter\Mocks\ MockModel' , $ builderStruct ->baseModelName );
41+ $ this ->assertEquals (MockModel::class , $ builderStruct ->baseModelName );
4042 }
4143
4244 function testRequestViaClosure ()
@@ -60,7 +62,30 @@ function testRequestViaClosure()
6062 Config::request_parser ($ requestParserOptions );
6163 $ requestParser = new RequestParser ($ request );
6264 $ builderStruct = $ requestParser ->createModelBuilderStruct ($ request );
63- $ this ->assertEquals ('LIQRGV\QueryFilter\Mocks\MockClosureModel ' , $ builderStruct ->baseModelName );
65+ $ this ->assertEquals (MockClosureModel::class, $ builderStruct ->baseModelName );
66+ }
67+
68+ function testModelSetter ()
69+ {
70+ $ uri = 'some_model ' ;
71+ $ controllerClass = MockModelController::class;
72+ $ query = new ParameterBag ([
73+ "sort " => "-name " ,
74+ ]);
75+ $ requestParserOptions = [
76+ 'model_namespaces ' => [
77+ 'LIQRGV\QueryFilter\Mocks ' ,
78+ ]
79+ ];
80+
81+ $ request = $ this ->createControllerRequest ($ uri , $ controllerClass , $ query , $ requestParserOptions );
82+
83+ $ requestParser = new RequestParser ($ request );
84+ $ requestParser ->setModel (MockModel::class);
85+ $ builder = $ requestParser ->getBuilder ();
86+
87+ $ query = $ builder ->getQuery ();
88+ $ this ->assertEquals ("mock_models " , $ query ->from );
6489 }
6590
6691 function testSortBy ()
0 commit comments