From dc0d112eeac5b7abbd7091c77ce081e8899f9aaf Mon Sep 17 00:00:00 2001 From: Phil Schneider Date: Mon, 12 Aug 2024 16:54:10 +0200 Subject: [PATCH] fix(connector): create connector with correct state (#919) Refs: #918 Reviewed-By: Evelyn Gurschler --- .../BusinessLogic/ConnectorsBusinessLogic.cs | 2 +- .../ConnectorsBusinessLogicTests.cs | 32 ++----------------- 2 files changed, 4 insertions(+), 30 deletions(-) diff --git a/src/administration/Administration.Service/BusinessLogic/ConnectorsBusinessLogic.cs b/src/administration/Administration.Service/BusinessLogic/ConnectorsBusinessLogic.cs index 9828763d6d..7baf0be774 100644 --- a/src/administration/Administration.Service/BusinessLogic/ConnectorsBusinessLogic.cs +++ b/src/administration/Administration.Service/BusinessLogic/ConnectorsBusinessLogic.cs @@ -216,7 +216,7 @@ private async Task CreateAndRegisterConnectorAsync( connector.HostId = host; connector.TypeId = type; connector.DateLastChanged = DateTimeOffset.UtcNow; - connector.StatusId = _settings.ClearinghouseConnectDisabled ? ConnectorStatusId.ACTIVE : ConnectorStatusId.PENDING; + connector.StatusId = _settings.ClearinghouseConnectDisabled ? ConnectorStatusId.PENDING : ConnectorStatusId.ACTIVE; if (technicalUserId != null) { connector.CompanyServiceAccountId = technicalUserId; diff --git a/tests/administration/Administration.Service.Tests/BusinessLogic/ConnectorsBusinessLogicTests.cs b/tests/administration/Administration.Service.Tests/BusinessLogic/ConnectorsBusinessLogicTests.cs index 222042dc82..ce86bebc06 100644 --- a/tests/administration/Administration.Service.Tests/BusinessLogic/ConnectorsBusinessLogicTests.cs +++ b/tests/administration/Administration.Service.Tests/BusinessLogic/ConnectorsBusinessLogicTests.cs @@ -161,7 +161,7 @@ public async Task CreateConnectorAsync_WithValidInput_ReturnsCreatedConnectorDat // Assert result.Should().NotBeEmpty(); - _connectors.Should().HaveCount(1); + _connectors.Should().ContainSingle().Which.StatusId.Should().Be(clearingHouseDisabled ? ConnectorStatusId.PENDING : ConnectorStatusId.ACTIVE); A.CallTo(() => _connectorsRepository.CreateConnectorAssignedSubscriptions(A._, A._)).MustNotHaveHappened(); A.CallTo(() => _sdFactoryBusinessLogic.RegisterConnectorAsync(A._, A._, A._, A._)).MustHaveHappened(clearingHouseDisabled ? 0 : 1, Times.Exactly); } @@ -203,33 +203,6 @@ public async Task CreateConnectorAsync_WithClientIdNull_DoesntSaveData() _connectors.Should().HaveCount(1); } - [Fact] - public async Task CreateConnectorAsync_WithoutSelfDescriptionDocumentAndSdConnectionDisabled_CallsExpected() - { - // Arrange - var sut = new ConnectorsBusinessLogic(_portalRepositories, Options.Create(new ConnectorsSettings - { - MaxPageSize = 15, - ValidCertificationContentTypes = new[] - { - "application/x-pem-file", - "application/x-x509-ca-cert", - "application/pkix-cert" - }, - ClearinghouseConnectDisabled = true - }), _sdFactoryBusinessLogic, _identityService, A.Fake>()); - - var connectorInput = new ConnectorInputModel("connectorName", "https://test.de", "de", null); - A.CallTo(() => _identity.CompanyId).Returns(CompanyIdWithoutSdDocument); - - // Act - await sut.CreateConnectorAsync(connectorInput, CancellationToken.None); - - // Assert - A.CallTo(() => _connectorsRepository.CreateConnector(A._, A._, A._, A>._)).MustHaveHappenedOnceExactly(); - A.CallTo(() => _sdFactoryBusinessLogic.RegisterConnectorAsync(A._, A._, A._, A._)).MustNotHaveHappened(); - } - [Fact] public async Task CreateConnectorAsync_WithoutSelfDescriptionDocument_ThrowsUnexpectedException() { @@ -318,7 +291,8 @@ public async Task CreateManagedConnectorAsync_WithValidInput_ReturnsCreatedConne // Assert result.Should().NotBeEmpty(); - _connectors.Should().HaveCount(1); + _connectors.Should().ContainSingle().Which.StatusId.Should().Be(clearingHouseDisabled ? ConnectorStatusId.PENDING : ConnectorStatusId.ACTIVE); + A.CallTo(() => _connectorsRepository.CreateConnectorAssignedSubscriptions(A._, _validOfferSubscriptionId)).MustHaveHappenedOnceExactly(); A.CallTo(() => _sdFactoryBusinessLogic.RegisterConnectorAsync(A._, A._, A._, A._)).MustHaveHappened(clearingHouseDisabled ? 0 : 1, Times.Exactly); }