Open-Systems-Pharmacology / InstallationValidator

Installation Validation Tool for the Open Systems Pharmacology Suite
Other
1 stars 2 forks source link

SimulationOutputComparer crashes #269

Closed Yuri05 closed 3 months ago

Yuri05 commented 1 year ago

Compare.zip When trying to compare batch run output between V11 and V12, simulation output comparer crashes (small example with 1 one simulation attached)

Starting output comparisons...
Comparing files 'Beagle_SingleORAL_Dissolved-Beagle_SingleORAL_Dissolved.json'...
oops...something went terribly wrong.
To best address the error, please enter an issue in our issue tracker:
1.Visit https://github.com/Open-Systems-Pharmacology/InstallationValidator/issues or click on the link below
2.Click on the New Issue button
3.Describe the steps you took prior to the problem emerging
4.Copy the information below by using the Copy to Clipboard button and paste it in the issue description
5.if possible, attach your project file to the issue (do not attach confidential information)
Note: A GitHub account is required to create an issue

Cannot deserialize the current JSON array (e.g. [1,2,3]) into type 'OSPSuite.Core.Batch.BatchValues' because the type requires a JSON object (e.g. {"name":"value"}) to deserialize correctly. To fix this error either change the JSON to a JSON object (e.g. {"name":"value"}) or change the deserialized type to an array or a type that implements a collection interface (e.g. ICollection, IList) like List that can be deserialized from a JSON array. JsonArrayAttribute can also be added to the type to force it to deserialize from a JSON array. Path 'Times', line 1, position 47. For more information or questions, please visit the Open Systems Pharmacology Forum (http://forum.open-systems-pharmacology.org). Stack trace: bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.EnsureArrayContract(JsonReader reader, Type objectType, JsonContract contract) bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, Object existingValue, String id) bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue) bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue(JsonProperty property, JsonConverter propertyConverter, JsonContainerContract containerContract, JsonProperty containerProperty, JsonReader reader, Object target) bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id) bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue) bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue) bei Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent) bei Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType) bei Newtonsoft.Json.JsonSerializer.Deserialize[T](JsonReader reader) bei InstallationValidator.Core.Services.BatchOutputLoader.LoadFrom(String fileName) in C:\SW-Dev\InstallationValidator\src\InstallationValidator.Core\Services\BatchOutputLoader.cs:Zeile 21. bei InstallationValidator.Core.Services.BatchOutputFileComparer.simulationExportFrom(String fileName, String folderPath) in C:\SW-Dev\InstallationValidator\src\InstallationValidator.Core\Services\BatchOutputFileComparer.cs:Zeile 92. bei InstallationValidator.Core.Services.BatchOutputFileComparer.<>c__DisplayClass3_0.b__0() in C:\SW-Dev\InstallationValidator\src\InstallationValidator.Core\Services\BatchOutputFileComparer.cs:Zeile 32. bei System.Threading.Tasks.Task`1.InnerInvoke() bei System.Threading.Tasks.Task.Execute() --- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde --- bei System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) bei System.Runtime.CompilerServices.TaskAwaiter`1.GetResult() bei InstallationValidator.Core.Services.BatchComparisonTask.d__6.MoveNext() in C:\SW-Dev\InstallationValidator\src\InstallationValidator.Core\Services\BatchComparisonTask.cs:Zeile 75. --- Ende der Stapelüberwachung vom vorhergehenden Ort, an dem die Ausnahme ausgelöst wurde --- bei System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) bei System.Runtime.CompilerServices.TaskAwaiter`1.GetResult() bei InstallationValidator.Core.Presentation.SimulationComparisonPresenter.d__10.MoveNext() in C:\SW-Dev\InstallationValidator\src\InstallationValidator.Core\Presentation\SimulationComparisonPresenter.cs:Zeile 69.
msevestre commented 3 months ago

hum ok, we need to actually support the old format for BatchValues. Did not think about it