public void TokenSystemDbService_GetCustomersTokenDetails_ReturnsCustomerDashboardDetails()
        {
            // Arrange
            var mockContainer    = new Mock <Container>();
            var mockCosmosClient = new Mock <CosmosClient>();
            var responseMock     = new Mock <ItemResponse <Customer> >();

            var existingCusotmers = new List <Customer>
            {
                new Customer
                {
                    Id            = "1111-11-111",
                    FirstName     = "First",
                    Surname       = "SecondName",
                    Age           = 35,
                    CustomerType  = CustomerType.AccountHolder,
                    AccountNumber = 123456,
                    Token         = new Token {
                        ServiceType = ServiceType.Transaction, TokenNumber = 1, Counter = 0, Status = Status.InQueue
                    }
                },
                new Customer {
                    Id           = "2222-222-222",
                    FirstName    = "Second",
                    Surname      = "Customer",
                    Age          = 35,
                    CustomerType = CustomerType.Guest,
                    SocialNumber = 76543,
                    Token        = new Token {
                        ServiceType = ServiceType.Service, TokenNumber = 2, Counter = 2, Status = Status.InCounter
                    }
                },
                new Customer {
                    Id           = "3333-333-333",
                    FirstName    = "Third",
                    Surname      = "Customer",
                    Age          = 34,
                    CustomerType = CustomerType.Guest,
                    SocialNumber = 1234322,
                    Token        = new Token {
                        ServiceType = ServiceType.Service, TokenNumber = 3, Counter = 0, Status = Status.InQueue
                    }
                }
            }.AsQueryable();

            var expected = new List <CustomerDashboard>
            {
                new CustomerDashboard
                {
                    TokenNumber          = 1,
                    EstimatedWaitingTime = 5,
                    Counter = 0
                },
                new CustomerDashboard
                {
                    TokenNumber          = 3,
                    EstimatedWaitingTime = 25,
                    Counter = 0
                }
            };

            mockContainer.Setup(x => x.GetItemLinqQueryable <Customer>(true, null, null))
            .Returns((IOrderedQueryable <Customer>)existingCusotmers);

            mockCosmosClient.Setup(x => x.GetContainer(It.IsAny <string>(), It.IsAny <string>()))
            .Returns(mockContainer.Object);

            var serviceUnderTest = new TokenSystemDbService(mockCosmosClient.Object, It.IsAny <string>(), It.IsAny <string>());

            // Act
            var response = serviceUnderTest.GetCustomersTokenDetails();

            // Assert
            Assert.AreEqual(expected.Count(), response.Count());
            Assert.AreEqual(expected[0].Counter, response.ToList()[0].Counter);
            Assert.AreEqual(expected[0].EstimatedWaitingTime, response.ToList()[0].EstimatedWaitingTime);
            Assert.AreEqual(expected[0].TokenNumber, response.ToList()[0].TokenNumber);
            Assert.AreEqual(expected[1].Counter, response.ToList()[1].Counter);
            Assert.AreEqual(expected[1].EstimatedWaitingTime, response.ToList()[1].EstimatedWaitingTime);
            Assert.AreEqual(expected[1].TokenNumber, response.ToList()[1].TokenNumber);
        }