diff --git a/src/IhtaAddLibrary.cmake b/src/IhtaAddLibrary.cmake
index b00bcb3560ffca130790e0a2c5a077011471749e..e078513b6616baeb6f747830a29aa13dc98a1cf3 100644
--- a/src/IhtaAddLibrary.cmake
+++ b/src/IhtaAddLibrary.cmake
@@ -129,6 +129,17 @@ macro (ihta_add_library)
 	# Organize sources in folders
 	GroupSourcesByFolder (${IHTA_ADD_LIB_TARGET})
 
+	if (IHTA_ADD_LIB_TEST_SOURCES)
+		if (IHTA_ADD_LIB_TEST_INPLACE OR IHTA_ADD_LIB_TEST_INTERNALS)
+			message(FATAL_ERROR TODO)
+		else ()
+			ihta_add_test (
+				TEST_TARGET ${IHTA_ADD_LIB_TARGET} IDE_FOLDER ${IHTA_ADD_LIB_IDE_FOLDER} SOURCES
+				${IHTA_ADD_LIB_TEST_SOURCES}
+			)
+		endif ()
+	endif ()
+
 	if (IHTA_ADD_LIB_OUT_VAR)
 		set (${IHTA_ADD_LIB_OUT_VAR} ${IHTA_ADD_LIB_TARGET})
 	endif ()
diff --git a/src/Index.cmake b/src/Index.cmake
index f051663464e467b70253d76e8aa8b71e7e172af6..099512b679eeceddc187bb03130511fa4f9bad25 100644
--- a/src/Index.cmake
+++ b/src/Index.cmake
@@ -23,5 +23,5 @@ include (${CPM_MODULE_LOCATION})
 
 include (${CMAKE_CURRENT_LIST_DIR}/GetCommonLibraries.cmake)
 include (${CMAKE_CURRENT_LIST_DIR}/BuildDoc.cmake)
-include(${CMAKE_CURRENT_LIST_DIR}/IhtaAddLibrary.cmake)
 include(${CMAKE_CURRENT_LIST_DIR}/IhtaAddTest.cmake)
+include(${CMAKE_CURRENT_LIST_DIR}/IhtaAddLibrary.cmake)