public async Task GetLatestEarlierPublishedProviderVersionFromVersion() { PublishedProviderVersion document = await _repository.GetLatestEarlierPublishedProviderVersionFromVersion("DSG", "FY-2021", 2, //timestamp is v3 so should yield v2 "10007322"); document? .MajorVersion .Should() .Be(1); }
public async Task GetLatestEarlierPublishedProviderVersionByStatusFromVersion() { string fundingStreamId = NewRandomString(); string fundingPeriodId = NewRandomString(); decimal version = NewRandomInteger(); string providerId = NewRandomString(); PublishedProviderStatus status = new RandomEnum <PublishedProviderStatus>(); PublishedProviderVersion expectedLatestEarlierDocument = NewPublishedProviderVersion(); GivenTheLatestEarlierDocument(@"SELECT TOP 1 * FROM publishedProviderVersion p WHERE p.documentType = 'PublishedProviderVersion' AND StringToNumber(CONCAT(Tostring(p.content.majorVersion), '.', Tostring(p.content.minorVersion))) < @version AND p.content.fundingStreamId = @fundingStreamId AND p.content.fundingPeriodId = @fundingPeriodId AND p.content.providerId = @providerId AND p.content.status = @status AND p.deleted = false ORDER BY p.content.majorVersion DESC, p.content.minorVersion DESC", expectedLatestEarlierDocument, ("@fundingPeriodId", fundingPeriodId), ("@fundingStreamId", fundingStreamId), ("@version", version), ("@providerId", providerId), ("@status", status)); PublishedProviderVersion actualLatestEarlierDocument = await _repository.GetLatestEarlierPublishedProviderVersionFromVersion(fundingStreamId, fundingPeriodId, version, providerId, status); actualLatestEarlierDocument .Should() .BeSameAs(expectedLatestEarlierDocument); }