diff --git a/tests/strsetfunctions.cpp b/tests/strsetfunctions.cpp
index cd64290659af6c2f4747ebaca1a906db0ecab64d..337f36c3bcd61222f4f652ba9c1b185bba4b51a6 100644
--- a/tests/strsetfunctions.cpp
+++ b/tests/strsetfunctions.cpp
@@ -101,6 +101,26 @@ BOOST_FIXTURE_TEST_CASE(upper_locale, StrSetFix)
 	BOOST_CHECK(upperset.equals(*to_upper.apply(sc)));
 }
 
+BOOST_FIXTURE_TEST_CASE(lower_empty, StrSetFix)
+{
+	StrSet emptyset;
+
+	ToLower to_lower(boost::shared_ptr<Function<StrSet> >(
+		new Constant<StrSet>(emptyset)));
+
+	BOOST_CHECK(emptyset.equals(*to_lower.apply(sc)));
+}
+
+BOOST_FIXTURE_TEST_CASE(upper_empty, StrSetFix)
+{
+	StrSet emptyset;
+
+	ToUpper to_upper(boost::shared_ptr<Function<StrSet> >(
+		new Constant<StrSet>(emptyset)));
+
+	BOOST_CHECK(emptyset.equals(*to_upper.apply(sc)));
+}
+
 //------ to_string test cases -------
 
 BOOST_FIXTURE_TEST_CASE(lower_to_string, StrSetFix)