浏览代码

fix: return only adminItem for Dashboard groups

Amine Zaghdoudi 10 年之前
父节点
当前提交
f2504a14a3
共有 2 个文件被更改,包括 5 次插入17 次删除
  1. 3 0
      Admin/Pool.php
  2. 2 17
      Tests/Admin/PoolTest.php

+ 3 - 0
Admin/Pool.php

@@ -85,6 +85,7 @@ class Pool
         foreach ($this->adminGroups as $name => $adminGroup) {
             if (isset($adminGroup['items'])) {
                 foreach ($adminGroup['items'] as $key => $item) {
+                    // Only Admin Group should be returned
                     if ('' != $item['admin']) {
                         $admin = $this->getInstance($item['admin']);
 
@@ -93,6 +94,8 @@ class Pool
                         } else {
                             unset($groups[$name]['items'][$key]);
                         }
+                    } else {
+                        unset($groups[$name]['items'][$key]);
                     }
                 }
             }

+ 2 - 17
Tests/Admin/PoolTest.php

@@ -82,27 +82,12 @@ class PoolTest extends \PHPUnit_Framework_TestCase
             'adminGroup3' => array(
                 'items' => array('itemKey' =>  array('admin' => 'sonata.user.admin.group3', 'label' => '', 'route' => '', 'route_params' => array()))
             ),
-            'adminGroup4' => array(
-                'items' => array('itemKey' => array('admin' => '', 'label' => 'custom_label', 'route' => 'custom_route', 'route_params' => array()))
-            ),
         ));
 
         $groups = $pool->getDashboardGroups();
 
-        $this->assertCount(2, $groups);
-
-        $expectedAdminGroup4 = array(
-            'items' => array(
-                'itemKey' => array(
-                    'admin'         => '',
-                    'label'         => 'custom_label',
-                    'route'         => 'custom_route',
-                    'route_params'  => array()
-                )
-            )
-        );
-
-        $this->assertEquals($expectedAdminGroup4, $groups['adminGroup4']);
+        $this->assertCount(1, $groups);
+        $this->assertEquals($admin_group1, $groups['adminGroup1']['items']['itemKey']);
     }
 
     /**