Skip to content

Minilcm diff API

Minilcm diff API #324

Triggered via pull request October 30, 2024 10:00
Status Failure
Total duration 5m 12s
Artifacts

fw-lite.yaml

on: pull_request
Build FW Lite and run tests
4m 56s
Build FW Lite and run tests
Publish FW Lite app for Mac
0s
Publish FW Lite app for Mac
Publish FW Lite app for Linux
0s
Publish FW Lite app for Linux
Publish FW Lite app for Windows
0s
Publish FW Lite app for Windows
Create Release
0s
Create Release
Fit to window
Zoom out
Zoom in

Annotations

10 errors and 11 warnings
FwDataMiniLcmBridge.Tests.MiniLcmTests.CreateEntryTests.CanCreateEntry_AutoFaker
Expected property createdEntry.Senses[0].PartOfSpeech to be "bandwidth" with a length of 9, but "" has a length of 0, differs near "" (index 0). Expected property createdEntry.Senses[0].PartOfSpeechId to be {0d084fa7-2f38-4856-6760-d0256cc91e18}, but found <null>. Expected property createdEntry.Senses[0].SemanticDomains to be a collection with 1 item(s), but found an empty collection. Expected property createdEntry.Components[0].Id to be {fbfd3a5c-1cef-5f75-a117-fe810ab8300f}, but found {00000000-0000-0000-0000-000000000000}. Expected property createdEntry.Components[0].ComplexFormHeadword to be "test component 1" with a length of 16, but "Plaza" has a length of 5, differs near "Pla" (index 0). Expected property createdEntry.Components[0].ComponentHeadword to be "Pine" with a length of 4, but "test component 1" has a length of 16, differs near "tes" (index 0). Expected property createdEntry.ComplexForms[0].Id to be {d4a1a8cc-eedf-fb18-5e25-061c759ee780}, but found {00000000-0000-0000-0000-000000000000}. Expected property createdEntry.ComplexForms[0].ComplexFormHeadword to be "Trail" with a length of 5, but "test complex form 1" has a length of 19, differs near "tes" (index 0). Expected property createdEntry.ComplexForms[0].ComponentHeadword to be "test complex form 1" with a length of 19, but "Plaza" has a length of 5, differs near "Pla" (index 0). Expected property createdEntry.ComplexFormTypes to be a collection with 1 item(s), but { MiniLcm.Models.ComplexFormType { DeletedAt = <null>, Id = {fec038ed-6a8c-4fa5-bc96-a4f515a98c50}, Name = {[MiniLcm.Models.WritingSystemId { Code = "en" }] = "Unspecified Complex Form" } , Version = <null> }, MiniLcm.Models.ComplexFormType { DeletedAt = <null>, Id = {3af63735-a1ce-467a-ab17-390808d3e0ae}, Name = {[MiniLcm.Models.WritingSystemId { Code = "en" }] = "RAM" } , Version = <null> } } contains 1 item(s) more than { MiniLcm.Models.ComplexFormType { DeletedAt = <null>, Id = {3af63735-a1ce-467a-ab17-390808d3e0ae}, Name = {[MiniLcm.Models.WritingSystemId { Code = "en" }] = "RAM" } , Version = <null> } }. With configuration: - Use declared types and members - Compare enums by value - Compare tuples by their properties - Compare anonymous types by their properties - Compare records by their members - Include non-browsable members - Exclude member when (info.Name == "Version") - Match member by name (or throw) - Be strict about the order of items in byte arrays - Without automatic conversion.
FwLiteProjectSync.Tests.UpdateDiffTests.ExampleSentenceDiffShouldUpdateAllFields: backend/FwLite/FwLiteProjectSync.Tests/UpdateDiffTests.cs#L51
Expected property before.Version to be "JBOD", but found <null>. With configuration: - Use declared types and members - Compare enums by value - Compare tuples by their properties - Compare anonymous types by their properties - Compare records by their members - Include non-browsable members - Exclude member Id - Exclude member SenseId - Exclude member DeletedAt - Match member by name (or throw) - Be strict about the order of items in byte arrays - Without automatic conversion.
FwLiteProjectSync.Tests.UpdateDiffTests.SenseDiffShouldUpdateAllFields: backend/FwLite/FwLiteProjectSync.Tests/UpdateDiffTests.cs#L40
Expected property before.Version to be "Cotton", but found <null>. With configuration: - Use declared types and members - Compare enums by value - Compare tuples by their properties - Compare anonymous types by their properties - Compare records by their members - Include non-browsable members - Exclude member Id - Exclude member EntryId - Exclude member DeletedAt - Exclude member ExampleSentences - Match member by name (or throw) - Be strict about the order of items in byte arrays - Without automatic conversion.
LcmCrdt.Tests.DataModelSnapshotTests.VerifyDbModel
VerifyException : Directory: D:\a\languageforge-lexbox\languageforge-lexbox\backend\FwLite\LcmCrdt.Tests NotEqual: - Received: DataModelSnapshotTests.VerifyDbModel.received.txt Verified: DataModelSnapshotTests.VerifyDbModel.verified.txt FileContent: NotEqual: Received: DataModelSnapshotTests.VerifyDbModel.received.txt Model: EntityType: ProjectData Properties: Id (Guid) Required PK AfterSave:Throw ValueGenerated.OnAdd ClientId (Guid) Required FwProjectId (Guid?) Name (string) Required OriginDomain (string) Keys: Id PK Annotations: DiscriminatorProperty: Relational:FunctionName: Relational:Schema: Relational:SqlQuery: Relational:TableName: ProjectData Relational:ViewName: Relational:ViewSchema: EntityType: ComplexFormComponent Properties: Id (Guid) Required PK AfterSave:Throw ValueGenerated.OnAdd ComplexFormEntryId (Guid) Required FK Index ComplexFormHeadword (string) ComponentEntryId (Guid) Required FK Index ComponentHeadword (string) ComponentSenseId (Guid?) FK Index DeletedAt (DateTimeOffset?) SnapshotId (no field, Guid?) Shadow FK Index Version (string) Keys: Id PK Foreign keys: ComplexFormComponent {'ComplexFormEntryId'} -> Entry {'Id'} Required Cascade ToDependent: Components ComplexFormComponent {'ComponentEntryId'} -> Entry {'Id'} Required Cascade ToDependent: ComplexForms ComplexFormComponent {'ComponentSenseId'} -> Sense {'Id'} Cascade ComplexFormComponent {'SnapshotId'} -> ObjectSnapshot {'Id'} Unique SetNull Indexes: ComplexFormEntryId ComponentEntryId ComponentSenseId SnapshotId Unique Annotations: DiscriminatorProperty: Relational:FunctionName: Relational:Schema: Relational:SqlQuery: Relational:TableName: ComplexFormComponents Relational:ViewName: Relational:ViewSchema: EntityType: ComplexFormType Properties: Id (Guid) Required PK AfterSave:Throw ValueGenerated.OnAdd DeletedAt (DateTimeOffset?) Name (MultiString) Required Annotations: Relational:ColumnType: jsonb SnapshotId (no field, Guid?) Shadow FK Index Version (string) Keys: Id PK Foreign keys: ComplexFormType {'SnapshotId'} -> ObjectSnapshot {'Id'} Unique SetNull Indexes: SnapshotId Unique Annotations: DiscriminatorProperty: Relational:FunctionName: Relational:Schema: Relational:SqlQuery: Relational:TableName: ComplexFormType Relational:ViewName: Relational:ViewSchema: EntityType: Entry Properties: Id (Guid) Required PK AfterSave:Throw ValueGenerated.OnAdd CitationForm (MultiString) Required Annotations: Relational:ColumnType: jsonb ComplexFormTypes (IList<ComplexFormType>) Required Annotations: Relational:ColumnType: jsonb DeletedAt (DateTimeOffset?) LexemeForm (MultiString) Required Annotations: Relational:ColumnType: jsonb LiteralMeaning (MultiString) Required Annotations: Relational:ColumnType: jsonb Note (MultiString) Required Annotations: Relational:ColumnType: jsonb SnapshotId (no field, Guid?) Shadow FK Index Version (string) Navigations: ComplexForms (IList<ComplexFormComponent>) Collection ToDependent ComplexFormComponent Components (IList<ComplexFormComponent>) Collection ToDependent ComplexFormComponent Senses (IList<Sense>) Collection ToDependent Sense Keys: Id PK Foreign keys: Entry {'SnapshotId'} -> ObjectSnapshot {'Id'} Unique SetNull Indexes: SnapshotId Unique Annotations: DiscriminatorProperty: Relational:FunctionName: Relational:Schema: Relational:SqlQuery: Relational:TableName: Entry Relational:ViewName: Relational:ViewSchema: EntityType: Exam
FwLiteProjectSync.Tests.UpdateDiffTests.EntryDiffShouldUpdateAllFields: backend/FwLite/FwLiteProjectSync.Tests/UpdateDiffTests.cs#L25
Expected property before.Version to be "sky blue", but found <null>. With configuration: - Use declared types and members - Compare enums by value - Compare tuples by their properties - Compare anonymous types by their properties - Compare records by their members - Include non-browsable members - Exclude member Id - Exclude member DeletedAt - Exclude member Senses - Exclude member Components - Exclude member ComplexForms - Exclude member ComplexFormTypes - Match member by name (or throw) - Be strict about the order of items in byte arrays - Without automatic conversion.
FwLiteProjectSync.Tests.SyncTests.SyncFailsWithMismatchedProjectIds
System.IO.IOException : The process cannot access the file 'D:\a\languageforge-lexbox\languageforge-lexbox\backend\FwLite\FwLiteProjectSync.Tests\bin\Release\net8.0\sena-3\LcmCrdt\sena-3.sqlite' because it is being used by another process.
FwLiteProjectSync.Tests.SyncTests.CreatingAnEntryInEachProjectSyncsAcrossBoth
System.IO.IOException : The process cannot access the file 'D:\a\languageforge-lexbox\languageforge-lexbox\backend\FwLite\FwLiteProjectSync.Tests\bin\Release\net8.0\sena-3\LcmCrdt\sena-3.sqlite' because it is being used by another process.
FwLiteProjectSync.Tests.SyncTests.FirstSyncJustDoesAnImport
System.IO.IOException : The process cannot access the file 'D:\a\languageforge-lexbox\languageforge-lexbox\backend\FwLite\FwLiteProjectSync.Tests\bin\Release\net8.0\sena-3\LcmCrdt\sena-3.sqlite' because it is being used by another process.
FwLiteProjectSync.Tests.SyncTests.UpdatingAnEntryInEachProjectSyncsAcrossBoth
System.IO.IOException : The process cannot access the file 'D:\a\languageforge-lexbox\languageforge-lexbox\backend\FwLite\FwLiteProjectSync.Tests\bin\Release\net8.0\sena-3\LcmCrdt\sena-3.sqlite' because it is being used by another process.
FwLiteProjectSync.Tests.SyncTests.AddingASenseToAnEntryInEachProjectSyncsAcrossBoth
System.IO.IOException : The process cannot access the file 'D:\a\languageforge-lexbox\languageforge-lexbox\backend\FwLite\FwLiteProjectSync.Tests\bin\Release\net8.0\sena-3\LcmCrdt\sena-3.sqlite' because it is being used by another process.
Build FW Lite and run tests: backend/FwLite/FwDataMiniLcmBridge.Tests/Fixtures/MockFwProjectList.cs#L6
Parameter 'IOptions<FwDataBridgeConfig> config' is captured into the state of the enclosing type and its value is also passed to the base constructor. The value might be captured by the base class as well.
Build FW Lite and run tests: backend/FwLite/MiniLcm/InMemoryApi.cs#L214
This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread.
Build FW Lite and run tests: backend/FwLite/MiniLcm/InMemoryApi.cs#L219
This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread.
Build FW Lite and run tests: backend/FwLite/MiniLcm/InMemoryApi.cs#L251
This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread.
Build FW Lite and run tests: backend/FwLite/MiniLcm/InMemoryApi.cs#L270
This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread.
Build FW Lite and run tests: backend/FwLite/FwDataMiniLcmBridge/LcmUtils/LcmThreadedProgress.cs#L10
The event 'LcmThreadedProgress.Canceling' is never used
Build FW Lite and run tests: backend/FwLite/FwDataMiniLcmBridge/Api/UpdateProxy/UpdateSenseProxy.cs#L122
Observe the awaitable result of this method call by awaiting it, assigning to a variable, or passing it to another method (https://github.com/Microsoft/vs-threading/blob/main/doc/analyzers/VSTHRD110.md)
Build FW Lite and run tests: backend/FwLite/FwDataMiniLcmBridge/Api/UpdateProxy/UpdateEntryProxy.cs#L53
Observe the awaitable result of this method call by awaiting it, assigning to a variable, or passing it to another method (https://github.com/Microsoft/vs-threading/blob/main/doc/analyzers/VSTHRD110.md)
Build FW Lite and run tests: backend/FwLite/LcmCrdt/Changes/RemoveSemanticDomainChange.cs#L11
This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread.
Build FW Lite and run tests: backend/FwLite/FwLiteProjectSync/DryRunMiniLcmApi.cs#L30
The switch expression does not handle some values of its input type (it is not exhaustive) involving an unnamed enum value. For example, the pattern '(MiniLcm.Models.WritingSystemType)2' is not covered.
Build FW Lite and run tests: backend/FwLite/LocalWebApp/SyncService.cs#L14
Parameter 'factory' is unread.