diff --git a/alib2std/test-src/extensions/container/VectorTest.cpp b/alib2std/test-src/extensions/container/VectorTest.cpp
index 040918589405cd3458e708938bac2b07ac1ea3c1..c581acf8a775a9946d240cb73cf40671b0e130fe 100644
--- a/alib2std/test-src/extensions/container/VectorTest.cpp
+++ b/alib2std/test-src/extensions/container/VectorTest.cpp
@@ -3,6 +3,7 @@
 #include <ext/type_traits>
 #include <ext/algorithm>
 #include <ext/iostream>
+#include <ext/pair>
 
 namespace {
 	class Moveable {
@@ -11,15 +12,13 @@ namespace {
 
 		public:
 		Moveable(int& moves, int& copies) : m_moves(moves), m_copies(copies) {
-			m_moves = 0;
-			m_copies = 0;
 		}
 
 		Moveable(const Moveable& src) : m_moves(src.m_moves), m_copies(src.m_copies) {
 			m_copies++;
 		}
 
-		Moveable(Moveable&& src) : m_moves(src.m_moves), m_copies(src.m_copies) {
+		Moveable(Moveable&& src) noexcept : m_moves(src.m_moves), m_copies(src.m_copies) {
 			m_moves++;
 		}
 
@@ -28,11 +27,13 @@ namespace {
 			return * this;
 		}
 
-		Moveable & operator = ( Moveable && ) {
+		Moveable & operator = ( Moveable && ) noexcept {
 			m_moves ++;
 			return * this;
 		}
 
+		~Moveable ( ) noexcept = default;
+
 		bool operator<(const Moveable&) const {
 			return false;
 		}
@@ -64,8 +65,8 @@ TEST_CASE ( "Vector", "[unit][std][container]" ) {
 
 		CHECK ( data == dataRef );
 
-		int moves;
-		int copies;
+		int moves = 0;
+		int copies = 0;
 
 		ext::vector < Moveable > vec;
 		vec.push_back ( Moveable ( moves, copies ) );
@@ -383,8 +384,8 @@ TEST_CASE ( "Vector", "[unit][std][container]" ) {
 
 		CHECK ( data == data2 );
 
-		int moves;
-		int copies;
+		int moves = 0;
+		int copies = 0;
 
 		ext::vector < Moveable > vec;
 		vec.push_back ( Moveable ( moves, copies ) );
@@ -396,4 +397,21 @@ TEST_CASE ( "Vector", "[unit][std][container]" ) {
 
 		CHECK ( copies == 0 );
 	}
+
+	SECTION ( "Move vs Copy" ) {
+		int moves = 0;
+		int copies = 0;
+
+		auto maker = [&](){
+			return ext::make_pair ( Moveable ( moves, copies ), Moveable ( moves, copies ) );
+		};
+
+		ext::vector < ext::pair < Moveable, Moveable > > data;
+		data.push_back ( maker ( ) );
+		data.push_back ( maker ( ) );
+		data.push_back ( maker ( ) );
+		data.push_back ( maker ( ) );
+
+		CHECK ( copies == 0 );
+	}
 }