public void GetCallInProgressByCallerId_AnyIds_CallerStatusQueued()
        {
            // Setup dependence
            var settingMock = new Mock<ISettings>();
            var componentMock = new Mock<IComponents>();
            var uowMock = new Mock<IUnitOfWork>();
            var repositoryMock = new Mock<IRepository>();
            var serviceLocatorMock = new Mock<IServiceLocator>();

            serviceLocatorMock.Setup(r => r.GetInstance<IRepository>())
                .Returns(repositoryMock.Object);
            ServiceLocator.SetLocatorProvider(() => serviceLocatorMock.Object);

            // Arrange data
            Guid id = Guid.NewGuid();
            string callerStatus = "queued";
            Call call = new Call
            {
                Id = Guid.NewGuid(),
                CallerStatus = callerStatus,
                Caller = new User { Id = id }
            };
            Call[] calls = new Call[] { call };
            repositoryMock.Setup(r => r.Query<Call>()).Returns(calls.AsQueryable());

            // Act
            CallService callService = new CallService(uowMock.Object, repositoryMock.Object, settingMock.Object, componentMock.Object);
            var currentCall = callService.GetCallByCallerIdAndStatus(id, callerStatus);

            // Assert
            Assert.AreEqual(call.Caller.Id, currentCall.Caller.Id);
        }