public async Task Handle_ShouldReturnOkResult()
        {
            using (new IPOContext(_dbContextOptions, _plantProvider, _eventDispatcher, _currentUserProvider))
            {
                var dut    = new GetPersonsQueryHandler(_personApiServiceMock.Object, _plantProvider);
                var result = await dut.Handle(_query, default);

                Assert.AreEqual(ResultType.Ok, result.ResultType);
            }
        }
        public async Task HandleGetContractorPersons_ShouldReturnEmptyList_WhenSearchReturnsNull()
        {
            using (new IPOContext(_dbContextOptions, _plantProvider, _eventDispatcher, _currentUserProvider))
            {
                _query = new GetPersonsQuery(_searchString);

                var dut = new GetPersonsQueryHandler(_personApiServiceMock.Object, _plantProvider);
                _personApiServiceMock
                .Setup(x => x.GetPersonsAsync(TestPlant, _searchString, _numOfRows))
                .Returns(Task.FromResult <IList <ProCoSysPerson> >(null));

                var result = await dut.Handle(_query, default);

                Assert.AreEqual(ResultType.Ok, result.ResultType);
                Assert.AreEqual(0, result.Data.Count);
            }
        }
        public async Task HandleGetPersons_ShouldReturnCorrectItems()
        {
            using (new IPOContext(_dbContextOptions, _plantProvider, _eventDispatcher, _currentUserProvider))
            {
                _personApiServiceMock
                .Setup(x => x.GetPersonsAsync(TestPlant, _searchString, _numOfRows))
                .Returns(Task.FromResult(_mainApiPersons));

                _query = new GetPersonsQuery(_searchString);

                var dut    = new GetPersonsQueryHandler(_personApiServiceMock.Object, _plantProvider);
                var result = await dut.Handle(_query, default);

                Assert.AreEqual(3, result.Data.Count);
                var person1 = result.Data.ElementAt(0);
                var person2 = result.Data.ElementAt(1);
                var person3 = result.Data.ElementAt(2);
                AssertPersonData(_mainApiPersons.Single(c => c.AzureOid == person1.AzureOid), person1);
                AssertPersonData(_mainApiPersons.Single(t => t.AzureOid == person2.AzureOid), person2);
                AssertPersonData(_mainApiPersons.Single(t => t.AzureOid == person3.AzureOid), person3);
            }
        }