public void CreateDicomMoveRequest_NullInfoIdentifier_ThrowsException()
        {
            // Arrange
            var mockProvider = new MockProvider();
            var dicomRequestFactory = new DicomRequestFactory(mockProvider.GetSettingsProviderFake());

            // Act + Assert
            Assert.That(() => dicomRequestFactory.CreateDicomMoveRequest(null), Throws.TypeOf<ArgumentNullException>());
        }
        public void CreateDicomFindRequest_NullResponseCallback_ThrowsException()
        {
            // Arrange
            var mockProvider = new MockProvider();
            var dicomRequestFactory = new DicomRequestFactory(mockProvider.GetSettingsProviderFake());

            // Act + Assert
            Assert.That(() => dicomRequestFactory.CreateDicomFindRequest<TestInfo>(mockProvider.GetDicomWhereCollectionFake(), null), Throws.TypeOf<ArgumentNullException>());
        }
        public void CreateDicomFindRequest_CorrectRequestIsCreated()
        {
            // Arrange
            var mockProvider = new MockProvider();
            var dicomRequestFactory = new DicomRequestFactory(mockProvider.GetSettingsProviderFake());

            var dicomWhereCollection = mockProvider.GetDicomWhereCollectionFake();
            Action<TestInfo> responseCallback = item => {};

            // Act
            var request = dicomRequestFactory.CreateDicomFindRequest(dicomWhereCollection, responseCallback);

            // Assert
            Assert.That(request.ResponseCallback, Is.SameAs(responseCallback));
            Assert.That(request.DicomWhereCollection, Is.SameAs(dicomWhereCollection));
        }
        public void CreateDicomMoveRequest_CorrectRequestIsCreated()
        {
            // Arrange
            var mockProvider = new MockProvider();
            var settingsProvider = mockProvider.GetSettingsProviderFake();
            settingsProvider.DestinationApplicationEntity.Returns("DestinationAE");
            var identifier = new InfoIdentifier("identifier");

            var dicomRequestFactory = new DicomRequestFactory(settingsProvider);

            // Act
            var request = dicomRequestFactory.CreateDicomMoveRequest(identifier);

            // Assert
            Assert.That(request.DestinationAE, Is.EqualTo("DestinationAE"));
            Assert.That(request.Identifier, Is.SameAs(identifier));
        }