public function testGetWpRequireFile() { $plugin = WPRequireTestUtils::createMockPlugin(array("php" => "1.0.0", "wordpress" => "4.3", "plugins" => array("myplugin/myplugin.php" => "1.0.0"))); $require = $plugin->getWpRequire(); $this->assertTrue($require instanceof WPRequireFile); $this->assertEquals("1.0.0", (string) $require->getRequiredPhpVersion()); $this->assertEquals("4.3.*", (string) $require->getRequiredWpVersion()); $requiredPlugins = $require->getRequiredPlugins(); $requiredPlugin = $requiredPlugins["myplugin/myplugin.php"]; $this->assertEquals("1.0.0", (string) $requiredPlugin); }
public function testGetUnsuportedPluginsOutdatedPlugin() { $WPRequire = new WPRequire(); $requiredPlugin = WPRequireTestUtils::createMockPlugin(array()); $requiredPluginFile = $requiredPlugin->getPluginFile(); // Create the mock plugin $mockPlugin = WPRequireTestUtils::createMockPlugin(array("plugins" => array($requiredPluginFile => "2.0.0"))); $mockPluginFile = $mockPlugin->getPluginFile(); // Activate the mock plugin WPRequireTestUtils::invokeMethod($WPRequire, "activatePlugin", [$mockPluginFile]); WPRequireTestUtils::invokeMethod($WPRequire, "activatePlugin", [$requiredPluginFile]); // Get unsuported plugins $unsuported = WPRequireTestUtils::invokeMethod($WPRequire, "getUnsuportedPlugins"); // Check if our mock plugin is considered usuported(as it should) $this->assertTrue(isset($unsuported[$mockPluginFile])); // Test that the PHP reason is marked as expected $this->assertEquals(array(new Version("2.0.0"), new Version("1.0.0")), $unsuported[$mockPluginFile]['plugins'][$requiredPluginFile]); // Test that there is only one reason for this to be unsuported $this->assertEquals(count($unsuported[$mockPluginFile]['plugins']), 1); }