mirror of
				https://github.com/catchorg/Catch2.git
				synced 2025-10-31 12:17:11 +01:00 
			
		
		
		
	Deducing return type of map generator helper (#1576)
* Deduce map return type implicitly Giving the first template argument to map generator function to deduce return type is now optional even if the return type is different from the type generated by mapped generator.
This commit is contained in:
		 Omer Ozarslan
					Omer Ozarslan
				
			
				
					committed by
					
						 Martin Hořeňovský
						Martin Hořeňovský
					
				
			
			
				
	
			
			
			 Martin Hořeňovský
						Martin Hořeňovský
					
				
			
						parent
						
							296d447452
						
					
				
				
					commit
					54089c4c8c
				
			| @@ -68,7 +68,7 @@ TEST_CASE("Generators internals", "[generators][internals]") { | ||||
|             REQUIRE_FALSE(gen.next()); | ||||
|         } | ||||
|     } | ||||
|     SECTION("Map") { | ||||
|     SECTION("Map with explicit return type") { | ||||
|         auto gen = map<double>([] (int i) {return 2.0 * i; }, values({ 1, 2, 3 })); | ||||
|         REQUIRE(gen.get() == 2.0); | ||||
|         REQUIRE(gen.next()); | ||||
| @@ -77,6 +77,15 @@ TEST_CASE("Generators internals", "[generators][internals]") { | ||||
|         REQUIRE(gen.get() == 6.0); | ||||
|         REQUIRE_FALSE(gen.next()); | ||||
|     } | ||||
|     SECTION("Map with deduced return type") { | ||||
|         auto gen = map([] (int i) {return 2.0 * i; }, values({ 1, 2, 3 })); | ||||
|         REQUIRE(gen.get() == 2.0); | ||||
|         REQUIRE(gen.next()); | ||||
|         REQUIRE(gen.get() == 4.0); | ||||
|         REQUIRE(gen.next()); | ||||
|         REQUIRE(gen.get() == 6.0); | ||||
|         REQUIRE_FALSE(gen.next()); | ||||
|     } | ||||
|     SECTION("Repeat") { | ||||
|         SECTION("Singular repeat") { | ||||
|             auto gen = repeat(1, value(3)); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user