public async Task GetUserSession_SessionDoesNotExist_ReturnsNull()
        {
            // Arrange
            var cxn        = new SqlConnectionWrapperMock();
            var repository = new SqlSessionsRepository(cxn.Object);
            int uid        = 5;

            Session[] result = { };
            cxn.SetupQueryAsync("[AdminStore].GetUserSession", new Dictionary <string, object> {
                { "UserId", uid }
            }, result);

            // Act
            Session session = await repository.GetUserSession(uid);

            // Assert
            cxn.Verify();
            Assert.IsNull(session);
        }
        public async Task GetUserSession_SessionExists_ReturnsFirst()
        {
            // Arrange
            var cxn        = new SqlConnectionWrapperMock();
            var repository = new SqlSessionsRepository(cxn.Object);
            int uid        = 1;

            Session[] result = { new Session {
                                     UserId = uid
                                 } };
            cxn.SetupQueryAsync("[AdminStore].GetUserSession", new Dictionary <string, object> {
                { "UserId", uid }
            }, result);

            // Act
            Session session = await repository.GetUserSession(uid);

            // Assert
            cxn.Verify();
            Assert.AreEqual(result.First(), session);
        }