FunctionsTest.php 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. <?php
  2. namespace AlibabaCloud\Client\Tests\HigherthanorEqualtoVersion7_2\Unit;
  3. use PHPUnit\Framework\TestCase;
  4. use AlibabaCloud\Client\Exception\ClientException;
  5. /**
  6. * Class FunctionsTest
  7. *
  8. * @package AlibabaCloud\Client\Tests\HigherthanorEqualtoVersion7_2\Unit
  9. */
  10. class FunctionsTest extends TestCase
  11. {
  12. public static function testDefault()
  13. {
  14. self::assertEquals('default', \AlibabaCloud\Client\env('default', 'default'));
  15. }
  16. public static function testEnv()
  17. {
  18. self::assertEquals(null, \AlibabaCloud\Client\env('null'));
  19. }
  20. public static function testSwitch()
  21. {
  22. putenv('TRUE=true');
  23. self::assertEquals('true', getenv('TRUE'));
  24. self::assertEquals(true, \AlibabaCloud\Client\env('TRUE'));
  25. putenv('TRUE=(true)');
  26. self::assertEquals('(true)', getenv('TRUE'));
  27. self::assertEquals(true, \AlibabaCloud\Client\env('TRUE'));
  28. putenv('FALSE=false');
  29. self::assertEquals('false', getenv('FALSE'));
  30. self::assertEquals(false, \AlibabaCloud\Client\env('FALSE'));
  31. putenv('FALSE=(false)');
  32. self::assertEquals('(false)', getenv('FALSE'));
  33. self::assertEquals(false, \AlibabaCloud\Client\env('FALSE'));
  34. putenv('EMPTY=empty');
  35. self::assertEquals('empty', getenv('EMPTY'));
  36. self::assertEquals(false, \AlibabaCloud\Client\env('EMPTY'));
  37. putenv('EMPTY=(empty)');
  38. self::assertEquals('(empty)', getenv('EMPTY'));
  39. self::assertEquals('', \AlibabaCloud\Client\env('EMPTY'));
  40. putenv('NULL=null');
  41. self::assertEquals('null', getenv('NULL'));
  42. self::assertEquals(null, \AlibabaCloud\Client\env('NULL'));
  43. putenv('NULL=(null)');
  44. self::assertEquals('(null)', getenv('NULL'));
  45. self::assertEquals(null, \AlibabaCloud\Client\env('NULL'));
  46. }
  47. public static function testString()
  48. {
  49. putenv('STRING="Alibaba Cloud"');
  50. self::assertEquals('"Alibaba Cloud"', getenv('STRING'));
  51. self::assertEquals('Alibaba Cloud', \AlibabaCloud\Client\env('STRING'));
  52. putenv('STRING="Alibaba Cloud');
  53. self::assertEquals('"Alibaba Cloud', getenv('STRING'));
  54. self::assertEquals('"Alibaba Cloud', \AlibabaCloud\Client\env('STRING'));
  55. }
  56. public static function testEnvNotEmpty()
  57. {
  58. self::assertFalse(\AlibabaCloud\Client\envNotEmpty('ALIBABA_CLOUD_NOT_EXISTS'));
  59. }
  60. public function testEnvNotEmptyException()
  61. {
  62. $this->expectException(ClientException::class);
  63. $this->expectExceptionMessage("Environment variable 'ALIBABA_CLOUD_NOT_EXISTS' cannot be empty");
  64. putenv('ALIBABA_CLOUD_NOT_EXISTS=');
  65. self::assertFalse(\AlibabaCloud\Client\envNotEmpty('ALIBABA_CLOUD_NOT_EXISTS'));
  66. }
  67. }