Skip to content

Put "TrainOnAll" and "PretranslateAll" back in #1128

Put "TrainOnAll" and "PretranslateAll" back in

Put "TrainOnAll" and "PretranslateAll" back in #1128

GitHub Actions / NUnit Tests failed Oct 10, 2024 in 1s

335 passed, 6 failed and 0 skipped

Tests failed

Report Passed Failed Skipped Time
src/DataAccess/test/SIL.DataAccess.Tests/TestResults/test-results.trx 24✅ 5s
src/Machine/test/Serval.Machine.Shared.Tests/TestResults/test-results.trx 99✅ 23s
src/Serval/test/Serval.ApiServer.IntegrationTests/TestResults/test-results.trx 156✅ 478s
src/Serval/test/Serval.DataFiles.Tests/TestResults/test-results.trx 11✅ 5s
src/Serval/test/Serval.E2ETests/TestResults/test-results.trx 959ms
src/Serval/test/Serval.Shared.Tests/TestResults/test-results.trx 3✅ 4s
src/Serval/test/Serval.Translation.Tests/TestResults/test-results.trx 37✅ 6❌ 6s
src/Serval/test/Serval.Webhooks.Tests/TestResults/test-results.trx 5✅ 5s

✅ src/DataAccess/test/SIL.DataAccess.Tests/TestResults/test-results.trx

24 tests were completed in 5s with 24 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
SIL.DataAccess.MemoryRepositoryTests 24✅ 259ms

✅ SIL.DataAccess.MemoryRepositoryTests

✅ DeleteAsync_DoesNotExist
✅ DeleteAsync_Exists
✅ GetAsync_DoesNotExist
✅ GetAsync_Exists
✅ InsertAsync_DoesNotExist
✅ InsertAsync_Exists
✅ InsertAsync_ReadOnlyCollectionExpression
✅ UpdateAsync_Add_Array
✅ UpdateAsync_Add_List
✅ UpdateAsync_Add_ReadOnlyCollection
✅ UpdateAsync_Add_ReadOnlyList
✅ UpdateAsync_DoesNotExist
✅ UpdateAsync_Remove_Array
✅ UpdateAsync_Remove_List
✅ UpdateAsync_Remove_ReadOnlyCollection
✅ UpdateAsync_Remove_ReadOnlyList
✅ UpdateAsync_RemoveAll_Array
✅ UpdateAsync_RemoveAll_List
✅ UpdateAsync_RemoveAll_ReadOnlyCollection
✅ UpdateAsync_RemoveAll_ReadOnlyList
✅ UpdateAsync_Set
✅ UpdateAsync_SetOnInsert
✅ UpdateAsync_Unset
✅ UpdateAsync_Upsert

✅ src/Machine/test/Serval.Machine.Shared.Tests/TestResults/test-results.trx

99 tests were completed in 23s with 99 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
Serval.Machine.Shared.Services.ClearMLServiceTests 1✅ 198ms
Serval.Machine.Shared.Services.DistributedReaderWriterLockFactoryTests 3✅ 82ms
Serval.Machine.Shared.Services.DistributedReaderWriterLockTests 15✅ 2s
Serval.Machine.Shared.Services.InMemoryStorageTests 5✅ 13ms
Serval.Machine.Shared.Services.LanguageTagServiceTests 19✅ 6s
Serval.Machine.Shared.Services.LocalStorageTests 5✅ 12ms
Serval.Machine.Shared.Services.MessageOutboxDeliveryServiceTests 4✅ 90ms
Serval.Machine.Shared.Services.MessageOutboxServiceTests 4✅ 18ms
Serval.Machine.Shared.Services.ModelCleanupServiceTests 1✅ 22ms
Serval.Machine.Shared.Services.NmtClearMLBuildJobFactoryTests 2✅ 20ms
Serval.Machine.Shared.Services.NmtEngineServiceTests 4✅ 1s
Serval.Machine.Shared.Services.PreprocessBuildJobTests 19✅ 6s
Serval.Machine.Shared.Services.ServalPlatformOutboxMessageHandlerTests 2✅ 46ms
Serval.Machine.Shared.Services.SmtTransferEngineServiceTests 15✅ 2s

✅ Serval.Machine.Shared.Services.ClearMLServiceTests

✅ CreateTaskAsync

✅ Serval.Machine.Shared.Services.DistributedReaderWriterLockFactoryTests

✅ InitAsync_ReleaseReaderLocks
✅ InitAsync_ReleaseWriterLocks
✅ InitAsync_RemoveWaiters

✅ Serval.Machine.Shared.Services.DistributedReaderWriterLockTests

✅ ReaderLockAsync_Cancelled
✅ ReaderLockAsync_NoLockAcquired
✅ ReaderLockAsync_ReaderLockAcquired
✅ ReaderLockAsync_WriterLockAcquiredAndExpired
✅ ReaderLockAsync_WriterLockAcquiredAndNotReleased
✅ ReaderLockAsync_WriterLockAcquiredAndReleased
✅ WriterLockAsync_Cancelled
✅ WriterLockAsync_FirstWriterLockHasPriority
✅ WriterLockAsync_NoLockAcquired
✅ WriterLockAsync_ReaderLockAcquiredAndNotReleased
✅ WriterLockAsync_ReaderLockAcquiredAndReleased
✅ WriterLockAsync_WriterLockAcquiredAndExpired
✅ WriterLockAsync_WriterLockAcquiredAndNeverReleased
✅ WriterLockAsync_WriterLockAcquiredAndReleased
✅ WriterLockAsync_WriterLockTakesPriorityOverReaderLock

✅ Serval.Machine.Shared.Services.InMemoryStorageTests

✅ DeleteAsync
✅ ExistsAsync
✅ ListFilesAsync_DoNotRecurse
✅ ListFilesAsync_Recurse
✅ OpenReadAsync

✅ Serval.Machine.Shared.Services.LanguageTagServiceTests

✅ ConvertToFlores200CodeTest("arb","arb_Arab")
✅ ConvertToFlores200CodeTest("cmn-Hant","zho_Hant")
✅ ConvertToFlores200CodeTest("cmn","zho_Hans")
✅ ConvertToFlores200CodeTest("eng-Latn","eng_Latn")
✅ ConvertToFlores200CodeTest("eng","eng_Latn")
✅ ConvertToFlores200CodeTest("es","spa_Latn")
✅ ConvertToFlores200CodeTest("hne","hne_Deva")
✅ ConvertToFlores200CodeTest("kor_Kore","kor_Hang")
✅ ConvertToFlores200CodeTest("kor","kor_Hang")
✅ ConvertToFlores200CodeTest("ks-Arab","kas_Arab")
✅ ConvertToFlores200CodeTest("ms","zsm_Latn")
✅ ConvertToFlores200CodeTest("srp_Cyrl","srp_Cyrl")
✅ ConvertToFlores200CodeTest("zh-Hant","zho_Hant")
✅ ConvertToFlores200CodeTest("zh-TW","zho_Hant")
✅ ConvertToFlores200CodeTest("zh","zho_Hans")
✅ GetLanguageInfoAsync("cmn","zho_Hans",True)
✅ GetLanguageInfoAsync("en","eng_Latn",True)
✅ GetLanguageInfoAsync("ms","zsm_Latn",True)
✅ GetLanguageInfoAsync("xyz","xyz",False)

✅ Serval.Machine.Shared.Services.LocalStorageTests

✅ DeleteFileAsync
✅ ExistsAsync
✅ ListFilesAsync_DoNotRecurse
✅ ListFilesAsync_Recurse
✅ OpenReadAsync

✅ Serval.Machine.Shared.Services.MessageOutboxDeliveryServiceTests

✅ ProcessMessagesAsync
✅ ProcessMessagesAsync_File
✅ ProcessMessagesAsync_Timeout
✅ ProcessMessagesAsync_UnavailableFailure

✅ Serval.Machine.Shared.Services.MessageOutboxServiceTests

✅ EnqueueMessageAsync_ContentTooLarge
✅ EnqueueMessageAsync_ExistingOutbox
✅ EnqueueMessageAsync_HasContentStream
✅ EnqueueMessageAsync_NoContentStream

✅ Serval.Machine.Shared.Services.ModelCleanupServiceTests

✅ CheckModelsAsync_ValidFiles

✅ Serval.Machine.Shared.Services.NmtClearMLBuildJobFactoryTests

✅ CreateJobScriptAsync_BuildOptions
✅ CreateJobScriptAsync_NoBuildOptions

✅ Serval.Machine.Shared.Services.NmtEngineServiceTests

✅ CancelBuildAsync_Building
✅ CancelBuildAsync_NotBuilding
✅ DeleteAsync_WhileBuilding
✅ StartBuildAsync

✅ Serval.Machine.Shared.Services.PreprocessBuildJobTests

✅ ParallelCorpusLogic
✅ RunAsync_DisableKeyTerms
✅ RunAsync_EnableKeyTerms
✅ RunAsync_FilterOutEverything
✅ RunAsync_MixedSource_Paratext
✅ RunAsync_MixedSource_Text
✅ RunAsync_OnlyParseSelectedBooks_NoBadBooks
✅ RunAsync_OnlyParseSelectedBooks_PretranslateOnBadBook
✅ RunAsync_OnlyParseSelectedBooks_TrainOnBadBook
✅ RunAsync_PretranslateAll
✅ RunAsync_PretranslateChapters
✅ RunAsync_PretranslateTextIds
✅ RunAsync_RemoveFreestandingEllipses
✅ RunAsync_TrainAndPretranslateAll
✅ RunAsync_TrainOnAll
✅ RunAsync_TrainOnChapters
✅ RunAsync_TrainOnTextIds
✅ RunAsync_UnknownLanguageTagsNoData
✅ RunAsync_UnknownLanguageTagsNoDataSmtTransfer

✅ Serval.Machine.Shared.Services.ServalPlatformOutboxMessageHandlerTests

✅ HandleMessageAsync_BuildStarted
✅ HandleMessageAsync_InsertPretranslations

✅ Serval.Machine.Shared.Services.SmtTransferEngineServiceTests

✅ CancelBuildAsync_Building(ClearML)
✅ CancelBuildAsync_Building(Hangfire)
✅ CancelBuildAsync_NotBuilding
✅ CommitAsync_LoadedActive
✅ CommitAsync_LoadedInactive
✅ CreateAsync
✅ DeleteAsync_WhileBuilding(ClearML)
✅ DeleteAsync_WhileBuilding(Hangfire)
✅ GetWordGraphAsync
✅ StartBuildAsync_RestartUnfinishedBuild
✅ StartBuildAsync(ClearML)
✅ StartBuildAsync(Hangfire)
✅ TrainSegmentPairAsync(ClearML)
✅ TrainSegmentPairAsync(Hangfire)
✅ TranslateAsync

✅ src/Serval/test/Serval.ApiServer.IntegrationTests/TestResults/test-results.trx

156 tests were completed in 478s with 156 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
Serval.ApiServer.AssessmentEngineTests 3✅ 9s
Serval.ApiServer.DataFilesTests 23✅ 60s
Serval.ApiServer.StatusTests 4✅ 10s
Serval.ApiServer.TranslationEngineTests 115✅ 366s
Serval.ApiServer.WebhooksTests 11✅ 26s

✅ Serval.ApiServer.AssessmentEngineTests

✅ CreateAsync
✅ GetAllResultsAsync
✅ StartJobAsync

✅ Serval.ApiServer.DataFilesTests

✅ CreateAsync(["create:files", "read:files"],201)
✅ CreateAsync(["create:files", "read:files"],400)
✅ CreateAsync(["read:files"],403)
✅ DeleteAsync(["delete:files", "read:files"],200,"000000000000000000000001")
✅ DeleteAsync(["delete:files", "read:files"],403,"000000000000000000000003")
✅ DeleteAsync(["delete:files", "read:files"],404,"000000000000000000000004")
✅ DeleteAsync(["read:files"],403,"000000000000000000000001")
✅ DownloadAsync(["create:files", "read:files"],200,"")
✅ DownloadAsync(["create:files", "read:files"],403,"000000000000000000000003")
✅ DownloadAsync(["create:files", "read:files"],404,"000000000000000000000004")
✅ DownloadAsync(["create:files", "update:files"],403,"")
✅ GetAllAsync(["create:translation_engines"],403)
✅ GetAllAsync(["read:files"],200)
✅ GetByIDAsync(["create:translation_engines"],403,"000000000000000000000001")
✅ GetByIDAsync(["read:files"],200,"000000000000000000000001")
✅ GetByIDAsync(["read:files"],403,"000000000000000000000003")
✅ GetByIDAsync(["read:files"],404,"000000000000000000000004")
✅ GetByIDAsync(["read:files"],404,"phony_id")
✅ UpdateAsync(["read:files"],403,"000000000000000000000001")
✅ UpdateAsync(["update:files", "read:files"],200,"000000000000000000000001")
✅ UpdateAsync(["update:files", "read:files"],400,"000000000000000000000001")
✅ UpdateAsync(["update:files", "read:files"],403,"000000000000000000000003")
✅ UpdateAsync(["update:files", "read:files"],404,"000000000000000000000004")

✅ Serval.ApiServer.StatusTests

✅ GetDeploymentAsync(["create:translation_engines"],403)
✅ GetDeploymentAsync(["read:status"],200)
✅ GetHealthAsync(["create:translation_engines"],403)
✅ GetHealthAsync(["read:status"],200)

✅ Serval.ApiServer.TranslationEngineTests

✅ AddCorpusToEngineByIdAsync(["read:files"],403,"e00000000000000000000001")
✅ AddCorpusToEngineByIdAsync(["update:translation_engines"],201,"e00000000000000000000001")
✅ AddCorpusToEngineByIdAsync(["update:translation_engines"],404,"e00000000000000000000004")
✅ AddParallelCorpusToEngineById_NotAuthorized
✅ AddParallelCorpusToEngineByIdAsync
✅ CancelCurrentBuildForEngineByIdAsync(["read:files"],403,"e00000000000000000000001",False)
✅ CancelCurrentBuildForEngineByIdAsync(["update:translation_engines"],200,"e00000000000000000000001")
✅ CancelCurrentBuildForEngineByIdAsync(["update:translation_engines"],204,"e00000000000000000000001",False)
✅ CancelCurrentBuildForEngineByIdAsync(["update:translation_engines"],404,"e00000000000000000000004",False)
✅ CreateEngineAsync(["create:translation_engines", "read:translation_engines"],201,"Echo")
✅ CreateEngineAsync(["create:translation_engines"],400,"NotARealKindOfMT")
✅ CreateEngineAsync(["read:files"],403,"Echo")
✅ DeleteCorpusAndFilesAsync
✅ DeleteCorpusButNotFilesAsync
✅ DeleteCorpusByIdForEngineByIdAsync(["read:files"],403,"e00000000000000000000001")
✅ DeleteCorpusByIdForEngineByIdAsync(["update:translation_engines", "read:translation_engines"],200,"e00000000000000000000001")
✅ DeleteCorpusByIdForEngineByIdAsync(["update:translation_engines", "read:translation_engines"],404,"e00000000000000000000001")
✅ DeleteCorpusByIdForEngineByIdAsync(["update:translation_engines", "read:translation_engines"],404,"e00000000000000000000004")
✅ DeleteEngineByIdAsync(["delete:translation_engines", "read:translation_engines"],200,"e00000000000000000000001")
✅ DeleteEngineByIdAsync(["delete:translation_engines"],404,"e00000000000000000000004")
✅ DeleteEngineByIdAsync(["read:translation_engines"],403,"e00000000000000000000001")
✅ DeleteParallelCorpusByIdForEngineById_NoSuchCorpus
✅ DeleteParallelCorpusByIdForEngineById_NoSuchEngine
✅ DeleteParallelCorpusByIdForEngineById_NotAuthorized
✅ DeleteParallelCorpusByIdForEngineByIdAsync
✅ GetAllAsync(["read:files"],403)
✅ GetAllAsync(["read:translation_engines"],200)
✅ GetAllBuildsForEngineByIdAsync(["read:files"],403,"e00000000000000000000001")
✅ GetAllBuildsForEngineByIdAsync(["read:translation_engines"],200,"be0000000000000000000001")
✅ GetAllBuildsForEngineByIdAsync(["read:translation_engines"],404,"e00000000000000000000004",False)
✅ GetAllCorporaForEngineByIdAsync(["read:files"],403,"e00000000000000000000001")
✅ GetAllCorporaForEngineByIdAsync(["update:translation_engines", "create:translation_engines", "read:translation_engines"],200,"e00000000000000000000001")
✅ GetAllCorporaForEngineByIdAsync(["update:translation_engines", "create:translation_engines", "read:translation_engines"],404,"e00000000000000000000004")
✅ GetAllParallelCorporaForEngineById_NoSuchEngine
✅ GetAllParallelCorporaForEngineById_NotAuthorized
✅ GetAllParallelCorporaForEngineByIdAsync
✅ GetAllPretranslationsAsync_CorpusDoesNotExist
✅ GetAllPretranslationsAsync_EngineDoesNotExist
✅ GetAllPretranslationsAsync_EngineNotBuilt
✅ GetAllPretranslationsAsync_Exists
✅ GetAllPretranslationsAsync_TextIdDoesNotExist
✅ GetAllPretranslationsAsync_TextIdExists
✅ GetBuildByIdForEngineByIdAsync(["read:files"],403,"e00000000000000000000001")
✅ GetBuildByIdForEngineByIdAsync(["read:translation_engines"],200,"be0000000000000000000001")
✅ GetBuildByIdForEngineByIdAsync(["read:translation_engines"],404,"be0000000000000000000001",False)
✅ GetBuildByIdForEngineByIdAsync(["read:translation_engines"],404,"e00000000000000000000004",False)
✅ GetBuildByIdForEngineByIdAsync(["read:translation_engines"],408,"be0000000000000000000001",True)
✅ GetByIdAsync(["read:files"],403,"e00000000000000000000001")
✅ GetByIdAsync(["read:translation_engines"],200,"e00000000000000000000001")
✅ GetByIdAsync(["read:translation_engines"],403,"e00000000000000000000003")
✅ GetByIdAsync(["read:translation_engines"],404,"e00000000000000000000004")
✅ GetByIdAsync(["read:translation_engines"],404,"phony_id")
✅ GetCorpusByIdForEngineByIdAsync(["read:files"],403,"e00000000000000000000001")
✅ GetCorpusByIdForEngineByIdAsync(["update:translation_engines", "read:translation_engines"],200,"e00000000000000000000001",True)
✅ GetCorpusByIdForEngineByIdAsync(["update:translation_engines", "read:translation_engines"],404,"e00000000000000000000001",True)
✅ GetCorpusByIdForEngineByIdAsync(["update:translation_engines", "read:translation_engines"],404,"e00000000000000000000001")
✅ GetCorpusByIdForEngineByIdAsync(["update:translation_engines", "read:translation_engines"],404,"e00000000000000000000004")
✅ GetCurrentBuildForEngineByIdAsync(["read:files"],403,"e00000000000000000000001",False)
✅ GetCurrentBuildForEngineByIdAsync(["read:translation_engines"],200,"e00000000000000000000001")
✅ GetCurrentBuildForEngineByIdAsync(["read:translation_engines"],204,"e00000000000000000000001",False)
✅ GetCurrentBuildForEngineByIdAsync(["read:translation_engines"],404,"e00000000000000000000004",False)
✅ GetCurrentBuildForEngineByIdAsync(["read:translation_engines"],408,"e00000000000000000000001")
✅ GetDownloadableUrl(["read:files"],403,"e00000000000000000000001")
✅ GetDownloadableUrl(["read:translation_engines"],200,"e00000000000000000000001")
✅ GetDownloadableUrl(["read:translation_engines"],404,"e00000000000000000000004")
✅ GetLanguageInfo_Error
✅ GetLanguageInfoAsync
✅ GetParallelCorpusByIdForEngineById_NoCorpora
✅ GetParallelCorpusByIdForEngineById_NoSuchCorpus
✅ GetParallelCorpusByIdForEngineById_NoSuchEngine
✅ GetParallelCorpusByIdForEngineById_NotAuthorized
✅ GetParallelCorpusByIdForEngineByIdAsync
✅ GetPretranslatedUsfmAsync_BookDoesNotExist
✅ GetPretranslatedUsfmAsync_BookExists
✅ GetPretranslationsByTextId
✅ GetPretranslationsByTextId_EngineDoesNotExist
✅ GetQueueAsync_NotAuthorized
✅ GetQueueAsync("Echo")
✅ GetQueueAsync("Nmt")
✅ GetWordGraphForSegmentByIdAsync(["read:files"],403,"e00000000000000000000001")
✅ GetWordGraphForSegmentByIdAsync(["read:translation_engines", "update:translation_engines"],200,"e00000000000000000000001")
✅ GetWordGraphForSegmentByIdAsync(["read:translation_engines", "update:translation_engines"],404,"e00000000000000000000004")
✅ GetWordGraphForSegmentByIdAsync(["read:translation_engines", "update:translation_engines"],409,"e00000000000000000000001")
✅ StartBuild_ParallelCorpus
✅ StartBuildAsync_ParallelCorpus
✅ StartBuildAsync_ParallelCorpus_PretranslateNoCorpusSpecified
✅ StartBuildAsync_ParallelCorpus_PretranslateParallelAndNormalCorpus
✅ StartBuildAsync_ParallelCorpus_TrainOnNoCorpusSpecified
✅ StartBuildAsync_ParallelCorpus_TrainOnParallelAndNormalCorpus
✅ StartBuildForEngineAsync_UnparsableOptions()
✅ StartBuildForEngineByIdAsync(["read:files"],403,"e00000000000000000000001")
✅ StartBuildForEngineByIdAsync(["update:translation_engines", "create:translation_engines", "read:translation_engines"],201,"e00000000000000000000001")
✅ StartBuildForEngineByIdAsync(["update:translation_engines", "create:translation_engines", "read:translation_engines"],400,"e00000000000000000000001")
✅ StartBuildForEngineByIdAsync(["update:translation_engines", "create:translation_engines", "read:translation_engines"],404,"e00000000000000000000004")
✅ TrainEngineByIdOnSegmentPairAsync(["read:files"],403,"e00000000000000000000001")
✅ TrainEngineByIdOnSegmentPairAsync(["update:translation_engines"],200,"e00000000000000000000001")
✅ TrainEngineByIdOnSegmentPairAsync(["update:translation_engines"],404,"e00000000000000000000004")
✅ TrainEngineByIdOnSegmentPairAsync(["update:translation_engines"],409,"e00000000000000000000001")
✅ TranslateNSegmentWithEngineByIdAsync(["read:files"],403,"e00000000000000000000001")
✅ TranslateNSegmentWithEngineByIdAsync(["read:translation_engines", "update:translation_engines"],200,"e00000000000000000000001")
✅ TranslateNSegmentWithEngineByIdAsync(["read:translation_engines", "update:translation_engines"],409,"e00000000000000000000001")
✅ TranslateNSegmentWithEngineByIdAsync(["read:translation_engines"],404,"e00000000000000000000004")
✅ TranslateSegmentWithEngineByIdAsync(["read:files"],403,"e00000000000000000000001")
✅ TranslateSegmentWithEngineByIdAsync(["read:translation_engines", "update:translation_engines"],200,"e00000000000000000000001")
✅ TranslateSegmentWithEngineByIdAsync(["read:translation_engines", "update:translation_engines"],404,"e00000000000000000000004")
✅ TranslateSegmentWithEngineByIdAsync(["read:translation_engines", "update:translation_engines"],409,"e00000000000000000000001")
✅ TryToQueueMultipleBuildsPerSingleUser
✅ UpdateCorpusByIdForEngineByIdAsync(["read:files"],403,"e00000000000000000000001")
✅ UpdateCorpusByIdForEngineByIdAsync(["update:translation_engines", "create:translation_engines", "read:translation_engines"],200,"e00000000000000000000001")
✅ UpdateCorpusByIdForEngineByIdAsync(["update:translation_engines", "create:translation_engines", "read:translation_engines"],404,"e00000000000000000000001")
✅ UpdateCorpusByIdForEngineByIdAsync(["update:translation_engines", "create:translation_engines", "read:translation_engines"],404,"e00000000000000000000004")
✅ UpdateParallelCorpusByIdForEngineById_NoSuchCorpus
✅ UpdateParallelCorpusByIdForEngineById_NoSuchEngine
✅ UpdateParallelCorpusByIdForEngineById_NotAuthorized
✅ UpdateParallelCorpusByIdForEngineByIdAsync

✅ Serval.ApiServer.WebhooksTests

✅ CreateWebhookAsync(["read:files"],403)
✅ CreateWebhookAsync(null,201)
✅ DeleteWebhookByIdAsync(["read:files"],403,"000000000000000000000000")
✅ DeleteWebhookByIdAsync(null,200,"000000000000000000000000")
✅ DeleteWebhookByIdAsync(null,404,"000000000000000000000001")
✅ GetAllWebhooksAsync(["read:files"],403)
✅ GetAllWebhooksAsync(null,200)
✅ GetWebhookByIdAsync(["read:files"],403,"000000000000000000000000")
✅ GetWebhookByIdAsync(null,200,"000000000000000000000000")
✅ GetWebhookByIdAsync(null,404,"000000000000000000000001")
✅ GetWebhookByIdAsync(null,404,"phony_id")

✅ src/Serval/test/Serval.DataFiles.Tests/TestResults/test-results.trx

11 tests were completed in 5s with 11 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
Serval.DataFiles.Services.CorpusServiceTests 2✅ 70ms
Serval.DataFiles.Services.DataFileServiceTests 8✅ 132ms
Serval.DataFiles.Services.DeletedFileCleanerTests 1✅ 2s

✅ Serval.DataFiles.Services.CorpusServiceTests

✅ CreateAsync
✅ UpdateAsync

✅ Serval.DataFiles.Services.DataFileServiceTests

✅ CreateAsync_Error
✅ CreateAsync_NoError
✅ DeleteAsync_DoesNotExist
✅ DeleteAsync_Exists
✅ DownloadAsync_DoesNotExists
✅ DownloadAsync_Exists
✅ UpdateAsync_DoesNotExist
✅ UpdateAsync_Exists

✅ Serval.DataFiles.Services.DeletedFileCleanerTests

✅ Clean

✅ src/Serval/test/Serval.E2ETests/TestResults/test-results.trx

No tests found

✅ src/Serval/test/Serval.Shared.Tests/TestResults/test-results.trx

3 tests were completed in 4s with 3 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
Serval.Shared.Services.ScriptureDataFileServiceTests 2✅ 207ms
Serval.Shared.Utils.ObjectToInferredTypesConverterTest 1✅ 65ms

✅ Serval.Shared.Services.ScriptureDataFileServiceTests

✅ GetParatextProjectSettings
✅ GetZipParatextProjectTextUpdater

✅ Serval.Shared.Utils.ObjectToInferredTypesConverterTest

✅ Convert

❌ src/Serval/test/Serval.Translation.Tests/TestResults/test-results.trx

43 tests were completed in 6s with 37 passed, 6 failed and 0 skipped.

Test suite Passed Failed Skipped Time
Serval.Translation.Services.BuildServiceTests 4✅ 129ms
Serval.Translation.Services.EngineServiceTests 19✅ 6❌ 878ms
Serval.Translation.Services.PlatformServiceTests 3✅ 143ms
Serval.Translation.Services.PretranslationServiceTests 11✅ 256ms

✅ Serval.Translation.Services.BuildServiceTests

✅ GetActiveNewerRevisionAsync_Insert
✅ GetNewerRevisionAsync_Delete
✅ GetNewerRevisionAsync_DoesNotExist
✅ GetNewerRevisionAsync_Update

❌ Serval.Translation.Services.EngineServiceTests

✅ CancelBuildAsync_EngineExistsNotBuilding
✅ CreateAsync
✅ DeleteAsync_EngineExists
✅ DeleteAsync_ProjectDoesNotExist
✅ GetWordGraphAsync_EngineDoesNotExist
✅ GetWordGraphAsync_EngineExists
✅ StartBuildAsync_MixedSourceAndTarget_ParallelCorpus
✅ StartBuildAsync_NoFilters_ParallelCorpus
✅ StartBuildAsync_NoTargetFilter_ParallelCorpus
✅ StartBuildAsync_ParallelCorpus_TextFiles
✅ StartBuildAsync_ScriptureRange_ParallelCorpus
❌ StartBuildAsync_ScriptureRangeEmptyString
	NSubstitute.Exceptions.ReceivedCallsException : Expected to receive a call matching:
		StartBuildAsync({ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "files": [ { "location": "file1.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file1.zip" } ] } ], "targetCorpora": [ { "language": "en", "files": [ { "location": "file2.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file2.zip" } ] } ] } ] }, <null>, <null>, System.Threading.CancellationToken)
	Actually received no matching calls.
	Received 1 non-matching call (non-matching arguments indicated with '*' characters):
		StartBuildAsync(*{ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "pretranslateAll": true, "files": [ { "location": "file1.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file1.zip" } ] } ], "targetCorpora": [ { "language": "en", "pretranslateAll": true, "files": [ { "location": "file2.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file2.zip" } ] } ] } ] }*, <null>, <null>, System.Threading.CancellationToken)
	
❌ StartBuildAsync_ScriptureRangeSpecified
	NSubstitute.Exceptions.ReceivedCallsException : Expected to receive a call matching:
		StartBuildAsync({ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "trainOnChapters": { "MAT": { "chapters": [ 1 ] }, "MRK": { } }, "files": [ { "location": "file1.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file1.zip" } ] } ], "targetCorpora": [ { "language": "en", "trainOnChapters": { "MAT": { "chapters": [ 1 ] }, "MRK": { } }, "files": [ { "location": "file2.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file2.zip" } ] } ] } ] }, <null>, <null>, System.Threading.CancellationToken)
	Actually received no matching calls.
	Received 1 non-matching call (non-matching arguments indicated with '*' characters):
		StartBuildAsync(*{ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "pretranslateAll": true, "trainOnChapters": { "MAT": { "chapters": [ 1 ] }, "MRK": { } }, "files": [ { "location": "file1.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file1.zip" } ] } ], "targetCorpora": [ { "language": "en", "pretranslateAll": true, "trainOnChapters": { "MAT": { "chapters": [ 1 ] }, "MRK": { } }, "files": [ { "location": "file2.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file2.zip" } ] } ] } ] }*, <null>, <null>, System.Threading.CancellationToken)
	
✅ StartBuildAsync_TextFilesScriptureRangeSpecified
✅ StartBuildAsync_TextIds_ParallelCorpus
❌ StartBuildAsync_TextIdsEmpty
	NSubstitute.Exceptions.ReceivedCallsException : Expected to receive a call matching:
		StartBuildAsync({ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }, <null>, <null>, System.Threading.CancellationToken)
	Actually received no matching calls.
	Received 1 non-matching call (non-matching arguments indicated with '*' characters):
		StartBuildAsync(*{ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "pretranslateAll": true, "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "pretranslateAll": true, "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }*, <null>, <null>, System.Threading.CancellationToken)
	
❌ StartBuildAsync_TextIdsNotSpecified
	NSubstitute.Exceptions.ReceivedCallsException : Expected to receive a call matching:
		StartBuildAsync({ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }, <null>, <null>, System.Threading.CancellationToken)
	Actually received no matching calls.
	Received 1 non-matching call (non-matching arguments indicated with '*' characters):
		StartBuildAsync(*{ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "pretranslateAll": true, "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "pretranslateAll": true, "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }*, <null>, <null>, System.Threading.CancellationToken)
	
❌ StartBuildAsync_TextIdsPopulated
	NSubstitute.Exceptions.ReceivedCallsException : Expected to receive a call matching:
		StartBuildAsync({ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "trainOnTextIds": [ "text1" ], "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "trainOnTextIds": [ "text1" ], "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }, <null>, <null>, System.Threading.CancellationToken)
	Actually received no matching calls.
	Received 1 non-matching call (non-matching arguments indicated with '*' characters):
		StartBuildAsync(*{ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "pretranslateAll": true, "trainOnTextIds": [ "text1" ], "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "pretranslateAll": true, "trainOnTextIds": [ "text1" ], "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }*, <null>, <null>, System.Threading.CancellationToken)
	
❌ StartBuildAsync_TrainOnNotSpecified
	NSubstitute.Exceptions.ReceivedCallsException : Expected to receive a call matching:
		StartBuildAsync({ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }, <null>, <null>, System.Threading.CancellationToken)
	Actually received no matching calls.
	Received 1 non-matching call (non-matching arguments indicated with '*' characters):
		StartBuildAsync(*{ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "trainOnAll": true, "pretranslateAll": true, "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "trainOnAll": true, "pretranslateAll": true, "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }*, <null>, <null>, System.Threading.CancellationToken)
	
✅ StartBuildAsync_TrainOnNotSpecified_ParallelCorpus
✅ TrainSegmentAsync_EngineDoesNotExist
✅ TrainSegmentAsync_EngineExists
✅ TranslateAsync_EngineDoesNotExist
✅ TranslateAsync_EngineExists
✅ UpdateCorpusAsync

✅ Serval.Translation.Services.PlatformServiceTests

✅ IncrementCorpusSizeAsync
✅ TestBuildStateTransitionsAsync
✅ UpdateBuildStatusAsync

✅ Serval.Translation.Services.PretranslationServiceTests

✅ GetUsfmAsync_Auto_TargetBookDoesNotExist
✅ GetUsfmAsync_Auto_TargetBookExists
✅ GetUsfmAsync_Source_OnlyExisting
✅ GetUsfmAsync_Source_OnlyPretranslated
✅ GetUsfmAsync_Source_PreferExisting
✅ GetUsfmAsync_Source_PreferPretranslated
✅ GetUsfmAsync_Target_OnlyExisting
✅ GetUsfmAsync_Target_OnlyPretranslated
✅ GetUsfmAsync_Target_PreferExisting
✅ GetUsfmAsync_Target_PreferPretranslated
✅ GetUsfmAsync_Target_TargetBookDoesNotExist

✅ src/Serval/test/Serval.Webhooks.Tests/TestResults/test-results.trx

5 tests were completed in 5s with 5 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
Serval.Webhooks.Services.WebhookJobTests 5✅ 191ms

✅ Serval.Webhooks.Services.WebhookJobTests

✅ RunAsync_Exception
✅ RunAsync_MatchingHook
✅ RunAsync_NoHooks
✅ RunAsync_NoMatchingHook
✅ RunAsync_RequestTimeout

Annotations

Check failure on line 501 in src/Serval/test/Serval.Translation.Tests/Services/EngineServiceTests.cs

See this annotation in the file changed.

@github-actions github-actions / NUnit Tests

Serval.Translation.Services.EngineServiceTests ► StartBuildAsync_ScriptureRangeEmptyString

Failed test found in:
  src/Serval/test/Serval.Translation.Tests/TestResults/test-results.trx
Error:
  NSubstitute.Exceptions.ReceivedCallsException : Expected to receive a call matching:
  	StartBuildAsync({ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "files": [ { "location": "file1.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file1.zip" } ] } ], "targetCorpora": [ { "language": "en", "files": [ { "location": "file2.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file2.zip" } ] } ] } ] }, <null>, <null>, System.Threading.CancellationToken)
  Actually received no matching calls.
  Received 1 non-matching call (non-matching arguments indicated with '*' characters):
  	StartBuildAsync(*{ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "pretranslateAll": true, "files": [ { "location": "file1.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file1.zip" } ] } ], "targetCorpora": [ { "language": "en", "pretranslateAll": true, "files": [ { "location": "file2.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file2.zip" } ] } ] } ] }*, <null>, <null>, System.Threading.CancellationToken)
  
Raw output
NSubstitute.Exceptions.ReceivedCallsException : Expected to receive a call matching:
	StartBuildAsync({ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "files": [ { "location": "file1.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file1.zip" } ] } ], "targetCorpora": [ { "language": "en", "files": [ { "location": "file2.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file2.zip" } ] } ] } ] }, <null>, <null>, System.Threading.CancellationToken)
Actually received no matching calls.
Received 1 non-matching call (non-matching arguments indicated with '*' characters):
	StartBuildAsync(*{ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "pretranslateAll": true, "files": [ { "location": "file1.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file1.zip" } ] } ], "targetCorpora": [ { "language": "en", "pretranslateAll": true, "files": [ { "location": "file2.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file2.zip" } ] } ] } ] }*, <null>, <null>, System.Threading.CancellationToken)

   at NSubstitute.Core.ReceivedCallsExceptionThrower.Throw(ICallSpecification callSpecification, IEnumerable`1 matchingCalls, IEnumerable`1 nonMatchingCalls, Quantity requiredQuantity)
   at NSubstitute.Routing.Handlers.CheckReceivedCallsHandler.Handle(ICall call)
   at NSubstitute.Routing.Route.Handle(ICall call)
   at NSubstitute.Core.CallRouter.Route(ICall call)
   at NSubstitute.Proxies.CastleDynamicProxy.CastleForwardingInterceptor.Intercept(IInvocation invocation)
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at NSubstitute.Proxies.CastleDynamicProxy.ProxyIdInterceptor.Intercept(IInvocation invocation)
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at Castle.Proxies.TranslationEngineApiClientProxy.StartBuildAsync(StartBuildRequest request, Metadata headers, Nullable`1 deadline, CancellationToken cancellationToken)
   at Serval.Translation.Services.EngineServiceTests.StartBuildAsync_ScriptureRangeEmptyString() in /home/runner/work/serval/serval/src/Serval/test/Serval.Translation.Tests/Services/EngineServiceTests.cs:line 501
   at NUnit.Framework.Internal.TaskAwaitAdapter.GenericAdapter`1.GetResult()
   at NUnit.Framework.Internal.AsyncToSyncAdapter.Await[TResult](Func`1 invoke)
   at NUnit.Framework.Internal.AsyncToSyncAdapter.Await(Func`1 invoke)
   at NUnit.Framework.Internal.Commands.TestMethodCommand.RunTestMethod(TestExecutionContext context)
   at NUnit.Framework.Internal.Commands.TestMethodCommand.Execute(TestExecutionContext context)
   at NUnit.Framework.Internal.Execution.SimpleWorkItem.<>c__DisplayClass3_0.<PerformWork>b__0()
   at NUnit.Framework.Internal.ContextUtils.<>c__DisplayClass1_0`1.<DoIsolated>b__0(Object _)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
   at NUnit.Framework.Internal.ContextUtils.DoIsolated(ContextCallback callback, Object state)
   at NUnit.Framework.Internal.ContextUtils.DoIsolated[T](Func`1 func)
   at NUnit.Framework.Internal.Execution.SimpleWorkItem.PerformWork()

Check failure on line 410 in src/Serval/test/Serval.Translation.Tests/Services/EngineServiceTests.cs

See this annotation in the file changed.

@github-actions github-actions / NUnit Tests

Serval.Translation.Services.EngineServiceTests ► StartBuildAsync_ScriptureRangeSpecified

Failed test found in:
  src/Serval/test/Serval.Translation.Tests/TestResults/test-results.trx
Error:
  NSubstitute.Exceptions.ReceivedCallsException : Expected to receive a call matching:
  	StartBuildAsync({ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "trainOnChapters": { "MAT": { "chapters": [ 1 ] }, "MRK": { } }, "files": [ { "location": "file1.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file1.zip" } ] } ], "targetCorpora": [ { "language": "en", "trainOnChapters": { "MAT": { "chapters": [ 1 ] }, "MRK": { } }, "files": [ { "location": "file2.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file2.zip" } ] } ] } ] }, <null>, <null>, System.Threading.CancellationToken)
  Actually received no matching calls.
  Received 1 non-matching call (non-matching arguments indicated with '*' characters):
  	StartBuildAsync(*{ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "pretranslateAll": true, "trainOnChapters": { "MAT": { "chapters": [ 1 ] }, "MRK": { } }, "files": [ { "location": "file1.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file1.zip" } ] } ], "targetCorpora": [ { "language": "en", "pretranslateAll": true, "trainOnChapters": { "MAT": { "chapters": [ 1 ] }, "MRK": { } }, "files": [ { "location": "file2.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file2.zip" } ] } ] } ] }*, <null>, <null>, System.Threading.CancellationToken)
  
Raw output
NSubstitute.Exceptions.ReceivedCallsException : Expected to receive a call matching:
	StartBuildAsync({ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "trainOnChapters": { "MAT": { "chapters": [ 1 ] }, "MRK": { } }, "files": [ { "location": "file1.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file1.zip" } ] } ], "targetCorpora": [ { "language": "en", "trainOnChapters": { "MAT": { "chapters": [ 1 ] }, "MRK": { } }, "files": [ { "location": "file2.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file2.zip" } ] } ] } ] }, <null>, <null>, System.Threading.CancellationToken)
Actually received no matching calls.
Received 1 non-matching call (non-matching arguments indicated with '*' characters):
	StartBuildAsync(*{ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "pretranslateAll": true, "trainOnChapters": { "MAT": { "chapters": [ 1 ] }, "MRK": { } }, "files": [ { "location": "file1.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file1.zip" } ] } ], "targetCorpora": [ { "language": "en", "pretranslateAll": true, "trainOnChapters": { "MAT": { "chapters": [ 1 ] }, "MRK": { } }, "files": [ { "location": "file2.zip", "format": "FILE_FORMAT_PARATEXT", "textId": "file2.zip" } ] } ] } ] }*, <null>, <null>, System.Threading.CancellationToken)

   at NSubstitute.Core.ReceivedCallsExceptionThrower.Throw(ICallSpecification callSpecification, IEnumerable`1 matchingCalls, IEnumerable`1 nonMatchingCalls, Quantity requiredQuantity)
   at NSubstitute.Routing.Handlers.CheckReceivedCallsHandler.Handle(ICall call)
   at NSubstitute.Routing.Route.Handle(ICall call)
   at NSubstitute.Core.CallRouter.Route(ICall call)
   at NSubstitute.Proxies.CastleDynamicProxy.CastleForwardingInterceptor.Intercept(IInvocation invocation)
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at NSubstitute.Proxies.CastleDynamicProxy.ProxyIdInterceptor.Intercept(IInvocation invocation)
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at Castle.Proxies.TranslationEngineApiClientProxy.StartBuildAsync(StartBuildRequest request, Metadata headers, Nullable`1 deadline, CancellationToken cancellationToken)
   at Serval.Translation.Services.EngineServiceTests.StartBuildAsync_ScriptureRangeSpecified() in /home/runner/work/serval/serval/src/Serval/test/Serval.Translation.Tests/Services/EngineServiceTests.cs:line 410
   at NUnit.Framework.Internal.TaskAwaitAdapter.GenericAdapter`1.GetResult()
   at NUnit.Framework.Internal.AsyncToSyncAdapter.Await[TResult](Func`1 invoke)
   at NUnit.Framework.Internal.AsyncToSyncAdapter.Await(Func`1 invoke)
   at NUnit.Framework.Internal.Commands.TestMethodCommand.RunTestMethod(TestExecutionContext context)
   at NUnit.Framework.Internal.Commands.TestMethodCommand.Execute(TestExecutionContext context)
   at NUnit.Framework.Internal.Execution.SimpleWorkItem.<>c__DisplayClass3_0.<PerformWork>b__0()
   at NUnit.Framework.Internal.ContextUtils.<>c__DisplayClass1_0`1.<DoIsolated>b__0(Object _)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
   at NUnit.Framework.Internal.ContextUtils.DoIsolated(ContextCallback callback, Object state)
   at NUnit.Framework.Internal.ContextUtils.DoIsolated[T](Func`1 func)
   at NUnit.Framework.Internal.Execution.SimpleWorkItem.PerformWork()

Check failure on line 181 in src/Serval/test/Serval.Translation.Tests/Services/EngineServiceTests.cs

See this annotation in the file changed.

@github-actions github-actions / NUnit Tests

Serval.Translation.Services.EngineServiceTests ► StartBuildAsync_TextIdsEmpty

Failed test found in:
  src/Serval/test/Serval.Translation.Tests/TestResults/test-results.trx
Error:
  NSubstitute.Exceptions.ReceivedCallsException : Expected to receive a call matching:
  	StartBuildAsync({ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }, <null>, <null>, System.Threading.CancellationToken)
  Actually received no matching calls.
  Received 1 non-matching call (non-matching arguments indicated with '*' characters):
  	StartBuildAsync(*{ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "pretranslateAll": true, "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "pretranslateAll": true, "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }*, <null>, <null>, System.Threading.CancellationToken)
  
Raw output
NSubstitute.Exceptions.ReceivedCallsException : Expected to receive a call matching:
	StartBuildAsync({ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }, <null>, <null>, System.Threading.CancellationToken)
Actually received no matching calls.
Received 1 non-matching call (non-matching arguments indicated with '*' characters):
	StartBuildAsync(*{ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "pretranslateAll": true, "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "pretranslateAll": true, "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }*, <null>, <null>, System.Threading.CancellationToken)

   at NSubstitute.Core.ReceivedCallsExceptionThrower.Throw(ICallSpecification callSpecification, IEnumerable`1 matchingCalls, IEnumerable`1 nonMatchingCalls, Quantity requiredQuantity)
   at NSubstitute.Routing.Handlers.CheckReceivedCallsHandler.Handle(ICall call)
   at NSubstitute.Routing.Route.Handle(ICall call)
   at NSubstitute.Core.CallRouter.Route(ICall call)
   at NSubstitute.Proxies.CastleDynamicProxy.CastleForwardingInterceptor.Intercept(IInvocation invocation)
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at NSubstitute.Proxies.CastleDynamicProxy.ProxyIdInterceptor.Intercept(IInvocation invocation)
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at Castle.Proxies.TranslationEngineApiClientProxy.StartBuildAsync(StartBuildRequest request, Metadata headers, Nullable`1 deadline, CancellationToken cancellationToken)
   at Serval.Translation.Services.EngineServiceTests.StartBuildAsync_TextIdsEmpty() in /home/runner/work/serval/serval/src/Serval/test/Serval.Translation.Tests/Services/EngineServiceTests.cs:line 181
   at NUnit.Framework.Internal.TaskAwaitAdapter.GenericAdapter`1.GetResult()
   at NUnit.Framework.Internal.AsyncToSyncAdapter.Await[TResult](Func`1 invoke)
   at NUnit.Framework.Internal.AsyncToSyncAdapter.Await(Func`1 invoke)
   at NUnit.Framework.Internal.Commands.TestMethodCommand.RunTestMethod(TestExecutionContext context)
   at NUnit.Framework.Internal.Commands.TestMethodCommand.Execute(TestExecutionContext context)
   at NUnit.Framework.Internal.Execution.SimpleWorkItem.<>c__DisplayClass3_0.<PerformWork>b__0()
   at NUnit.Framework.Internal.ContextUtils.<>c__DisplayClass1_0`1.<DoIsolated>b__0(Object _)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
   at NUnit.Framework.Internal.ContextUtils.DoIsolated(ContextCallback callback, Object state)
   at NUnit.Framework.Internal.ContextUtils.DoIsolated[T](Func`1 func)
   at NUnit.Framework.Internal.Execution.SimpleWorkItem.PerformWork()

Check failure on line 323 in src/Serval/test/Serval.Translation.Tests/Services/EngineServiceTests.cs

See this annotation in the file changed.

@github-actions github-actions / NUnit Tests

Serval.Translation.Services.EngineServiceTests ► StartBuildAsync_TextIdsNotSpecified

Failed test found in:
  src/Serval/test/Serval.Translation.Tests/TestResults/test-results.trx
Error:
  NSubstitute.Exceptions.ReceivedCallsException : Expected to receive a call matching:
  	StartBuildAsync({ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }, <null>, <null>, System.Threading.CancellationToken)
  Actually received no matching calls.
  Received 1 non-matching call (non-matching arguments indicated with '*' characters):
  	StartBuildAsync(*{ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "pretranslateAll": true, "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "pretranslateAll": true, "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }*, <null>, <null>, System.Threading.CancellationToken)
  
Raw output
NSubstitute.Exceptions.ReceivedCallsException : Expected to receive a call matching:
	StartBuildAsync({ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }, <null>, <null>, System.Threading.CancellationToken)
Actually received no matching calls.
Received 1 non-matching call (non-matching arguments indicated with '*' characters):
	StartBuildAsync(*{ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "pretranslateAll": true, "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "pretranslateAll": true, "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }*, <null>, <null>, System.Threading.CancellationToken)

   at NSubstitute.Core.ReceivedCallsExceptionThrower.Throw(ICallSpecification callSpecification, IEnumerable`1 matchingCalls, IEnumerable`1 nonMatchingCalls, Quantity requiredQuantity)
   at NSubstitute.Routing.Handlers.CheckReceivedCallsHandler.Handle(ICall call)
   at NSubstitute.Routing.Route.Handle(ICall call)
   at NSubstitute.Core.CallRouter.Route(ICall call)
   at NSubstitute.Proxies.CastleDynamicProxy.CastleForwardingInterceptor.Intercept(IInvocation invocation)
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at NSubstitute.Proxies.CastleDynamicProxy.ProxyIdInterceptor.Intercept(IInvocation invocation)
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at Castle.Proxies.TranslationEngineApiClientProxy.StartBuildAsync(StartBuildRequest request, Metadata headers, Nullable`1 deadline, CancellationToken cancellationToken)
   at Serval.Translation.Services.EngineServiceTests.StartBuildAsync_TextIdsNotSpecified() in /home/runner/work/serval/serval/src/Serval/test/Serval.Translation.Tests/Services/EngineServiceTests.cs:line 323
   at NUnit.Framework.Internal.TaskAwaitAdapter.GenericAdapter`1.GetResult()
   at NUnit.Framework.Internal.AsyncToSyncAdapter.Await[TResult](Func`1 invoke)
   at NUnit.Framework.Internal.AsyncToSyncAdapter.Await(Func`1 invoke)
   at NUnit.Framework.Internal.Commands.TestMethodCommand.RunTestMethod(TestExecutionContext context)
   at NUnit.Framework.Internal.Commands.TestMethodCommand.Execute(TestExecutionContext context)
   at NUnit.Framework.Internal.Execution.SimpleWorkItem.<>c__DisplayClass3_0.<PerformWork>b__0()
   at NUnit.Framework.Internal.ContextUtils.<>c__DisplayClass1_0`1.<DoIsolated>b__0(Object _)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
   at NUnit.Framework.Internal.ContextUtils.DoIsolated(ContextCallback callback, Object state)
   at NUnit.Framework.Internal.ContextUtils.DoIsolated[T](Func`1 func)
   at NUnit.Framework.Internal.Execution.SimpleWorkItem.PerformWork()

Check failure on line 252 in src/Serval/test/Serval.Translation.Tests/Services/EngineServiceTests.cs

See this annotation in the file changed.

@github-actions github-actions / NUnit Tests

Serval.Translation.Services.EngineServiceTests ► StartBuildAsync_TextIdsPopulated

Failed test found in:
  src/Serval/test/Serval.Translation.Tests/TestResults/test-results.trx
Error:
  NSubstitute.Exceptions.ReceivedCallsException : Expected to receive a call matching:
  	StartBuildAsync({ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "trainOnTextIds": [ "text1" ], "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "trainOnTextIds": [ "text1" ], "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }, <null>, <null>, System.Threading.CancellationToken)
  Actually received no matching calls.
  Received 1 non-matching call (non-matching arguments indicated with '*' characters):
  	StartBuildAsync(*{ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "pretranslateAll": true, "trainOnTextIds": [ "text1" ], "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "pretranslateAll": true, "trainOnTextIds": [ "text1" ], "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }*, <null>, <null>, System.Threading.CancellationToken)
  
Raw output
NSubstitute.Exceptions.ReceivedCallsException : Expected to receive a call matching:
	StartBuildAsync({ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "trainOnTextIds": [ "text1" ], "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "trainOnTextIds": [ "text1" ], "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }, <null>, <null>, System.Threading.CancellationToken)
Actually received no matching calls.
Received 1 non-matching call (non-matching arguments indicated with '*' characters):
	StartBuildAsync(*{ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "pretranslateAll": true, "trainOnTextIds": [ "text1" ], "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "pretranslateAll": true, "trainOnTextIds": [ "text1" ], "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }*, <null>, <null>, System.Threading.CancellationToken)

   at NSubstitute.Core.ReceivedCallsExceptionThrower.Throw(ICallSpecification callSpecification, IEnumerable`1 matchingCalls, IEnumerable`1 nonMatchingCalls, Quantity requiredQuantity)
   at NSubstitute.Routing.Handlers.CheckReceivedCallsHandler.Handle(ICall call)
   at NSubstitute.Routing.Route.Handle(ICall call)
   at NSubstitute.Core.CallRouter.Route(ICall call)
   at NSubstitute.Proxies.CastleDynamicProxy.CastleForwardingInterceptor.Intercept(IInvocation invocation)
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at NSubstitute.Proxies.CastleDynamicProxy.ProxyIdInterceptor.Intercept(IInvocation invocation)
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at Castle.Proxies.TranslationEngineApiClientProxy.StartBuildAsync(StartBuildRequest request, Metadata headers, Nullable`1 deadline, CancellationToken cancellationToken)
   at Serval.Translation.Services.EngineServiceTests.StartBuildAsync_TextIdsPopulated() in /home/runner/work/serval/serval/src/Serval/test/Serval.Translation.Tests/Services/EngineServiceTests.cs:line 252
   at NUnit.Framework.Internal.TaskAwaitAdapter.GenericAdapter`1.GetResult()
   at NUnit.Framework.Internal.AsyncToSyncAdapter.Await[TResult](Func`1 invoke)
   at NUnit.Framework.Internal.AsyncToSyncAdapter.Await(Func`1 invoke)
   at NUnit.Framework.Internal.Commands.TestMethodCommand.RunTestMethod(TestExecutionContext context)
   at NUnit.Framework.Internal.Commands.TestMethodCommand.Execute(TestExecutionContext context)
   at NUnit.Framework.Internal.Execution.SimpleWorkItem.<>c__DisplayClass3_0.<PerformWork>b__0()
   at NUnit.Framework.Internal.ContextUtils.<>c__DisplayClass1_0`1.<DoIsolated>b__0(Object _)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
   at NUnit.Framework.Internal.ContextUtils.DoIsolated(ContextCallback callback, Object state)
   at NUnit.Framework.Internal.ContextUtils.DoIsolated[T](Func`1 func)
   at NUnit.Framework.Internal.Execution.SimpleWorkItem.PerformWork()

Check failure on line 112 in src/Serval/test/Serval.Translation.Tests/Services/EngineServiceTests.cs

See this annotation in the file changed.

@github-actions github-actions / NUnit Tests

Serval.Translation.Services.EngineServiceTests ► StartBuildAsync_TrainOnNotSpecified

Failed test found in:
  src/Serval/test/Serval.Translation.Tests/TestResults/test-results.trx
Error:
  NSubstitute.Exceptions.ReceivedCallsException : Expected to receive a call matching:
  	StartBuildAsync({ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }, <null>, <null>, System.Threading.CancellationToken)
  Actually received no matching calls.
  Received 1 non-matching call (non-matching arguments indicated with '*' characters):
  	StartBuildAsync(*{ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "trainOnAll": true, "pretranslateAll": true, "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "trainOnAll": true, "pretranslateAll": true, "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }*, <null>, <null>, System.Threading.CancellationToken)
  
Raw output
NSubstitute.Exceptions.ReceivedCallsException : Expected to receive a call matching:
	StartBuildAsync({ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }, <null>, <null>, System.Threading.CancellationToken)
Actually received no matching calls.
Received 1 non-matching call (non-matching arguments indicated with '*' characters):
	StartBuildAsync(*{ "engineType": "Smt", "engineId": "engine1", "buildId": "b00000000000000000000001", "corpora": [ { "id": "corpus1", "sourceCorpora": [ { "language": "es", "trainOnAll": true, "pretranslateAll": true, "files": [ { "location": "file1.txt", "textId": "text1" } ] } ], "targetCorpora": [ { "language": "en", "trainOnAll": true, "pretranslateAll": true, "files": [ { "location": "file2.txt", "textId": "text1" } ] } ] } ] }*, <null>, <null>, System.Threading.CancellationToken)

   at NSubstitute.Core.ReceivedCallsExceptionThrower.Throw(ICallSpecification callSpecification, IEnumerable`1 matchingCalls, IEnumerable`1 nonMatchingCalls, Quantity requiredQuantity)
   at NSubstitute.Routing.Handlers.CheckReceivedCallsHandler.Handle(ICall call)
   at NSubstitute.Routing.Route.Handle(ICall call)
   at NSubstitute.Core.CallRouter.Route(ICall call)
   at NSubstitute.Proxies.CastleDynamicProxy.CastleForwardingInterceptor.Intercept(IInvocation invocation)
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at NSubstitute.Proxies.CastleDynamicProxy.ProxyIdInterceptor.Intercept(IInvocation invocation)
   at Castle.DynamicProxy.AbstractInvocation.Proceed()
   at Castle.Proxies.TranslationEngineApiClientProxy.StartBuildAsync(StartBuildRequest request, Metadata headers, Nullable`1 deadline, CancellationToken cancellationToken)
   at Serval.Translation.Services.EngineServiceTests.StartBuildAsync_TrainOnNotSpecified() in /home/runner/work/serval/serval/src/Serval/test/Serval.Translation.Tests/Services/EngineServiceTests.cs:line 112
   at NUnit.Framework.Internal.TaskAwaitAdapter.GenericAdapter`1.GetResult()
   at NUnit.Framework.Internal.AsyncToSyncAdapter.Await[TResult](Func`1 invoke)
   at NUnit.Framework.Internal.AsyncToSyncAdapter.Await(Func`1 invoke)
   at NUnit.Framework.Internal.Commands.TestMethodCommand.RunTestMethod(TestExecutionContext context)
   at NUnit.Framework.Internal.Commands.TestMethodCommand.Execute(TestExecutionContext context)
   at NUnit.Framework.Internal.Execution.SimpleWorkItem.<>c__DisplayClass3_0.<PerformWork>b__0()
   at NUnit.Framework.Internal.ContextUtils.<>c__DisplayClass1_0`1.<DoIsolated>b__0(Object _)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
   at NUnit.Framework.Internal.ContextUtils.DoIsolated(ContextCallback callback, Object state)
   at NUnit.Framework.Internal.ContextUtils.DoIsolated[T](Func`1 func)
   at NUnit.Framework.Internal.Execution.SimpleWorkItem.PerformWork()