diff --git a/qt/scientific_interfaces/Indirect/test/IndirectFitDataTest.h b/qt/scientific_interfaces/Indirect/test/IndirectFitDataTest.h
index a7f9f87032a77b2bb7243900d669eac20b3718aa..13cb2eec06d6c6b17be8c6b6dac7aa4062252276 100644
--- a/qt/scientific_interfaces/Indirect/test/IndirectFitDataTest.h
+++ b/qt/scientific_interfaces/Indirect/test/IndirectFitDataTest.h
@@ -84,6 +84,23 @@ public:
       TS_ASSERT_EQUALS(*it, spectraVec[it - spectra.begin()]);
   }
 
+  void test_that_DiscontinuousSpectra_is_sorted_before_being_stored() {
+    auto data = getIndirectFitData(11, 3);
+
+    std::vector<std::string> const inputStrings{"8,5-0,6,10", "  8,10,  7",
+                                                "1,2,4-3,10"};
+    std::vector<Spectra> const anwserSpectra{
+        DiscontinuousSpectra<std::size_t>("0-6,8,10"),
+        DiscontinuousSpectra<std::size_t>("7-8,10"),
+        DiscontinuousSpectra<std::size_t>("1-4,10")};
+
+    for (auto i = 0u; i < inputStrings.size(); ++i) {
+      data.setSpectra(inputStrings[i]);
+      TS_ASSERT(boost::apply_visitor(AreSpectraEqual(), data.spectra(),
+                                     anwserSpectra[i]));
+    }
+  }
+
   void test_data_is_stored_in_the_ADS() {
     auto const data = getIndirectFitData(1, 3);
     SetUpADSWithWorkspace ads("WorkspaceName", data);