public void test_codec_registration() { var userName = "******"; DeleteRegisteredSip(userName); // Add new var sipMessage = new SipRegistrationMessage() { Ip = GetRandomLocationIpAddress(), Port = 5060, UnixTimeStamp = GetUnixTimeStamp(DateTime.Now), Sip = new SipUri(userName), UserAgent = "ProntoNet LC v6.8.1", Username = userName, ToDisplayName = "Test", Expires = 60 }; // Assert var result = SipMessageManager.RegisterCodec(sipMessage); Assert.AreEqual(SipEventChangeStatus.CodecAdded, result.ChangeStatus); // Update only timestamp. Should return nothing changed. // Act sipMessage.UnixTimeStamp = GetUnixTimeStamp(DateTime.Now.AddSeconds(1)); // Assert result = SipMessageManager.RegisterCodec(sipMessage); Assert.AreEqual(SipEventChangeStatus.NothingChanged, result.ChangeStatus); // Update location. Should return status updated. // Act sipMessage.Ip = GetRandomLocationIpAddress(); // Assert result = SipMessageManager.RegisterCodec(sipMessage); Assert.AreEqual(SipEventChangeStatus.CodecUpdated, result.ChangeStatus); // Only timestamp sipMessage.UnixTimeStamp = GetUnixTimeStamp(DateTime.Now.AddSeconds(2)); result = SipMessageManager.RegisterCodec(sipMessage); Assert.AreEqual(SipEventChangeStatus.NothingChanged, result.ChangeStatus); // Update display name. Should return status updated. // Act sipMessage.ToDisplayName = "New display name"; // Assert result = SipMessageManager.RegisterCodec(sipMessage); Assert.AreEqual(SipEventChangeStatus.CodecUpdated, result.ChangeStatus); // Update user agent sipMessage.UserAgent = "Quantum/3.4.3"; result = SipMessageManager.RegisterCodec(sipMessage); Assert.AreEqual(SipEventChangeStatus.CodecUpdated, result.ChangeStatus); // Only timestamp sipMessage.UnixTimeStamp = GetUnixTimeStamp(DateTime.Now.AddSeconds(3)); result = SipMessageManager.RegisterCodec(sipMessage); Assert.AreEqual(SipEventChangeStatus.NothingChanged, result.ChangeStatus); }
public void should_register_new_codec() { // ASSIGN var userName = "******"; // Delete any already registered codec DeleteRegisteredSip(userName); var ipAddress = GetRandomLocationIpAddress(); var displayName = "Test"; var sipEvent = CreateSipRegisterEvent(ipAddress, "ME-UMAC2-M/0.255", userName, displayName); var sipMessage = new SipEventParser().Parse(sipEvent); // ACT SipEventHandlerResult result = SipMessageManager.HandleSipMessage(sipMessage); // ASSERT Assert.AreEqual(SipEventChangeStatus.CodecAdded, result.ChangeStatus); var sip = SipRep.Single(rs => rs.SIP == userName); Assert.AreEqual(ipAddress, sip.IP); // Clean up DeleteRegisteredSip(sip.Id); }