public function testInstallpackageActionPostValid()
 {
     $postData = array('Packages' => array('package1' => '0', 'package2' => '1'));
     $group = $this->getMock('Model\\Group\\Group');
     $group->expects($this->once())->method('assignPackage')->with('package2');
     $this->_groupManager->expects($this->once())->method('getGroup')->with('test')->willReturn($group);
     $this->_packageAssignmentForm->expects($this->once())->method('isValid')->will($this->returnValue(true));
     $this->_packageAssignmentForm->expects($this->once())->method('setData')->with($postData);
     $this->_packageAssignmentForm->expects($this->once())->method('getData')->will($this->returnValue($postData));
     $this->dispatch('/console/group/installpackage/?name=test', 'POST', $postData);
     $this->assertRedirectTo('/console/group/packages/?name=test');
 }
 /**
  * Assign a package
  *
  * POST only
  *
  * @return \Zend\Http\Response redirect response
  */
 public function installpackageAction()
 {
     if ($this->getRequest()->isPost()) {
         $this->_packageAssignmentForm->setData($this->params()->fromPost());
         if ($this->_packageAssignmentForm->isValid()) {
             $data = $this->_packageAssignmentForm->getData();
             foreach ($data['Packages'] as $name => $install) {
                 if ($install) {
                     $this->_currentGroup->assignPackage($name);
                 }
             }
         }
     }
     return $this->redirectToRoute('group', 'packages', array('name' => $this->params()->fromQuery('name')));
 }