-
Notifications
You must be signed in to change notification settings - Fork 10
/
Copy pathtest-plugin-conflicts.php
50 lines (42 loc) · 1.54 KB
/
test-plugin-conflicts.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<?php
/**
* WordPress unit test plugin.
*
* @package Optimole-WP
* @subpackage Tests
* @copyright Copyright (c) 2023, ThemeIsle
* @license http://opensource.org/licenses/gpl-2.0.php GNU Public License
*/
/**
* Class Test_Plugin_Conflicts.
*/
class Test_Plugin_Conflicts extends WP_UnitTestCase {
public static $conflicts;
public function setUp(): void {
parent::setUp();
self::$conflicts = new Optml_Conflicting_Plugins();
add_filter( 'optml_conflicting_active_plugins', function ( $plugins ) {
return [
'wp-smush' => 'wp-smushit/wp-smush.php',
'wp-smush-pro' => 'wp-smush-pro/wp-smush.php'
];
} );
}
public function test_has_conflicting_plugins() {
$this->assertTrue( self::$conflicts->has_conflicting_plugins() );
$this->assertCount( 2, self::$conflicts->get_conflicting_plugins() );
}
public function test_dismissed_conflicts() {
self::$conflicts->dismiss_conflicting_plugins();
$this->assertCount( 0, self::$conflicts->get_conflicting_plugins() );
}
public function test_new_dismissed_conflicts() {
self::$conflicts->dismiss_conflicting_plugins();
add_filter( 'optml_conflicting_active_plugins', function ( $plugins ) {
$plugins['kraken'] = 'kraken-image-optimizer/kraken.php';
return $plugins;
} );
$this->assertCount( 1, self::$conflicts->get_conflicting_plugins() );
$this->assertCount( 3, self::$conflicts->get_conflicting_plugins( true ) );
}
}