예제 #1
0
 public function setUp()
 {
     $this->wordpress = wordpress();
     $this->wordpress->reset();
     $this->model = Model::factory("TestStateless");
     $this->customPostType = CustomPostType::factory("TestCustomPostType");
 }
예제 #2
0
 public function setUp()
 {
     $this->wordpress = wordpress();
     $this->wordpress->reset();
     $this->callback = Router::callback("TestController", "returnTrue");
     $this->url = Router::urlRouting(array(array("GET", "/test1/", "TestController#returnTrue")));
     $this->url->route->listen();
 }
 public function testLimitReachedDismisses()
 {
     $this->set_api_key('LIMIT123');
     $this->upload_image(dirname(__FILE__) . '/../fixtures/input-example.png');
     self::$driver->findElement(WebDriverBy::cssSelector('.tiny-notice button, .tiny-notice a.tiny-dismiss'))->click();
     self::$driver->wait(2)->until(WebDriverExpectedCondition::invisibilityOfElementWithText(WebDriverBy::cssSelector('.tiny-dismiss'), 'Dismiss'));
     self::$driver->get(wordpress('/wp-admin/options-media.php'));
     $this->assertEquals(0, count(self::$driver->findElements(WebDriverBy::cssSelector('div.error p'))));
 }
예제 #4
0
 public function testIncorrectJsonButton()
 {
     $this->enable_compression_sizes(array());
     $this->upload_image(dirname(__FILE__) . '/../fixtures/input-example.png');
     $this->enable_compression_sizes(array('medium', 'large'));
     $this->set_api_key('JSON1234');
     self::$driver->get(wordpress('/wp-admin/upload.php'));
     self::$driver->findElement(WebDriverBy::cssSelector('td.tiny-compress-images button'))->click();
     self::$driver->wait(2)->until(WebDriverExpectedCondition::textToBePresentInElement(WebDriverBy::cssSelector('td.tiny-compress-images'), 'JSON: Syntax error [4]'));
 }
 public function testBulkCompressShouldCompressAll()
 {
     $this->prepare(1, 1);
     self::$driver->get(wordpress('/wp-admin/upload.php?page=tiny-bulk-compress.php'));
     $elements = self::$driver->findElements(WebDriverBy::cssSelector('#tiny-bulk-compress p'));
     $this->assertContains('2 images', $elements[1]->getText());
     self::$driver->findElement(WebDriverBy::cssSelector('#tiny-bulk-compress button'))->click();
     self::$driver->wait(2)->until(WebDriverExpectedCondition::textToBePresentInElement(WebDriverBy::cssSelector('.updated'), 'All images are processed'));
     $elements = self::$driver->findElements(WebDriverBy::cssSelector('.media-item .filename'));
     $filenames = array_map('innerText', $elements);
     $this->assertEquals(2, count($filenames));
     $this->assertContains('input-large', $filenames);
     $this->assertContains('input-example', $filenames);
     $this->assertEquals('2', self::$driver->findElement(WebDriverBy::cssSelector('#tiny-progress span'))->getText());
     $this->assertEquals('5', self::$driver->findElement(WebDriverBy::cssSelector('#tiny-status span'))->getText());
 }
예제 #6
0
 protected function enable_compression_sizes($sizes)
 {
     self::$driver->get(wordpress('/wp-admin/options-media.php'));
     $elements = self::$driver->findElements(WebDriverBy::xpath('//input[starts-with(@id, "tinypng_sizes_")]'));
     foreach ($elements as $element) {
         $size = str_replace('tinypng_sizes_', '', $element->getAttribute('id'));
         if (in_array($size, $sizes)) {
             if (!$element->getAttribute('checked')) {
                 $element->click();
             }
         } else {
             if ($element->getAttribute('checked')) {
                 $element->click();
             }
         }
     }
     self::$driver->findElement(WebDriverBy::tagName('form'))->submit();
 }
 protected function view_edit_image($image_title = 'input-large')
 {
     $url = wordpress('/wp-admin/upload.php');
     if (self::$driver->getCurrentUrl() != $url) {
         self::$driver->get($url);
     }
     if (wordpress_version() >= 43) {
         $selector = "//span[text()='" . $image_title . "']";
     } else {
         $selector = "//a[contains(text(),'" . $image_title . "')]";
     }
     self::$driver->findElement(WebDriverBy::xpath($selector))->click();
 }
 public function testBulkCompressActionShouldBePresent()
 {
     $this->upload_image(dirname(__FILE__) . '/../fixtures/example-tinypng.png');
     self::$driver->get(wordpress('/wp-admin/upload.php?mode=list'));
     $this->assertEquals('tinypng_bulk_compress', self::$driver->findElement(WebDriverBy::cssSelector('select[name="action"] option[value="tinypng_bulk_compress"]'))->getAttribute('value'));
 }
예제 #9
0
function activate_plugin($driver)
{
    $driver->get(wordpress('/wp-admin/plugins.php'));
    $activate_links = $driver->findElements(WebDriverBy::xpath('//a[starts-with(@href, "plugins.php?action=activate&plugin=tinypng-image-compression")]'));
    $deactivate_links = $driver->findElements(WebDriverBy::xpath('//a[starts-with(@href, "plugins.php?action=deactivate&plugin=tinypng-image-compression")]'));
    if (count($activate_links) > 0) {
        $activate_links[0]->click();
    } elseif (count($deactivate_links) > 0) {
        print "Plugin already activated.\n";
    } else {
        var_dump($driver->getPageSource());
        throw new UnexpectedValueException('Activating plugin failed.');
    }
}
 protected function visit($path)
 {
     self::$driver->get(wordpress($path));
 }
 public function setUp()
 {
     parent::setUp();
     self::$driver->get(wordpress('/wp-admin/options-media.php'));
 }
예제 #12
0
function add_shortcode($tag, $func)
{
    wordpress()->add_shortcode($tag, $func);
}
 public function setUp()
 {
     parent::setUp();
     self::$driver->get(wordpress('/wp-admin/plugins.php'));
 }
예제 #14
0
 public function setUp()
 {
     $this->wordpress = wordpress();
 }
예제 #15
0
 public function testShouldShowSavings()
 {
     reset_webservice();
     $this->set_api_key('PNG123');
     $this->upload_image(dirname(__FILE__) . '/../fixtures/input-example.png');
     self::$driver->get(wordpress('/wp-admin/options-media.php'));
     self::$driver->wait(2)->until(WebDriverExpectedCondition::presenceOfElementLocated(WebDriverBy::cssSelector('#tiny-compress-savings p')));
     $elements = self::$driver->findElement(WebDriverBy::id('tiny-compress-savings'))->findElements(WebDriverBy::tagName('p'));
     $statuses = array_map('innerText', $elements);
     $this->assertContains('You have saved a total of 53.0 kB on images!', $statuses);
 }