Create IXExponentialBackoffTest.cpp
This commit is contained in:
		
				
					committed by
					
						 GitHub
						GitHub
					
				
			
			
				
	
			
			
			
						parent
						
							a77fd2d698
						
					
				
				
					commit
					b72f81540b
				
			
							
								
								
									
										36
									
								
								test/IXExponentialBackoffTest.cpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								test/IXExponentialBackoffTest.cpp
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,36 @@ | ||||
| /* | ||||
|  *  IXExponentialBackoffTest.cpp | ||||
|  *  Author: Benjamin Sergeant | ||||
|  *  Copyright (c) 2022 Machine Zone. All rights reserved. | ||||
|  */ | ||||
|  | ||||
| #include "IXTest.h" | ||||
| #include "catch.hpp" | ||||
| #include <iostream> | ||||
| #include <ixwebsocket/IXExponentialBackoff.h> | ||||
| #include <string.h> | ||||
|  | ||||
| using namespace ix; | ||||
|  | ||||
| namespace ix | ||||
| { | ||||
|     TEST_CASE("exponential_backoff", "[exponential_backoff]") | ||||
|     { | ||||
|         SECTION("1") | ||||
|         { | ||||
|             // First parameter is retrycount | ||||
|             REQUIRE(calculateRetryWaitMilliseconds(0, 10000, 100) == 100); | ||||
|             REQUIRE(calculateRetryWaitMilliseconds(1, 10000, 100) == 200); | ||||
|             REQUIRE(calculateRetryWaitMilliseconds(2, 10000, 100) == 400); | ||||
|             REQUIRE(calculateRetryWaitMilliseconds(3, 10000, 100) == 800); | ||||
|             REQUIRE(calculateRetryWaitMilliseconds(4, 10000, 100) == 1600); | ||||
|             REQUIRE(calculateRetryWaitMilliseconds(5, 10000, 100) == 3200); | ||||
|             REQUIRE(calculateRetryWaitMilliseconds(6, 10000, 100) == 6400); | ||||
|             REQUIRE(calculateRetryWaitMilliseconds(20, 10000, 100) == 10000); | ||||
|             REQUIRE(calculateRetryWaitMilliseconds(25, 10000, 100) == 10000); | ||||
|              | ||||
|             // FIXME bug when retrycount > 25 | ||||
|         } | ||||
|     } | ||||
|  | ||||
| } // namespace ix | ||||
		Reference in New Issue
	
	Block a user