def test_to_primitive(self): """ Check converting PDU to primitive """ pdu = A_ASSOCIATE_RJ() pdu.Decode(a_associate_rj) primitive = pdu.ToParams() self.assertEqual(primitive.result, 1) self.assertEqual(primitive.result_source, 1) self.assertEqual(primitive.diagnostic, 1) self.assertTrue(isinstance(primitive.result, int)) self.assertTrue(isinstance(primitive.result_source, int)) self.assertTrue(isinstance(primitive.diagnostic, int)) # Not used by A-ASSOCIATE-RJ or fixed value self.assertEqual(primitive.mode, "normal") self.assertEqual(primitive.application_context_name, None) self.assertEqual(primitive.calling_ae_title, None) self.assertEqual(primitive.called_ae_title, None) self.assertEqual(primitive.responding_ae_title, None) self.assertEqual(primitive.user_information, []) self.assertEqual(primitive.calling_presentation_address, None) self.assertEqual(primitive.called_presentation_address, None) self.assertEqual(primitive.responding_presentation_address, primitive.called_presentation_address) self.assertEqual(primitive.presentation_context_definition_list, []) self.assertEqual( primitive.presentation_context_definition_results_list, []) self.assertEqual(primitive.presentation_requirements, "Presentation Kernel") self.assertEqual(primitive.session_requirements, "")
def test_new_encode(self): """ Check encoding using new generic method """ pdu = A_ASSOCIATE_RJ() pdu.Decode(a_associate_rj) s = pdu.encode() self.assertEqual(s, a_associate_rj)
def test_stream_encode(self): """ Check encoding an assoc_rj produces the correct output """ pdu = A_ASSOCIATE_RJ() pdu.Decode(a_associate_rj) s = pdu.Encode() self.assertEqual(s, a_associate_rj)
def test_generic_encode(self): """ Check using the new pdu.encode produces the correct output """ pdu = A_ASSOCIATE_RJ() pdu.Decode(a_associate_rj) s = pdu.Encode() t = pdu.encode() self.assertEqual(s, t)
def test_stream_decode_values_types(self): """ Check decoding the assoc_rj stream produces the correct objects """ pdu = A_ASSOCIATE_RJ() pdu.Decode(a_associate_rj) self.assertEqual(pdu.pdu_type, 0x03) self.assertEqual(pdu.pdu_length, 4) self.assertTrue(isinstance(pdu.pdu_type, int)) self.assertTrue(isinstance(pdu.pdu_length, int))
def test_from_primitive(self): """ Check converting PDU to primitive """ orig_pdu = A_ASSOCIATE_RJ() orig_pdu.Decode(a_associate_rj) primitive = orig_pdu.ToParams() new_pdu = A_ASSOCIATE_RJ() new_pdu.FromParams(primitive) self.assertEqual(new_pdu, orig_pdu)
def test_decode_properties(self): """ Check decoding the assoc_rj stream produces the correct properties """ pdu = A_ASSOCIATE_RJ() pdu.Decode(a_associate_rj) # Check reason/source/result self.assertEqual(pdu.result, 1) self.assertEqual(pdu.reason_diagnostic, 1) self.assertEqual(pdu.source, 1) self.assertTrue(isinstance(pdu.result, int)) self.assertTrue(isinstance(pdu.reason_diagnostic, int)) self.assertTrue(isinstance(pdu.source, int))
def test_update_data(self): """ Check that updating the PDU data works correctly """ orig_pdu = A_ASSOCIATE_RJ() orig_pdu.Decode(a_associate_rj) orig_pdu.source = 2 orig_pdu.reason_diagnostic = 2 orig_pdu.result = 2 orig_pdu.get_length() primitive = orig_pdu.ToParams() new_pdu = A_ASSOCIATE_RJ() new_pdu.FromParams(primitive) self.assertEqual(new_pdu, orig_pdu)
def test_result_str(self): """ Check the result str returns correct values """ pdu = A_ASSOCIATE_RJ() pdu.Decode(a_associate_rj) pdu.result = 0 with self.assertRaises(ValueError): pdu.result_str pdu.result = 1 self.assertEqual(pdu.result_str, 'Rejected (Permanent)') pdu.result = 2 self.assertEqual(pdu.result_str, 'Rejected (Transient)') pdu.result = 3 with self.assertRaises(ValueError): pdu.result_str
def test_reason_str(self): """ Check the reason str returns correct values """ pdu = A_ASSOCIATE_RJ() pdu.Decode(a_associate_rj) pdu.source = 0 with self.assertRaises(ValueError): pdu.reason_str pdu.source = 1 for ii in range(1, 11): pdu.reason_diagnostic = ii self.assertTrue(isinstance(pdu.reason_str, str)) pdu.reason_diagnostic = 11 with self.assertRaises(ValueError): pdu.reason_str pdu.source = 2 for ii in range(1, 3): pdu.reason_diagnostic = ii self.assertTrue(isinstance(pdu.reason_str, str)) pdu.reason_diagnostic = 3 with self.assertRaises(ValueError): pdu.reason_str pdu.source = 3 for ii in range(1, 8): pdu.reason_diagnostic = ii self.assertTrue(isinstance(pdu.reason_str, str)) pdu.reason_diagnostic = 8 with self.assertRaises(ValueError): pdu.reason_str pdu.source = 4 with self.assertRaises(ValueError): pdu.reason_str
def test_source_str(self): """ Check the source str returns correct values """ pdu = A_ASSOCIATE_RJ() pdu.Decode(a_associate_rj) pdu.source = 0 with self.assertRaises(ValueError): pdu.source_str pdu.source = 1 self.assertEqual(pdu.source_str, 'DUL service-user') pdu.source = 2 self.assertEqual(pdu.source_str, 'DUL service-provider (ACSE related)') pdu.source = 3 self.assertEqual(pdu.source_str, 'DUL service-provider (presentation related)') pdu.source = 4 with self.assertRaises(ValueError): pdu.source_str
def test_string_output(self): """Test the string output""" pdu = A_ASSOCIATE_RJ() pdu.Decode(a_associate_rj) self.assertTrue("Rejected (Permanent)" in pdu.__str__()) self.assertTrue("DUL service-user" in pdu.__str__())