Ejemplo n.º 1
0
 public function testResetProgress()
 {
     $menu = $this->getMockBuilder(CliMenu::class)->disableOriginalConstructor()->getMock();
     $userStateSerializer = $this->getMockBuilder(UserStateSerializer::class)->disableOriginalConstructor()->getMock();
     $userStateSerializer->expects($this->once())->method('serialize')->with($this->isInstanceOf(UserState::class));
     $output = $this->getMockBuilder(OutputInterface::class)->disableOriginalConstructor()->getMock();
     $output->expects($this->once())->method('writeLine')->with("Status Reset!");
     $resetProgress = new ResetProgress($userStateSerializer, $output);
     $resetProgress->__invoke($menu);
 }
Ejemplo n.º 2
0
 public function testResetProgressDisablesParentMenuItems()
 {
     $item1 = $this->createMock(MenuItemInterface::class);
     $item2 = $this->createMock(MenuItemInterface::class);
     $item1->expects($this->once())->method('hideItemExtra');
     $item2->expects($this->once())->method('hideItemExtra');
     $terminal = $this->createMock(TerminalInterface::class);
     $menu = new CliMenu('Menu', [$item1, $item2], $terminal);
     $confirm = $this->createMock(Confirm::class);
     $confirm->expects($this->once())->method('getStyle')->willReturn(new MenuStyle($terminal));
     $confirm->expects($this->once())->method('display')->with('OK');
     $subMenu = $this->getMockBuilder(CliMenu::class)->setMethods(['confirm'])->setConstructorArgs(['Sub Menu', [], $terminal])->getMock();
     $subMenu->setParent($menu);
     $subMenu->expects($this->once())->method('confirm')->willReturn($confirm);
     $userStateSerializer = $this->createMock(UserStateSerializer::class);
     $userStateSerializer->expects($this->once())->method('serialize')->with($this->isInstanceOf(UserState::class));
     $resetProgress = new ResetProgress($userStateSerializer);
     $resetProgress->__invoke($subMenu);
 }