You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
o3de/Code/Framework/AzCore/Tests
lumberyard-employee-dm f3e9e41f4f
Adding partial implementation of C++20 concepts and range functions for AZStd::span (#7102)
* Adding partial implementation of C++20 concepts and range functions for AZStd::span

The new concepts to discovered existing issues with the PathIterator and deque::iterator classes
PathIterator wasn't properly an input_iterator and therefore the Path classes weren't a range due to an incorrect const_iterator alias
The deque::iterator classes was missing the operator+ friend function that accepted a (ptrdiff_t, deque::iterator) to fulfill the random_access_iterator concepts

The AZStd implementations of (uninitialized_)copy(_n), (uninitialized_)move(_n) and (uninitialized_)file(_n) have been optimized to use memcpy and memset based on fulfilling the contiguous_iterator concept

Fixed invalid AZStd::vector inserts in FrameGraphExecuter.cpp and SliceditorEntityOwnershipService.cpp
The code was trying to copy the underlying addresses for vector<unique_ptr> to a vector<raw pointer> using insert, which it was doing by using memcpy.

relates to #6749

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Fixed the `fixed_vector` emplace function to not move initialized
elements using uninitialized_move.

This was causing initialized elements of the fixed_vector to be
overwritten with the element at the emplace position.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Fixed clang warnings about variables that are set, but never read

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the `az_has_builtin_is_constant_evaluated` define to not have
"()" as is not a macro.

This helps prevent users from using `az_has_builtin_is_constant_evaluated`
define in a situation where they want to know if the function is being
evaluated in a compile time context.
In that case they need to use the `az_builtin_is_constant_evaluated()`
macro (which of course looks quite similiar) but does not have the word
"has" in it..

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Updated the AZStd span class to be C++20 compliant.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Changed phrase "DoesNotCompiles" to be more grammatically correct.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Added more unit test for AZStd span

Fixed an the the return type of the subspan template overload to account
for the source span having a dynamic extent.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>

* Removed unused variable from span unit test.

Signed-off-by: lumberyard-employee-dm <56135373+lumberyard-employee-dm@users.noreply.github.com>
4 years ago
..
AZStd Adding partial implementation of C++20 concepts and range functions for AZStd::span (#7102) 4 years ago
AZTestShared Code/Framework fixes 4 years ago
Asset This reduces non-unity build time by ~2% and build size by ~0.5%. 4 years ago
Console Fixes debug console autocomplete issues (#4223) 4 years ago
DOM Add Dom::Path class for representing positions in a Dom (#7008) 4 years ago
Debug Removes AssetMemoryAnalyzer that relies on the MemoryDrillerBus 4 years ago
EBus Removal and Replacement of the CryTimer (gEnv->pTimer) (#5409) 4 years ago
IO Update the FileIO Aliases (#4186) 4 years ago
Math AzCore Math tests produce errors that need to be disabled in debug (#6678) 4 years ago
Memory Memory/benchmarks (#5896) 4 years ago
Name Clang 13: Fix build errors ... 4 years ago
Platform Merge remote-tracking branch 'upstream/development' into compiletime_filerequest_code2 4 years ago
RTTI Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Serialization/Json Death test relies on an exception from ocurring, that exception is an access violation, which could not happen (i.e. the memory could be valid for the process) (#6683) 4 years ago
Settings Added the --regset-file option for setreg file loading (#5768) 4 years ago
Streamer This reduces non-unity build time by ~2% and build size by ~0.5%. 4 years ago
Time Remove time tests that relied on main-thread sleeps 4 years ago
AssetJsonSerializerTests.cpp {lyn7283} added test for assetHint Json Serialzier callback logic (#4586) 4 years ago
AssetManager.cpp Cleanup SerializeContext.h pt.1 (#4264) 4 years ago
AssetSerializerTests.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
AzEnumTest.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
BehaviorContext.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
BehaviorContextFixture.h [LYN-8041] Enable relocation of the Project Game Release Layout (#5380) 4 years ago
Components.cpp Removes m_enableDrilling 4 years ago
DLL.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
DLLMainTest.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Debug.cpp Replaces handlers of TraceMessageDrillerBus with handlers of TraceMessageBus 4 years ago
EBus.cpp GCC Support for Linux 4 years ago
EntityIdTests.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
EntityTests.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
EnumTests.cpp more fixes for Code 4 years ago
EventTests.cpp Modernization + AZStd::function compare fix. (#3680) 4 years ago
FileIOBaseTestTypes.h Update the FileIO Aliases (#4186) 4 years ago
FixedWidthIntegers.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
GenericStreamMock.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
GenericStreamTests.cpp more fixes for Code 4 years ago
Geometry2DUtils.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
IPC.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Interface.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
IntersectPoint.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
JSON.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Jobs.cpp Fixes AzCore for MSVC 4 years ago
Main.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Memory.cpp Removes Driller from AzCore 4 years ago
Module.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
ModuleTestBus.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
OrderedEventBenchmarks.cpp Modernization + AZStd::function compare fix. (#3680) 4 years ago
OrderedEventTests.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Outcome.cpp remove unnecessary ALIGN macros 4 years ago
Patching.cpp More fixes 4 years ago
RemappableId.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Rtti.cpp Removes Driller from AzCore 4 years ago
Script.cpp Modernization + AZStd::function compare fix. (#3680) 4 years ago
ScriptMath.cpp AzCore Math tests produce errors that need to be disabled in debug (#6678) 4 years ago
ScriptProperty.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Serialization.cpp GCC Support for Linux 4 years ago
SerializeContextFixture.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
Slice.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
State.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
StatisticalProfiler.cpp Replaces handlers of TraceMessageDrillerBus with handlers of TraceMessageBus 4 years ago
Statistics.cpp Modernization + AZStd::function compare fix. (#3680) 4 years ago
StreamerTests.cpp This reduces non-unity build time by ~2% and build size by ~0.5%. 4 years ago
StringFunc.cpp Remove old "Integ" functionality from tests (#4688) 4 years ago
SystemFile.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
TaskTests.cpp Part 2 of enabling Atom to use TaskGraph 4 years ago
TestCatalog.cpp Update AssetManager unit tests to not interact with the disk (#5815) 4 years ago
TestCatalog.h Fix non-unity windows build 4 years ago
TickBusTest.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
UUIDTests.cpp Squashed commit of Procedural Prefab work (#4481) 4 years ago
XML.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
azcoretestdll_files.cmake Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
azcoretests_files.cmake Adding partial implementation of C++20 concepts and range functions for AZStd::span (#7102) 4 years ago
aztestshared_files.cmake Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago