HEX
Server: Apache
System: Linux pdx1-shared-a1-38 6.6.104-grsec-jammy+ #3 SMP Tue Sep 16 00:28:11 UTC 2025 x86_64
User: mmickelson (3396398)
PHP: 8.1.31
Disabled: NONE
Upload Files
File: //usr/local/wp/tests/WpVersionCompareTest.php
<?php

use WP_CLI\Tests\TestCase;
use WP_CLI\Utils;

class WPVersionCompareTest extends TestCase {

	/**
	 * Test basic functionality
	 */
	public function testBasic() {
		$GLOBALS['wp_version'] = '4.9-alpha-40870-src';
		$this->assertTrue( Utils\wp_version_compare( '4.8', '>=' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.8', '<' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.9-alpha-40870-src', '>' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9-alpha-40870-src', '=' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.9-alpha-40870-src', '<' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9-beta1', '<' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.9-beta1', '>' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.9-beta1-45000', '>' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9-beta2-46000', '<' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.9', '>=' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9', '<' ) );

		$GLOBALS['wp_version'] = '4.9-beta1-45000';
		$this->assertTrue( Utils\wp_version_compare( '4.8', '>=' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.8', '<' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9-alpha-40870-src', '>' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.9-beta1', '<' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9-beta1', '>' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9-beta1-45000', '>=' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9-beta1-45000', '=' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.9-beta1-45000', '>' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9-beta2-46000', '<' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.9-beta2-46000', '>=' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.9', '>=' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9', '<' ) );

		$GLOBALS['wp_version'] = '4.9-beta2-46000';
		$this->assertTrue( Utils\wp_version_compare( '4.8', '>=' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.8', '<' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9-alpha-40870-src', '>' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.9-alpha-40870-src', '=' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.9-beta1', '<' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9-beta1', '>' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9-beta1-45000', '>' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9-beta2-45550', '>' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.9-beta2-45550', '<' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.9', '>=' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9', '<' ) );

		$GLOBALS['wp_version'] = '4.9-rc1-47000';
		$this->assertTrue( Utils\wp_version_compare( '4.8', '>=' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.8', '<' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9-alpha-40870-src', '>' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.9-alpha-40870-src', '=' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.9-beta1', '<' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9-beta1', '>' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9-beta1-45000', '>' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9-beta2-45550', '>' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.9-beta2-45550', '<' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9-rc2', '<' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9-rc2-48000', '<' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.9', '>=' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9', '<' ) );

		$GLOBALS['wp_version'] = '4.9';
		$this->assertTrue( Utils\wp_version_compare( '4.8', '>=' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.8', '<' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9-alpha-40870-src', '>' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.9-alpha-40870-src', '<' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9-beta1-45000', '>' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.9-beta1', '<' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9-beta1', '>' ) );
		$this->assertTrue( Utils\wp_version_compare( '4.9', '>=' ) );
		$this->assertFalse( Utils\wp_version_compare( '4.9', '<' ) );
	}
}