1088 def get(self, dataType, **kwargs):
1089 """Return an appropriate data product.
1090
1091 Parameters
1092 ----------
1093 dataType : `str`
1094 Type of data product to return.
1095
1096 Returns
1097 -------
1098 mock : IsrMock.run() result
1099 The output product.
1100 """
1101 if "_filename" in dataType:
1102 return tempfile.mktemp(), "mock"
1103 elif 'transmission_' in dataType:
1104 return TransmissionMock(config=self.config).run()
1105 elif dataType == 'ccdExposureId':
1106 return 20090913
1107 elif dataType == 'camera':
1108 return IsrMock(config=self.config).getCamera()
1109 elif dataType == 'raw':
1110 return CalibratedRawMock(config=self.config).run()
1111 elif dataType == 'bias':
1112 return BiasMock(config=self.config).run()
1113 elif dataType == 'dark':
1114 return DarkMock(config=self.config).run()
1115 elif dataType == 'flat':
1116 return FlatMock(config=self.config).run()
1117 elif dataType == 'fringe':
1118 fringes = []
1119 configCopy = copy.deepcopy(self.config)
1120 for scale, x, y in zip(self.config.fringeScale, self.config.fringeX0, self.config.fringeY0):
1121 configCopy.fringeScale = [1.0]
1122 configCopy.fringeX0 = [x]
1123 configCopy.fringeY0 = [y]
1124 fringes.append(FringeMock(config=configCopy).run())
1125 return fringes
1126 elif dataType == 'defects':
1127 return DefectMock(config=self.config).run()
1128 elif dataType == 'bfKernel':
1129 return BfKernelMock(config=self.config).run()
1130 elif dataType == 'linearizer':
1131 return None
1132 elif dataType == 'crosstalkSources':
1133 return None
1134 else:
1135 return None