From 480363a4e77ffc13258ddbb7686e357937c75cb2 Mon Sep 17 00:00:00 2001 From: John Wellbelove Date: Mon, 18 Dec 2023 10:52:40 +0000 Subject: [PATCH] Added etl::generate algorithm --- test/test_algorithm.cpp | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/test/test_algorithm.cpp b/test/test_algorithm.cpp index a49e0011..aef1fcfd 100644 --- a/test/test_algorithm.cpp +++ b/test/test_algorithm.cpp @@ -2198,5 +2198,31 @@ namespace bool is_same = std::equal(expected.begin(), expected.end(), data.begin()); CHECK(is_same); } + + //************************************************************************* + struct generator + { + generator(int value_) + : value(value_) + { + } + + int operator()() + { + return value++; + } + + int value; + }; + + TEST(generate) + { + std::array expected = { 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 }; + std::array actual; + + etl::generate(actual.begin(), actual.end(), generator(2)); + + CHECK_ARRAY_EQUAL(expected.data(), actual.data(), expected.size()); + } }; }