19c37410dSMark Prins<?php 29c37410dSMark Prins/* 39c37410dSMark Prins * Copyright (c) 2016 Mark C. Prins <mprins@users.sf.net> 49c37410dSMark Prins * 59c37410dSMark Prins * Permission to use, copy, modify, and distribute this software for any 69c37410dSMark Prins * purpose with or without fee is hereby granted, provided that the above 79c37410dSMark Prins * copyright notice and this permission notice appear in all copies. 89c37410dSMark Prins * 99c37410dSMark Prins * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 109c37410dSMark Prins * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 119c37410dSMark Prins * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 129c37410dSMark Prins * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 139c37410dSMark Prins * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 149c37410dSMark Prins * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 159c37410dSMark Prins * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 169c37410dSMark Prins */ 179c37410dSMark Prins 189c37410dSMark Prins/** 199c37410dSMark Prins * General tests for the openlayersmap plugin 209c37410dSMark Prins * 219c37410dSMark Prins * @group plugin_openlayersmap 229c37410dSMark Prins * @group plugin_dokuwikispatial 239c37410dSMark Prins * @group plugins 249c37410dSMark Prins */ 259c37410dSMark Prinsclass general_plugin_openlayersmap_test extends DokuWikiTest { 269c37410dSMark Prins 279c37410dSMark Prins protected $pluginsEnabled = array('openlayersmap', 'geophp'); 289c37410dSMark Prins 299c37410dSMark Prins /** 3057f8d5bbSMark Prins * Simple test to make sure the plugin.info.txt is in correct format. 319c37410dSMark Prins */ 3257f8d5bbSMark Prins final public function test_plugininfo(): void { 339c37410dSMark Prins $file = __DIR__ . '/../plugin.info.txt'; 3457f8d5bbSMark Prins self::assertFileExists($file); 359c37410dSMark Prins 369c37410dSMark Prins $info = confToHash($file); 379c37410dSMark Prins 3857f8d5bbSMark Prins self::assertArrayHasKey('base', $info); 3957f8d5bbSMark Prins self::assertArrayHasKey('author', $info); 4057f8d5bbSMark Prins self::assertArrayHasKey('email', $info); 4157f8d5bbSMark Prins self::assertArrayHasKey('date', $info); 4257f8d5bbSMark Prins self::assertArrayHasKey('name', $info); 4357f8d5bbSMark Prins self::assertArrayHasKey('desc', $info); 4457f8d5bbSMark Prins self::assertArrayHasKey('url', $info); 459c37410dSMark Prins 4657f8d5bbSMark Prins self::assertEquals('openlayersmap', $info['base']); 4757f8d5bbSMark Prins self::assertRegExp('/^https?:\/\//', $info['url']); 4857f8d5bbSMark Prins self::assertTrue(mail_isvalid($info['email'])); 4957f8d5bbSMark Prins self::assertRegExp('/^\d\d\d\d-\d\d-\d\d$/', $info['date']); 50*68188742SMark Prins self::assertNotFalse(strtotime($info['date'])); 519c37410dSMark Prins } 529c37410dSMark Prins 539c37410dSMark Prins /** 549c37410dSMark Prins * test if plugin is loaded. 559c37410dSMark Prins */ 5657f8d5bbSMark Prins final public function test_plugin_openlayersmap_isloaded(): void { 579c37410dSMark Prins global $plugin_controller; 5857f8d5bbSMark Prins self::assertContains( 5957f8d5bbSMark Prins 'geophp', $plugin_controller->getList(), "geophp plugin is loaded" 609c37410dSMark Prins ); 6157f8d5bbSMark Prins self::assertContains( 6257f8d5bbSMark Prins 'openlayersmap', $plugin_controller->getList(), "openlayersmap plugin is loaded" 639c37410dSMark Prins ); 649c37410dSMark Prins } 659c37410dSMark Prins} 66