HttpTraitTest.php 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. <?php
  2. namespace AlibabaCloud\Client\Tests\LowerthanVersion7_2\Unit\Traits;
  3. use PHPUnit\Framework\TestCase;
  4. use AlibabaCloud\Client\AlibabaCloud;
  5. use AlibabaCloud\Client\Exception\ClientException;
  6. /**
  7. * Class HttpTraitTest
  8. *
  9. * @package AlibabaCloud\Client\Tests\LowerthanVersion7_2\Unit\Client\Traits
  10. *
  11. * @coversDefaultClass \AlibabaCloud\Client\Traits\ClientTrait
  12. */
  13. class HttpTraitTest extends TestCase
  14. {
  15. /**
  16. * @expectedException \AlibabaCloud\Client\Exception\ClientException
  17. * @expectedExceptionMessage Client 'default' not found
  18. * @throws ClientException
  19. */
  20. public static function testGetDefaultClient()
  21. {
  22. AlibabaCloud::flush();
  23. AlibabaCloud::getDefaultClient();
  24. }
  25. /**
  26. * @throws ClientException
  27. */
  28. public function testVerify()
  29. {
  30. // Setup
  31. $client = AlibabaCloud::accessKeyClient('foo', 'bar')->asDefaultClient();
  32. // Assert
  33. self::assertFalse($client->options['verify']);
  34. // Test
  35. $client->verify(true);
  36. // Assert
  37. self::assertTrue($client->options['verify']);
  38. }
  39. /**
  40. * @throws ClientException
  41. */
  42. public static function testTimeout()
  43. {
  44. $request = AlibabaCloud::rpc()->timeout(1);
  45. self::assertEquals(1, $request->options['timeout']);
  46. }
  47. /**
  48. * @expectedException \AlibabaCloud\Client\Exception\ClientException
  49. * @expectedExceptionMessage Timeout cannot be empty
  50. * @throws ClientException
  51. */
  52. public static function testTimeoutException()
  53. {
  54. AlibabaCloud::rpc()->timeout('');
  55. }
  56. /**
  57. * @throws ClientException
  58. */
  59. public static function testConnectTimeout()
  60. {
  61. $request = AlibabaCloud::rpc()->connectTimeout(1);
  62. self::assertEquals(1, $request->options['connect_timeout']);
  63. }
  64. /**
  65. * @expectedException \AlibabaCloud\Client\Exception\ClientException
  66. * @expectedExceptionMessage Connect Timeout cannot be empty
  67. * @throws ClientException
  68. */
  69. public static function testConnectTimeoutException()
  70. {
  71. AlibabaCloud::rpc()->connectTimeout('');
  72. }
  73. /**
  74. * @throws ClientException
  75. */
  76. public static function testTimeoutMilliseconds()
  77. {
  78. $request = AlibabaCloud::rpc()->timeoutMilliseconds(1);
  79. self::assertEquals(0.001, $request->options['timeout']);
  80. }
  81. /**
  82. * @throws ClientException
  83. */
  84. public static function testConnectTimeoutMilliseconds()
  85. {
  86. $request = AlibabaCloud::rpc()->connectTimeoutMilliseconds(1);
  87. self::assertEquals(0.001, $request->options['connect_timeout']);
  88. }
  89. /**
  90. * @expectedException \AlibabaCloud\Client\Exception\ClientException
  91. * @expectedExceptionMessage Milliseconds must be int
  92. * @throws ClientException
  93. */
  94. public static function testTimeoutMillisecondsException()
  95. {
  96. AlibabaCloud::rpc()->timeoutMilliseconds('');
  97. }
  98. /**
  99. * @expectedException \AlibabaCloud\Client\Exception\ClientException
  100. * @expectedExceptionMessage Milliseconds must be int
  101. * @throws ClientException
  102. */
  103. public static function testConnectTimeoutMillisecondsException()
  104. {
  105. AlibabaCloud::rpc()->connectTimeoutMilliseconds('');
  106. }
  107. }