def test_define_protocol_deviation_with_errors(self): """Validate the entry""" with self.assertRaises(ValueError) as exc: pd = MdsolProtocolDeviation(value="Deviated from Protocol", status="Wigwam", repeat_key=1, code="E01", klass="Blargle") self.assertEqual( "Status Wigwam is not a valid ProtocolDeviationStatus", str(exc.exception)) with self.assertRaises(ValueError) as exc: pd = MdsolProtocolDeviation(value="Deviated from Protocol", status=ProtocolDeviationStatus.Open, repeat_key="no repeats", code="E01", klass="Blargle") self.assertEqual("RepeatKey should be an integer, not no repeats", str(exc.exception))
def test_insert_pd_to_itemdata(self): """Create a simple protocol deviation with class and code and Transaction Type""" test = ItemData("FIXOID", "Fix me")(MdsolProtocolDeviation( value="Deviated from Protocol", status=ProtocolDeviationStatus.Open, repeat_key=1, code="E01", klass="Blargle", transaction_type="Insert")) tested = obj_to_doc(test) self.assertEqual(1, len(list(tested))) self.assertEqual('mdsol:ProtocolDeviation', list(tested)[0].tag) test << MdsolProtocolDeviation(value="Deviated from Protocol", status=ProtocolDeviationStatus.Open, repeat_key=2, code="E01", klass="Blargle", transaction_type="Insert") tested = obj_to_doc(test) self.assertEqual(2, len(list(tested))) self.assertEqual('mdsol:ProtocolDeviation', list(tested)[1].tag) self.assertEqual(2, list(tested)[1].get('ProtocolDeviationRepeatKey'))
def test_define_protocol_deviation(self): """Create a simple protocol deviation""" pd = MdsolProtocolDeviation(value="Deviated from Protocol", status=ProtocolDeviationStatus.Open, repeat_key=1) tested = obj_to_doc(pd) self.assertEqual("mdsol:ProtocolDeviation", tested.tag, "Unexpected Tag") self.assertEqual("Open", tested.attrib['Status'], "Status Key is missing") self.assertEqual("Deviated from Protocol", tested.get('Value'), "Value is missing") self.assertEqual(1, tested.get('ProtocolDeviationRepeatKey'), "ProtocolDeviationRepeatKey is missing")
def test_define_protocol_deviation_with_class(self): """Create a simple protocol deviation with class and code""" pd = MdsolProtocolDeviation(value="Deviated from Protocol", status=ProtocolDeviationStatus.Open, repeat_key=1, code="E01", klass="Blargle") tested = obj_to_doc(pd) self.assertEqual("mdsol:ProtocolDeviation", tested.tag, "Unexpected Tag") self.assertEqual("Open", tested.attrib['Status'], "Status Key is missing") self.assertEqual("Deviated from Protocol", tested.get('Value'), "Value is missing") self.assertEqual("E01", tested.get('Code'), "Code is missing") self.assertEqual("Blargle", tested.get('Class'), "Class is missing") self.assertEqual(1, tested.get('ProtocolDeviationRepeatKey'), "ProtocolDeviationRepeatKey is missing")