# responsive-menu/3.0.12/tests/app/ViewModels/Components/Button/ButtonTest.php

Responsive Menu – Create Mobile-Friendly Menu, version 3.0.12. 37 lines.

- Page: https://pluginprobe.com/plugins/responsive-menu/3.0.12/code/tests/app/ViewModels/Components/Button/ButtonTest.php
- Raw: https://pluginprobe.com/plugins/responsive-menu/3.0.12/raw/tests/app/ViewModels/Components/Button/ButtonTest.php
- Modified: 2016-09-22T09:45:08+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/responsive-menu/3.0.12/code/tests/app/ViewModels/Components/Button/ButtonTest.php#L10-L20`.

```php
<?php

namespace ResponsiveMenu\ViewModels\Components\Button;

use PHPUnit\Framework\TestCase;
use ResponsiveMenu\Models\Option;
use ResponsiveMenu\Collections\OptionsCollection;

class ButtonTest extends TestCase {

  public function setUp() {
    $this->translator = $this->createMock('ResponsiveMenu\Translation\Translator');
    $this->component = new Button($this->translator);
  }

  public function testRender() {
    $collection = new OptionsCollection;
    $collection->add(new Option('button_title', 'b'));
    $collection->add(new Option('button_title_position', 'left'));
    $collection->add(new Option('button_click_animation', 'd'));
    $collection->add(new Option('button_image', 'e'));
    $collection->add(new Option('button_image_alt', 'g'));
    $collection->add(new Option('button_image_when_clicked', 'f'));
    $collection->add(new Option('button_image_alt_when_clicked', 'h'));

    $this->translator->method('translate')->willReturn('a');

    $rendered = $this->component->render($collection);
    $this->assertContains('responsive-menu-label-left', $rendered);
    $this->assertContains('responsive-menu-accessible', $rendered);
    $this->assertContains('responsive-menu-d', $rendered);
    $this->assertContains('alt="g"', $rendered);
    $this->assertContains('alt="h"', $rendered);
  }

}

```
