diff --git a/alib2std/test-src/extensions/IstreamTest.cpp b/alib2std/test-src/extensions/IstreamTest.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..f02f05efdcbcf0032f5f7c67043a268d72b08ea7
--- /dev/null
+++ b/alib2std/test-src/extensions/IstreamTest.cpp
@@ -0,0 +1,31 @@
+#include "IstreamTest.h"
+#include <set>
+#include <vector>
+#include <pair>
+#include <sstream>
+#include <string>
+
+CPPUNIT_TEST_SUITE_NAMED_REGISTRATION( IstreamTest, "bits" );
+CPPUNIT_TEST_SUITE_REGISTRATION( IstreamTest );
+
+void IstreamTest::setUp() {
+}
+
+void IstreamTest::tearDown() {
+}
+
+void IstreamTest::testIstream() {
+	std::stringstream ss("TEST");
+
+	CPPUNIT_ASSERT(((bool)(ss >> "TEST")) == true);
+
+	ss.str("TEST");
+
+	CPPUNIT_ASSERT(((bool)(ss >> "TESS")) == false);
+	CPPUNIT_ASSERT(ss.str() == "TEST");
+
+
+	CPPUNIT_ASSERT(((bool)(ss >> "TESTS")) == false);
+	CPPUNIT_ASSERT(ss.str() == "TEST");
+}
+
diff --git a/alib2std/test-src/extensions/IstreamTest.h b/alib2std/test-src/extensions/IstreamTest.h
new file mode 100644
index 0000000000000000000000000000000000000000..5e617708467b271f8253f2e4d3e1f975c3ee3341
--- /dev/null
+++ b/alib2std/test-src/extensions/IstreamTest.h
@@ -0,0 +1,19 @@
+#ifndef ISTREAM_TEST_H_
+#define ISTREAM_TEST_H_
+
+#include <cppunit/extensions/HelperMacros.h>
+
+class IstreamTest : public CppUnit::TestFixture
+{
+  CPPUNIT_TEST_SUITE( IstreamTest );
+  CPPUNIT_TEST( testIstream );
+  CPPUNIT_TEST_SUITE_END();
+
+public:
+  void setUp();
+  void tearDown();
+
+  void testIstream();
+};
+
+#endif  // ISTREAM_TEST_H_