diff --git a/instrument/unit_testing/REFL_Parameters_Monitor.xml b/instrument/unit_testing/REFL_Parameters_Monitor.xml
index 3e2a4249394b0479ac23b0309ae19eeeff1a0438..751bb71b36ed1bce41c65a120ebd304904f64550 100644
--- a/instrument/unit_testing/REFL_Parameters_Monitor.xml
+++ b/instrument/unit_testing/REFL_Parameters_Monitor.xml
@@ -15,6 +15,10 @@
     <value val="18.0"/>
   </parameter>
 
+  <parameter name="NormalizeByIntegratedMonitors">
+    <value val="1"/>
+  </parameter>
+
   <parameter name="MonitorIntegralMin">
     <value val="4.0"/>
   </parameter>
diff --git a/qt/scientific_interfaces/test/ISISReflectometry/Experiment/ExperimentPresenterTest.h b/qt/scientific_interfaces/test/ISISReflectometry/Experiment/ExperimentPresenterTest.h
index b38831cebfb2208b26dfdade6d71f5236ec118dc..a2f500df0c292ad06cdda5d8e472916f4075bd90 100644
--- a/qt/scientific_interfaces/test/ISISReflectometry/Experiment/ExperimentPresenterTest.h
+++ b/qt/scientific_interfaces/test/ISISReflectometry/Experiment/ExperimentPresenterTest.h
@@ -441,21 +441,37 @@ public:
     verifyAndClear();
   }
 
-  void testRestoreDefaultsUpdatesAnalysisMode() {
+  void testRestoreDefaultsUpdatesAnalysisModeInView() {
+    auto presenter = makePresenter();
+    expectInstrumentWithParameters("Analysis");
+    EXPECT_CALL(m_view, setAnalysisMode("MultiDetectorAnalysis")).Times(1);
+    presenter.notifyRestoreDefaultsRequested();
+    verifyAndClear();
+  }
+
+  void testRestoreDefaultsUpdatesAnalysisModeInModel() {
     auto presenter = makePresenter();
     expectInstrumentWithParameters("Analysis");
     presenter.notifyRestoreDefaultsRequested();
-    // Compare with REFL_Parameters_Analysis.xml
     TS_ASSERT_EQUALS(presenter.experiment().analysisMode(),
                      AnalysisMode::MultiDetector);
     verifyAndClear();
   }
 
-  void testRestoreDefaultsUpdatesReductionOptions() {
+  void testRestoreDefaultsUpdatesReductionOptionsInView() {
+    auto presenter = makePresenter();
+    expectInstrumentWithParameters("Reduction");
+    EXPECT_CALL(m_view, setSummationType("SumInQ")).Times(1);
+    EXPECT_CALL(m_view, setReductionType("NonFlatSample")).Times(1);
+    EXPECT_CALL(m_view, setIncludePartialBins(true)).Times(1);
+    presenter.notifyRestoreDefaultsRequested();
+    verifyAndClear();
+  }
+
+  void testRestoreDefaultsUpdatesReductionOptionsInModel() {
     auto presenter = makePresenter();
     expectInstrumentWithParameters("Reduction");
     presenter.notifyRestoreDefaultsRequested();
-    // Compare with REFL_Parameters_Reduction.xml
     TS_ASSERT_EQUALS(presenter.experiment().summationType(),
                      SummationType::SumInQ);
     TS_ASSERT_EQUALS(presenter.experiment().reductionType(),
@@ -464,20 +480,37 @@ public:
     verifyAndClear();
   }
 
-  void testRestoreDefaultsUpdatesDebugOptions() {
+  void testRestoreDefaultsUpdatesDebugOptionsInView() {
+    auto presenter = makePresenter();
+    expectInstrumentWithParameters("Debug");
+    EXPECT_CALL(m_view, setDebugOption(true)).Times(1);
+    presenter.notifyRestoreDefaultsRequested();
+    verifyAndClear();
+  }
+
+  void testRestoreDefaultsUpdatesDebugOptionsInModel() {
     auto presenter = makePresenter();
     expectInstrumentWithParameters("Debug");
     presenter.notifyRestoreDefaultsRequested();
-    // Compare with REFL_Parameters_Debug.xml
     TS_ASSERT_EQUALS(presenter.experiment().debug(), true);
     verifyAndClear();
   }
 
-  void testRestoreDefaultsUpdatesPerTheta() {
+  void testRestoreDefaultsUpdatesPerThetaInView() {
+    auto presenter = makePresenter();
+    expectInstrumentWithParameters("PerTheta");
+    auto const expected = std::vector<std::array<std::string, 8>>{
+        {"", "", "", "0.010000", "0.200000", "0.030000", "0.700000",
+         "390-415"}};
+    EXPECT_CALL(m_view, setPerAngleOptions(expected)).Times(1);
+    presenter.notifyRestoreDefaultsRequested();
+    verifyAndClear();
+  }
+
+  void testRestoreDefaultsUpdatesPerThetaInModel() {
     auto presenter = makePresenter();
     expectInstrumentWithParameters("PerTheta");
     presenter.notifyRestoreDefaultsRequested();
-    // Compare with REFL_Parameters_PerTheta.xml
     auto expected = PerThetaDefaults(boost::none, TransmissionRunPair(),
                                      RangeInQ(0.01, 0.03, 0.2), 0.7,
                                      std::string("390-415"));
@@ -487,21 +520,38 @@ public:
     verifyAndClear();
   }
 
-  void testRestoreDefaultsUpdatesTransmissionRunRange() {
+  void testRestoreDefaultsUpdatesTransmissionRunRangeInView() {
+    auto presenter = makePresenter();
+    expectInstrumentWithParameters("TransmissionRunRange");
+    EXPECT_CALL(m_view, setTransmissionStartOverlap(10.0)).Times(1);
+    EXPECT_CALL(m_view, setTransmissionEndOverlap(12.0)).Times(1);
+    presenter.notifyRestoreDefaultsRequested();
+    verifyAndClear();
+  }
+
+  void testRestoreDefaultsUpdatesTransmissionRunRangeInModel() {
     auto presenter = makePresenter();
     expectInstrumentWithParameters("TransmissionRunRange");
     presenter.notifyRestoreDefaultsRequested();
-    // Compare with REFL_Parameters_TransmissionRunRange.xml
     auto const expected = RangeInLambda{10.0, 12.0};
     TS_ASSERT_EQUALS(presenter.experiment().transmissionRunRange(), expected);
     verifyAndClear();
   }
 
-  void testRestoreDefaultsUpdatesCorrection() {
+  void testRestoreDefaultsUpdatesCorrectionInView() {
+    auto presenter = makePresenter();
+    expectInstrumentWithParameters("Correction");
+    EXPECT_CALL(m_view, setPolarizationCorrectionType("ParameterFile"))
+        .Times(1);
+    EXPECT_CALL(m_view, setFloodCorrectionType("ParameterFile")).Times(1);
+    presenter.notifyRestoreDefaultsRequested();
+    verifyAndClear();
+  }
+
+  void testRestoreDefaultsUpdatesCorrectionInModel() {
     auto presenter = makePresenter();
     expectInstrumentWithParameters("Correction");
     presenter.notifyRestoreDefaultsRequested();
-    // Compare with REFL_Parameters_Correction.xml
     TS_ASSERT_EQUALS(
         presenter.experiment().polarizationCorrections().correctionType(),
         PolarizationCorrectionType::ParameterFile);
diff --git a/qt/scientific_interfaces/test/ISISReflectometry/Instrument/InstrumentPresenterTest.h b/qt/scientific_interfaces/test/ISISReflectometry/Instrument/InstrumentPresenterTest.h
index c3e952ab10d56d5da5610e6aefa150bad44b31d9..baa01df7c3bc19ca0b0cbf28bc467dbca75dab97 100644
--- a/qt/scientific_interfaces/test/ISISReflectometry/Instrument/InstrumentPresenterTest.h
+++ b/qt/scientific_interfaces/test/ISISReflectometry/Instrument/InstrumentPresenterTest.h
@@ -259,12 +259,25 @@ public:
     verifyAndClear();
   }
 
-  void testRestoreDefaultsUpdatesMonitorOptions() {
+  void testRestoreDefaultsUpdatesMonitorOptionsInView() {
+    auto presenter = makePresenter();
+    expectInstrumentWithParameters("Monitor");
+    EXPECT_CALL(m_view, setMonitorIndex(2)).Times(1);
+    EXPECT_CALL(m_view, setIntegrateMonitors(true)).Times(1);
+    EXPECT_CALL(m_view, setMonitorBackgroundMin(17.0)).Times(1);
+    EXPECT_CALL(m_view, setMonitorBackgroundMax(18.0)).Times(1);
+    EXPECT_CALL(m_view, setMonitorIntegralMin(4.0)).Times(1);
+    EXPECT_CALL(m_view, setMonitorIntegralMax(10.0)).Times(1);
+    presenter.notifyRestoreDefaultsRequested();
+    verifyAndClear();
+  }
+
+  void testRestoreDefaultsUpdatesMonitorOptionsInModel() {
     auto presenter = makePresenter();
     expectInstrumentWithParameters("Monitor");
     presenter.notifyRestoreDefaultsRequested();
-    // Compare with REFL_Parameters_Monitor.xml
     TS_ASSERT_EQUALS(presenter.instrument().monitorIndex(), 2);
+    TS_ASSERT_EQUALS(presenter.instrument().integratedMonitors(), true);
     TS_ASSERT_EQUALS(presenter.instrument().monitorBackgroundRange(),
                      RangeInLambda(17.0, 18.0));
     TS_ASSERT_EQUALS(presenter.instrument().monitorIntegralRange(),
@@ -272,21 +285,38 @@ public:
     verifyAndClear();
   }
 
-  void testRestoreDefaultsUpdatesWavelengthRange() {
+  void testRestoreDefaultsUpdatesWavelengthRangeInView() {
+    auto presenter = makePresenter();
+    expectInstrumentWithParameters("WavelengthRange");
+    EXPECT_CALL(m_view, setLambdaMin(1.5)).Times(1);
+    EXPECT_CALL(m_view, setLambdaMax(17.0)).Times(1);
+    presenter.notifyRestoreDefaultsRequested();
+    verifyAndClear();
+  }
+
+  void testRestoreDefaultsUpdatesWavelengthRangeInModel() {
     auto presenter = makePresenter();
     expectInstrumentWithParameters("WavelengthRange");
     presenter.notifyRestoreDefaultsRequested();
-    // Compare with REFL_Parameters_WavelengthRange.xml
     TS_ASSERT_EQUALS(presenter.instrument().wavelengthRange(),
                      RangeInLambda(1.5, 17.0));
     verifyAndClear();
   }
 
-  void testRestoreDefaultsUpdatesUpdatesDetectorOptions() {
+  void testRestoreDefaultsUpdatesUpdatesDetectorOptionsInView() {
+    auto presenter = makePresenter();
+    expectInstrumentWithParameters("Detector");
+    EXPECT_CALL(m_view, setCorrectDetectors(true)).Times(1);
+    EXPECT_CALL(m_view, setDetectorCorrectionType("RotateAroundSample"))
+        .Times(1);
+    presenter.notifyRestoreDefaultsRequested();
+    verifyAndClear();
+  }
+
+  void testRestoreDefaultsUpdatesUpdatesDetectorOptionsInModel() {
     auto presenter = makePresenter();
     expectInstrumentWithParameters("Detector");
     presenter.notifyRestoreDefaultsRequested();
-    // Compare with REFL_Parameters_Detector.xml
     auto const expected =
         DetectorCorrections(true, DetectorCorrectionType::RotateAroundSample);
     TS_ASSERT_EQUALS(presenter.instrument().detectorCorrections(), expected);