feat(tests): Add unit test for LibParse, fix bug where on FromJson

ull would give an empty string instead.
This commit is contained in:
2024-03-18 18:22:00 +01:00
parent 7b264b778a
commit 05878421f3
203 changed files with 24990 additions and 239 deletions

View File

@@ -1,85 +0,0 @@
Private property of Exodus: 23004@Helix
jetbrains.exodus.io.LockingManager.lock(LockingManager.kt:88)
jetbrains.exodus.io.LockingManager.lock(LockingManager.kt:39)
jetbrains.exodus.io.FileDataWriter.lock(FileDataWriter.kt:70)
jetbrains.exodus.log.Log.tryLock(Log.kt:804)
jetbrains.exodus.log.Log.<init>(Log.kt:117)
jetbrains.exodus.env.Environments.newLogInstance(Environments.kt:117)
jetbrains.exodus.env.Environments.newLogInstance(Environments.kt:81)
jetbrains.exodus.env.Environments.newLogInstance(Environments.kt:77)
jetbrains.exodus.env.Environments$newInstance$4.invoke(Environments.kt:46)
jetbrains.exodus.env.Environments$newInstance$4.invoke(Environments.kt:46)
jetbrains.exodus.env.Environments.prepare(Environments.kt:120)
jetbrains.exodus.env.Environments.newInstance(Environments.kt:46)
kotlinx.dnq.store.container.EntityStoreHelperKt.createTransientEntityStore(EntityStoreHelper.kt:40)
kotlinx.dnq.store.container.EntityStoreHelperKt.createTransientEntityStore(EntityStoreHelper.kt:31)
kotlinx.dnq.store.container.EntityStoreHelperKt.createTransientEntityStore$default(EntityStoreHelper.kt:30)
com.github.copilot.chat.session.persistence.xodus.XdChatSessionPersistenceService.initStore(XdChatSessionPersistenceService.kt:115)
com.github.copilot.chat.session.persistence.xodus.XdChatSessionPersistenceService.<init>(XdChatSessionPersistenceService.kt:22)
com.github.copilot.chat.session.persistence.xodus.XdChatSessionPersistenceService.<init>(XdChatSessionPersistenceService.kt:15)
com.github.copilot.chat.session.persistence.ChatSessionPersistenceServiceKt.ChatSessionPersistenceService(ChatSessionPersistenceService.kt:43)
com.github.copilot.chat.session.persistence.ChatSessionPersistenceServiceKt.chatSessionsPersistenceService(ChatSessionPersistenceService.kt:53)
com.github.copilot.chat.session.ChatSessionManager.<init>(ChatSessionManager.kt:45)
com.github.copilot.chat.session.ChatSessionManager.<init>(ChatSessionManager.kt:25)
com.github.copilot.chat.window.CopilotChatToolWindow.onCopilotReady(CopilotChatToolWindow.kt:133)
com.github.copilot.chat.window.CopilotChatToolWindow.access$onCopilotReady(CopilotChatToolWindow.kt:40)
com.github.copilot.chat.window.CopilotChatToolWindow$initCopilotStatusListener$1.invoke(CopilotChatToolWindow.kt:118)
com.github.copilot.chat.window.CopilotChatToolWindow$initCopilotStatusListener$1.invoke(CopilotChatToolWindow.kt:115)
com.github.copilot.status.CopilotAuthStatusKt.subscribeToCopilotAuthStatus(CopilotAuthStatus.kt:27)
com.github.copilot.chat.window.CopilotChatToolWindow.initCopilotStatusListener(CopilotChatToolWindow.kt:115)
com.github.copilot.chat.window.CopilotChatToolWindow.<init>(CopilotChatToolWindow.kt:59)
com.github.copilot.chat.window.CopilotChatToolWindow.<init>(CopilotChatToolWindow.kt:40)
com.github.copilot.chat.window.CopilotChatToolWindowFactory.init(CopilotChatToolWindowFactory.kt:18)
com.intellij.openapi.wm.impl.ToolWindowManagerImpl.registerToolWindow$intellij_platform_ide_impl(ToolWindowManagerImpl.kt:1123)
com.intellij.toolWindow.ToolWindowSetInitializerKt.registerToolWindows(ToolWindowSetInitializer.kt:223)
com.intellij.toolWindow.ToolWindowSetInitializerKt.access$registerToolWindows(ToolWindowSetInitializer.kt:1)
com.intellij.toolWindow.ToolWindowSetInitializer$createAndLayoutToolWindows$entries$1$1.invokeSuspend(ToolWindowSetInitializer.kt:141)
com.intellij.toolWindow.ToolWindowSetInitializer$createAndLayoutToolWindows$entries$1$1.invoke(ToolWindowSetInitializer.kt)
com.intellij.toolWindow.ToolWindowSetInitializer$createAndLayoutToolWindows$entries$1$1.invoke(ToolWindowSetInitializer.kt)
kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:78)
kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:167)
kotlinx.coroutines.BuildersKt.withContext(Unknown Source)
com.intellij.platform.diagnostic.telemetry.impl.TracerKt.span(tracer.kt:53)
com.intellij.platform.diagnostic.telemetry.impl.TracerKt.span$default(tracer.kt:49)
com.intellij.toolWindow.ToolWindowSetInitializer$createAndLayoutToolWindows$entries$1.invokeSuspend(ToolWindowSetInitializer.kt:138)
kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:108)
com.intellij.openapi.application.TransactionGuardImpl$1.run(TransactionGuardImpl.java:194)
com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:843)
com.intellij.openapi.application.impl.ApplicationImpl$4.run(ApplicationImpl.java:463)
com.intellij.openapi.application.impl.RwLockHolder.runWithEnabledImplicitRead(RwLockHolder.kt:75)
com.intellij.openapi.application.impl.RwLockHolder.runWithImplicitRead(RwLockHolder.kt:67)
com.intellij.openapi.application.impl.ApplicationImpl.runWithImplicitRead(ApplicationImpl.java:1436)
com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:82)
com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:124)
com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:44)
java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:792)
java.desktop/java.awt.EventQueue$3.run(EventQueue.java:739)
java.desktop/java.awt.EventQueue$3.run(EventQueue.java:733)
java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:761)
com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:695)
com.intellij.ide.IdeEventQueue._dispatchEvent$lambda$12(IdeEventQueue.kt:589)
com.intellij.openapi.application.impl.RwLockHolder.runWithoutImplicitRead(RwLockHolder.kt:44)
com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:589)
com.intellij.ide.IdeEventQueue.access$_dispatchEvent(IdeEventQueue.kt:72)
com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:355)
com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:354)
com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:793)
com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:354)
com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:349)
com.intellij.ide.IdeEventQueueKt.performActivity$lambda$1(IdeEventQueue.kt:1014)
com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:106)
com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:1014)
com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$7(IdeEventQueue.kt:349)
com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:848)
com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:391)
java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:207)
java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:92)

View File

@@ -1,93 +0,0 @@
Private property of Exodus: 11684@Helix
jetbrains.exodus.io.LockingManager.lock(LockingManager.kt:88)
jetbrains.exodus.io.LockingManager.lock(LockingManager.kt:39)
jetbrains.exodus.io.FileDataWriter.lock(FileDataWriter.kt:70)
jetbrains.exodus.log.Log.tryLock(Log.kt:804)
jetbrains.exodus.log.Log.<init>(Log.kt:117)
jetbrains.exodus.env.Environments.newLogInstance(Environments.kt:117)
jetbrains.exodus.env.Environments.newLogInstance(Environments.kt:81)
jetbrains.exodus.env.Environments.newLogInstance(Environments.kt:77)
jetbrains.exodus.env.Environments$newInstance$4.invoke(Environments.kt:46)
jetbrains.exodus.env.Environments$newInstance$4.invoke(Environments.kt:46)
jetbrains.exodus.env.Environments.prepare(Environments.kt:120)
jetbrains.exodus.env.Environments.newInstance(Environments.kt:46)
kotlinx.dnq.store.container.EntityStoreHelperKt.createTransientEntityStore(EntityStoreHelper.kt:40)
kotlinx.dnq.store.container.EntityStoreHelperKt.createTransientEntityStore(EntityStoreHelper.kt:31)
kotlinx.dnq.store.container.EntityStoreHelperKt.createTransientEntityStore$default(EntityStoreHelper.kt:30)
com.github.copilot.chat.session.persistence.xodus.XdChatSessionPersistenceService.initStore(XdChatSessionPersistenceService.kt:115)
com.github.copilot.chat.session.persistence.xodus.XdChatSessionPersistenceService.<init>(XdChatSessionPersistenceService.kt:22)
com.github.copilot.chat.session.persistence.xodus.XdChatSessionPersistenceService.<init>(XdChatSessionPersistenceService.kt:15)
com.github.copilot.chat.session.persistence.ChatSessionPersistenceServiceKt.ChatSessionPersistenceService(ChatSessionPersistenceService.kt:43)
com.github.copilot.chat.session.persistence.ChatSessionPersistenceServiceKt.chatSessionsPersistenceService(ChatSessionPersistenceService.kt:53)
com.github.copilot.chat.session.ChatSessionManager.<init>(ChatSessionManager.kt:45)
com.github.copilot.chat.session.ChatSessionManager.<init>(ChatSessionManager.kt:25)
com.github.copilot.chat.window.CopilotChatToolWindow.onCopilotReady(CopilotChatToolWindow.kt:133)
com.github.copilot.chat.window.CopilotChatToolWindow.access$onCopilotReady(CopilotChatToolWindow.kt:40)
com.github.copilot.chat.window.CopilotChatToolWindow$initCopilotStatusListener$1.invoke(CopilotChatToolWindow.kt:118)
com.github.copilot.chat.window.CopilotChatToolWindow$initCopilotStatusListener$1.invoke(CopilotChatToolWindow.kt:115)
com.github.copilot.status.CopilotAuthStatusKt.subscribeToCopilotAuthStatus$lambda$0(CopilotAuthStatus.kt:44)
com.intellij.util.messages.impl.MessageBusImplKt.invokeMethod(MessageBusImpl.kt:700)
com.intellij.util.messages.impl.MessageBusImplKt.invokeListener(MessageBusImpl.kt:660)
com.intellij.util.messages.impl.MessageBusImplKt.deliverMessage(MessageBusImpl.kt:423)
com.intellij.util.messages.impl.MessageBusImplKt.pumpWaiting(MessageBusImpl.kt:402)
com.intellij.util.messages.impl.MessageBusImplKt.access$pumpWaiting(MessageBusImpl.kt:1)
com.intellij.util.messages.impl.MessagePublisher.invoke(MessageBusImpl.kt:461)
jdk.proxy4/jdk.proxy4.$Proxy140.onCopilotStatus(Unknown Source)
com.github.copilot.status.CopilotStatusService.notifyApplication(CopilotStatusService.java:76)
com.github.copilot.status.CopilotStatusService.notifyApplication(CopilotStatusService.java:64)
com.github.copilot.lang.agent.AgentGitHubService.loginInteractive(AgentGitHubService.java:152)
com.github.copilot.onboarding.pages.WelcomePage$updateContent$2$2.hyperlinkUpdate(WelcomePage.kt:50)
java.desktop/javax.swing.JEditorPane.fireHyperlinkUpdate(JEditorPane.java:401)
java.desktop/javax.swing.text.html.HTMLEditorKit$LinkController.activateLink(HTMLEditorKit.java:906)
java.desktop/javax.swing.text.html.HTMLEditorKit$LinkController.mouseClicked(HTMLEditorKit.java:702)
java.desktop/java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:278)
java.desktop/java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:277)
java.desktop/java.awt.Component.processMouseEvent(Component.java:6660)
java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3385)
java.desktop/java.awt.Component.processEvent(Component.java:6422)
java.desktop/java.awt.Container.processEvent(Container.java:2266)
java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5027)
java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324)
java.desktop/java.awt.Component.dispatchEvent(Component.java:4855)
java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4969)
java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4592)
java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4524)
java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2310)
java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2809)
java.desktop/java.awt.Component.dispatchEvent(Component.java:4855)
java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:794)
java.desktop/java.awt.EventQueue$3.run(EventQueue.java:739)
java.desktop/java.awt.EventQueue$3.run(EventQueue.java:733)
java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:97)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:766)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:764)
java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:763)
com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:695)
com.intellij.ide.IdeEventQueue.dispatchMouseEvent(IdeEventQueue.kt:635)
com.intellij.ide.IdeEventQueue._dispatchEvent$lambda$10(IdeEventQueue.kt:580)
com.intellij.openapi.application.impl.RwLockHolder.runWithEnabledImplicitRead(RwLockHolder.kt:75)
com.intellij.openapi.application.impl.RwLockHolder.runWithImplicitRead(RwLockHolder.kt:67)
com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:580)
com.intellij.ide.IdeEventQueue.access$_dispatchEvent(IdeEventQueue.kt:72)
com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:355)
com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:354)
com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:793)
com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:354)
com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:349)
com.intellij.ide.IdeEventQueueKt.performActivity$lambda$1(IdeEventQueue.kt:1014)
com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:114)
com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:1014)
com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$7(IdeEventQueue.kt:349)
com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:848)
com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:391)
java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:207)
java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:92)

View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="DiscordProjectSettings">
<option name="show" value="ASK" />
<option name="show" value="PROJECT_FILES" />
<option name="description" value="" />
<option name="theme" value="material" />
<option name="button1Title" value="" />

View File

@@ -3,8 +3,187 @@
<component name="AutoGeneratedRunConfigurationManager">
<projectFile>Console/Console.csproj</projectFile>
</component>
<component name="AutoImportSettings">
<option name="autoReloadType" value="SELECTIVE" />
</component>
<component name="ChangeListManager">
<list default="true" id="79f184c3-e88e-45be-9116-5fa813562754" name="Changes" comment="">
<change afterPath="$PROJECT_DIR$/.idea/.idea.REST API/.idea/copilot/chatSessions/00000000000-Helix-2.xd" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/.idea.REST API/.idea/copilot/chatSessions/xd-Helix-2.lck" afterDir="false" />
<change afterPath="$PROJECT_DIR$/LibParse/bin/Debug/net8.0/LibParse-Helix.pdb" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/GlobalUsings.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/LibParse.cs" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/Tests.csproj" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/CoverletSourceRootsMapping_Tests" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/LibParse-Helix.pdb" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/LibParse.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/LibParse.pdb" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/Microsoft.TestPlatform.CommunicationUtilities.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/Microsoft.TestPlatform.CoreUtilities.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/Microsoft.TestPlatform.CrossPlatEngine.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/Microsoft.TestPlatform.PlatformAbstractions.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/Microsoft.TestPlatform.Utilities.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/Microsoft.VisualStudio.CodeCoverage.Shim.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/Microsoft.VisualStudio.TestPlatform.Common.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/NUnit3.TestAdapter.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/NUnit3.TestAdapter.pdb" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/Newtonsoft.Json.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/NuGet.Frameworks.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/Tests-Helix.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/Tests-Helix.pdb" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/Tests.deps.json" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/Tests.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/Tests.pdb" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/Tests.runtimeconfig.json" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/cs/Microsoft.TestPlatform.CommunicationUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/cs/Microsoft.TestPlatform.CoreUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/cs/Microsoft.TestPlatform.CrossPlatEngine.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/cs/Microsoft.VisualStudio.TestPlatform.Common.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/cs/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/de/Microsoft.TestPlatform.CommunicationUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/de/Microsoft.TestPlatform.CoreUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/de/Microsoft.TestPlatform.CrossPlatEngine.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/de/Microsoft.VisualStudio.TestPlatform.Common.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/de/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/es/Microsoft.TestPlatform.CommunicationUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/es/Microsoft.TestPlatform.CoreUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/es/Microsoft.TestPlatform.CrossPlatEngine.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/es/Microsoft.VisualStudio.TestPlatform.Common.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/es/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/fr/Microsoft.TestPlatform.CommunicationUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/fr/Microsoft.TestPlatform.CoreUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/fr/Microsoft.TestPlatform.CrossPlatEngine.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/fr/Microsoft.VisualStudio.TestPlatform.Common.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/fr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/it/Microsoft.TestPlatform.CommunicationUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/it/Microsoft.TestPlatform.CoreUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/it/Microsoft.TestPlatform.CrossPlatEngine.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/it/Microsoft.VisualStudio.TestPlatform.Common.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/it/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/ja/Microsoft.TestPlatform.CommunicationUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/ja/Microsoft.TestPlatform.CoreUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/ja/Microsoft.TestPlatform.CrossPlatEngine.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/ja/Microsoft.VisualStudio.TestPlatform.Common.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/ja/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/ko/Microsoft.TestPlatform.CommunicationUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/ko/Microsoft.TestPlatform.CoreUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/ko/Microsoft.TestPlatform.CrossPlatEngine.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/ko/Microsoft.VisualStudio.TestPlatform.Common.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/ko/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/nunit.engine.api.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/nunit.engine.core.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/nunit.engine.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/nunit.framework.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/pl/Microsoft.TestPlatform.CommunicationUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/pl/Microsoft.TestPlatform.CoreUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/pl/Microsoft.TestPlatform.CrossPlatEngine.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/pl/Microsoft.VisualStudio.TestPlatform.Common.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/pl/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/pt-BR/Microsoft.TestPlatform.CommunicationUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/pt-BR/Microsoft.TestPlatform.CoreUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/pt-BR/Microsoft.TestPlatform.CrossPlatEngine.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/pt-BR/Microsoft.VisualStudio.TestPlatform.Common.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/pt-BR/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/ru/Microsoft.TestPlatform.CommunicationUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/ru/Microsoft.TestPlatform.CoreUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/ru/Microsoft.TestPlatform.CrossPlatEngine.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/ru/Microsoft.VisualStudio.TestPlatform.Common.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/ru/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/testcentric.engine.metadata.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/testhost.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/testhost.exe" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/tr/Microsoft.TestPlatform.CommunicationUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/tr/Microsoft.TestPlatform.CoreUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/tr/Microsoft.TestPlatform.CrossPlatEngine.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/tr/Microsoft.VisualStudio.TestPlatform.Common.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/tr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/zh-Hans/Microsoft.TestPlatform.CommunicationUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/zh-Hans/Microsoft.TestPlatform.CoreUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/zh-Hans/Microsoft.TestPlatform.CrossPlatEngine.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.Common.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/zh-Hant/Microsoft.TestPlatform.CommunicationUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/zh-Hant/Microsoft.TestPlatform.CoreUtilities.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/zh-Hant/Microsoft.TestPlatform.CrossPlatEngine.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.Common.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/Tests/bin/Debug/net8.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/.signature.p7s" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6.nupkg" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/ThirdPartyNotices.txt" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/1028/googletest.propertiesui.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/1029/googletest.propertiesui.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/1031/googletest.propertiesui.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/1033/googletest.propertiesui.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/1034/googletest.propertiesui.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/1036/googletest.propertiesui.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/1040/googletest.propertiesui.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/1041/googletest.propertiesui.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/1042/googletest.propertiesui.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/1045/googletest.propertiesui.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/1046/googletest.propertiesui.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/1049/googletest.propertiesui.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/1055/googletest.propertiesui.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/2052/googletest.propertiesui.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.targets" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/gtest-death-test.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/gtest-message.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/gtest-param-test.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/gtest-param-test.h.pump" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/gtest-printers.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/gtest-spi.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/gtest-test-part.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/gtest-typed-test.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/gtest.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/gtest_pred_impl.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/gtest_prod.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/internal/custom/README.md" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/internal/custom/gtest-port.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/internal/custom/gtest-printers.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/internal/custom/gtest.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/internal/gtest-death-test-internal.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/internal/gtest-filepath.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/internal/gtest-internal.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/internal/gtest-linked_ptr.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/internal/gtest-param-util-generated.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/internal/gtest-param-util-generated.h.pump" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/internal/gtest-param-util.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/internal/gtest-port-arch.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/internal/gtest-port.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/internal/gtest-string.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/internal/gtest-tuple.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/internal/gtest-tuple.h.pump" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/internal/gtest-type-util.h" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/build/native/include/gtest/internal/gtest-type-util.h.pump" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/arm64/Debug/gtest.pdb" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/arm64/Debug/gtest_main.pdb" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/arm64/Debug/gtest_maind.lib" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/arm64/Debug/gtestd.lib" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/arm64/Release/gtest.lib" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/arm64/Release/gtest.pdb" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/arm64/Release/gtest_main.lib" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/arm64/Release/gtest_main.pdb" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/x64/Debug/gtest.pdb" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/x64/Debug/gtest_main.pdb" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/x64/Debug/gtest_maind.lib" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/x64/Debug/gtestd.lib" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/x64/Release/gtest.lib" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/x64/Release/gtest.pdb" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/x64/Release/gtest_main.lib" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/x64/Release/gtest_main.pdb" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/x86/Debug/gtest.pdb" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/x86/Debug/gtest_main.pdb" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/x86/Debug/gtest_maind.lib" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/x86/Debug/gtestd.lib" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/x86/Release/gtest.lib" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/x86/Release/gtest.pdb" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/x86/Release/gtest_main.lib" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/lib/native/v140/windesktop/msvcstl/static/rt-dyn/x86/Release/gtest_main.pdb" afterDir="false" />
<change afterPath="$PROJECT_DIR$/packages/Microsoft.googletest.v140.windesktop.msvcstl.static.rt-dyn.1.8.1.6/license (MIT).txt" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.idea.REST API/.idea/copilot/chatSessions/00000000000.xd" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.REST API/.idea/copilot/chatSessions/00000000000.xd" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.idea.REST API/.idea/copilot/chatSessions/xd.lck" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.REST API/.idea/copilot/chatSessions/xd.lck" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.idea.REST API/.idea/discord.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.REST API/.idea/discord.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/.idea.REST API/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.REST API/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Console/bin/Debug/net8.0/Console.dll" beforeDir="false" afterPath="$PROJECT_DIR$/Console/bin/Debug/net8.0/Console.dll" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Console/bin/Debug/net8.0/Console.exe" beforeDir="false" afterPath="$PROJECT_DIR$/Console/bin/Debug/net8.0/Console.exe" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Console/bin/Debug/net8.0/Console.pdb" beforeDir="false" afterPath="$PROJECT_DIR$/Console/bin/Debug/net8.0/Console.pdb" afterDir="false" />
@@ -16,12 +195,16 @@
<change beforePath="$PROJECT_DIR$/Console/bin/Debug/net8.0/LibServer.pdb" beforeDir="false" afterPath="$PROJECT_DIR$/Console/bin/Debug/net8.0/LibServer.pdb" afterDir="false" />
<change beforePath="$PROJECT_DIR$/LibHttp/bin/Debug/net8.0/LibHttp.dll" beforeDir="false" afterPath="$PROJECT_DIR$/LibHttp/bin/Debug/net8.0/LibHttp.dll" afterDir="false" />
<change beforePath="$PROJECT_DIR$/LibHttp/bin/Debug/net8.0/LibHttp.pdb" beforeDir="false" afterPath="$PROJECT_DIR$/LibHttp/bin/Debug/net8.0/LibHttp.pdb" afterDir="false" />
<change beforePath="$PROJECT_DIR$/LibParse/Json/JsonReader.cs" beforeDir="false" afterPath="$PROJECT_DIR$/LibParse/Json/JsonReader.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/LibParse/Json/JsonWriter.cs" beforeDir="false" afterPath="$PROJECT_DIR$/LibParse/Json/JsonWriter.cs" afterDir="false" />
<change beforePath="$PROJECT_DIR$/LibParse/bin/Debug/net8.0/LibParse.dll" beforeDir="false" afterPath="$PROJECT_DIR$/LibParse/bin/Debug/net8.0/LibParse.dll" afterDir="false" />
<change beforePath="$PROJECT_DIR$/LibParse/bin/Debug/net8.0/LibParse.pdb" beforeDir="false" afterPath="$PROJECT_DIR$/LibParse/bin/Debug/net8.0/LibParse.pdb" afterDir="false" />
<change beforePath="$PROJECT_DIR$/LibServer/bin/Debug/net8.0/LibHttp.dll" beforeDir="false" afterPath="$PROJECT_DIR$/LibServer/bin/Debug/net8.0/LibHttp.dll" afterDir="false" />
<change beforePath="$PROJECT_DIR$/LibServer/bin/Debug/net8.0/LibHttp.pdb" beforeDir="false" afterPath="$PROJECT_DIR$/LibServer/bin/Debug/net8.0/LibHttp.pdb" afterDir="false" />
<change beforePath="$PROJECT_DIR$/LibServer/bin/Debug/net8.0/LibServer.dll" beforeDir="false" afterPath="$PROJECT_DIR$/LibServer/bin/Debug/net8.0/LibServer.dll" afterDir="false" />
<change beforePath="$PROJECT_DIR$/LibServer/bin/Debug/net8.0/LibServer.pdb" beforeDir="false" afterPath="$PROJECT_DIR$/LibServer/bin/Debug/net8.0/LibServer.pdb" afterDir="false" />
<change beforePath="$PROJECT_DIR$/REST API.sln" beforeDir="false" afterPath="$PROJECT_DIR$/REST API.sln" afterDir="false" />
<change beforePath="$PROJECT_DIR$/REST API.sln.DotSettings.user" beforeDir="false" afterPath="$PROJECT_DIR$/REST API.sln.DotSettings.user" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@@ -41,22 +224,31 @@
</component>
<component name="PropertiesComponent">{
&quot;keyToString&quot;: {
&quot;.NET Project.Console.executor&quot;: &quot;Run&quot;,
&quot;RunOnceActivity.OpenProjectViewOnStart&quot;: &quot;true&quot;,
&quot;RunOnceActivity.ShowReadmeOnStart&quot;: &quot;true&quot;,
&quot;git-widget-placeholder&quot;: &quot;master&quot;,
&quot;ignore.virus.scanning.warn.message&quot;: &quot;true&quot;,
&quot;node.js.detected.package.eslint&quot;: &quot;true&quot;,
&quot;node.js.detected.package.tslint&quot;: &quot;true&quot;,
&quot;node.js.selected.package.eslint&quot;: &quot;(autodetect)&quot;,
&quot;node.js.selected.package.tslint&quot;: &quot;(autodetect)&quot;,
&quot;nodejs_package_manager_path&quot;: &quot;npm&quot;,
&quot;vue.rearranger.settings.migration&quot;: &quot;true&quot;
},
&quot;keyToStringList&quot;: {
&quot;rider.external.source.directories&quot;: [
&quot;C:\\Users\\wesse\\AppData\\Roaming\\JetBrains\\Rider2023.3\\resharper-host\\DecompilerCache&quot;,
&quot;C:\\Users\\wesse\\AppData\\Roaming\\JetBrains\\Rider2023.3\\resharper-host\\SourcesCache&quot;,
&quot;C:\\Users\\wesse\\AppData\\Local\\Symbols\\src&quot;
]
}
}</component>
<component name="RunManager">
<component name="RunManager" selected=".NET Project.Console">
<configuration name="Console" type="DotNetProject" factoryName=".NET Project">
<option name="EXE_PATH" value="" />
<option name="EXE_PATH" value="$PROJECT_DIR$/Console/bin/Debug/net8.0/Console.exe" />
<option name="PROGRAM_PARAMETERS" value="" />
<option name="WORKING_DIRECTORY" value="" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$/Console/bin/Debug/net8.0" />
<option name="PASS_PARENT_ENVS" value="1" />
<option name="USE_EXTERNAL_CONSOLE" value="0" />
<option name="USE_MONO" value="0" />
@@ -66,7 +258,7 @@
<option name="PROJECT_ARGUMENTS_TRACKING" value="1" />
<option name="PROJECT_WORKING_DIRECTORY_TRACKING" value="1" />
<option name="PROJECT_KIND" value="DotNetCore" />
<option name="PROJECT_TFM" value="" />
<option name="PROJECT_TFM" value="net8.0" />
<method v="2">
<option name="Build" />
</method>
@@ -81,6 +273,9 @@
<option name="presentableId" value="Default" />
<updated>1710707892900</updated>
<workItem from="1710707894099" duration="317000" />
<workItem from="1710757465555" duration="162000" />
<workItem from="1710757652523" duration="455000" />
<workItem from="1710782428120" duration="45000" />
</task>
<servers />
</component>

View File

@@ -1,15 +0,0 @@
# Default ignored files
/shelf/
/workspace.xml
# Rider ignored files
/.idea.Server.iml
/modules.xml
/contentModel.xml
/projectSettingsUpdater.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml
# GitHub Copilot persisted chat sessions
/copilot/chatSessions

View File

@@ -1,12 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="DiscordProjectSettings">
<option name="show" value="PROJECT_FILES" />
<option name="description" value="" />
<option name="theme" value="material" />
<option name="button1Title" value="" />
<option name="button1Url" value="" />
<option name="button2Title" value="" />
<option name="button2Url" value="" />
</component>
</project>

View File

@@ -1,11 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg id="Laag_1" data-name="Laag 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 335.1 198.19">
<defs>
<style>
.cls-1 {
fill: #3c3c3b;
}
</style>
</defs>
<polygon class="cls-1" points="98.06 0 129.42 46.97 131.35 46.97 161.81 0 172.77 0 204 46.97 205.16 46.97 224.65 18.37 237.16 0 298.06 0 205.29 141.94 204.13 141.94 168.13 86.84 166.95 87.1 131.1 141.94 129.94 141.94 71.1 52 58.97 52 129.81 159.87 130.97 159.87 166.95 104.9 168 105.03 204 159.87 205.16 159.87 311.1 0 335.1 0 205.16 198.19 204 198.19 167.42 142.58 130.97 198.19 129.81 198.19 20.52 31.61 82.19 31.61 129.81 104.13 130.84 104.13 166.95 48.9 168.13 48.9 203.87 103.87 205.03 103.87 259.23 21.03 246.97 21.03 205.16 84.77 204 84.77 168.13 29.68 166.95 29.68 130.97 84.9 129.94 84.77 87.74 20.9 13.16 20.9 0 0 98.06 0"/>
</svg>

Before

Width:  |  Height:  |  Size: 871 B

View File

@@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="UserContentModel">
<attachedFolders />
<explicitIncludes />
<explicitExcludes />
</component>
</project>

View File

@@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$/../../.." vcs="Git" />
</component>
</project>

View File

@@ -312,18 +312,20 @@ public static class JsonReader {
/// <returns>The parsed anonymous value.</returns>
private static object? ParseAnonymousValue(string json) {
if (json.Length == 0) return null;
if (json == "null") return null;
if (json[0] == '{' && json[^1] == '}') {
var elems = Split(json);
if (elems.Count % 2 != 0) return null;
var dict = new Dictionary<string, object>(elems.Count / 2);
for (var i = 0; i < elems.Count; i += 2)
dict[elems[i].Substring(1, elems[i].Length - 2)] = ParseAnonymousValue(elems[i + 1]) ?? string.Empty;
dict[elems[i].Substring(1, elems[i].Length - 2)] = ParseAnonymousValue(elems[i + 1]);
return dict;
}
if (json[0] == '[' && json[^1] == ']') {
var items = Split(json);
var finalList = new List<object>(items.Count);
foreach (var item in items) finalList.Add(ParseAnonymousValue(item) ?? string.Empty);
foreach (var item in items) finalList.Add(ParseAnonymousValue(item));
return finalList;
}
if (json[0] == '"' && json[^1] == '"') {

View File

@@ -36,8 +36,13 @@ public static class JsonWriter {
/// </summary>
/// <param name="writer">The `TextWriter` to write the variable into</param>
/// <param name="item">The item to cast into `writer`</param>
private static void AppendValue(TextWriter writer, object item) {
private static void AppendValue(TextWriter writer, object? item) {
// Get the type of `item`. This is used to determine how to append the value to the writer.
if (item == null) {
writer.Write("null");
return;
}
var type = item.GetType();
switch (Type.GetTypeCode(type)) {
case TypeCode.String:

View File

@@ -11,6 +11,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LibServer", "LibServer\LibS
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LibParse", "LibParse\LibParse.csproj", "{07747992-18E2-4532-9F91-C6ECA99D55C4}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tests", "Tests\Tests.csproj", "{56E0FEEA-8155-4979-8E90-EF2F3DA4B9E4}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -33,6 +35,10 @@ Global
{07747992-18E2-4532-9F91-C6ECA99D55C4}.Debug|Any CPU.Build.0 = Debug|Any CPU
{07747992-18E2-4532-9F91-C6ECA99D55C4}.Release|Any CPU.ActiveCfg = Release|Any CPU
{07747992-18E2-4532-9F91-C6ECA99D55C4}.Release|Any CPU.Build.0 = Release|Any CPU
{56E0FEEA-8155-4979-8E90-EF2F3DA4B9E4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{56E0FEEA-8155-4979-8E90-EF2F3DA4B9E4}.Debug|Any CPU.Build.0 = Debug|Any CPU
{56E0FEEA-8155-4979-8E90-EF2F3DA4B9E4}.Release|Any CPU.ActiveCfg = Release|Any CPU
{56E0FEEA-8155-4979-8E90-EF2F3DA4B9E4}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

View File

@@ -1,2 +1,5 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:String x:Key="/Default/CodeInspection/PencilsConfiguration/ActualSeverity/@EntryValue">INFO</s:String></wpf:ResourceDictionary>
<s:String x:Key="/Default/CodeInspection/PencilsConfiguration/ActualSeverity/@EntryValue">INFO</s:String>
<s:String x:Key="/Default/Environment/UnitTesting/UnitTestSessionStore/Sessions/=d452b4e4_002Daa15_002D4fa9_002D847f_002D33d4d7fab23d/@EntryIndexedValue">&lt;SessionState ContinuousTestingMode="0" IsActive="True" Name="ParseJsonToAnonymousObject" xmlns="urn:schemas-jetbrains-com:jetbrains-ut-session"&gt;&#xD;
&lt;ProjectFile&gt;56E0FEEA-8155-4979-8E90-EF2F3DA4B9E4/f:LibParse.cs&lt;/ProjectFile&gt;&#xD;
&lt;/SessionState&gt;</s:String></wpf:ResourceDictionary>

View File

@@ -0,0 +1 @@
global using NUnit.Framework;

View File

@@ -0,0 +1,42 @@
using NUnit.Framework;
using LibParse.Json;
namespace Tests;
internal class JsonClass(string name, int age) {
public string Name => name;
public int Age => age;
private readonly string _result = $"{{\"Name\":\"{name}\",\"Age\":{age}}}";
public bool Validate(string json) {
return _result == json;
}
}
public class LibParseTests {
private static readonly string Name = "John";
private static readonly int Age = 30;
private static readonly string Json = $"{{\"name\":\"{Name}\",\"age\":{Age},\"car\":null}}";
private readonly JsonClass _obj = new (Name, Age);
[SetUp]
public void Setup() { }
[Test]
public void ParseToAnonymous() {
var obj = Json.FromJson<object>();
Assert.Multiple(() => {
Assert.That(Name, Is.EqualTo(((Dictionary<string,object>)obj!)["name"]));
Assert.That(Age, Is.EqualTo(((Dictionary<string,object>)obj)["age"]));
});
}
[Test]
public void ClassToJson() {
var json = _obj.ToJson();
Assert.That(_obj.Validate(json), Is.EqualTo(true));
}
}

View File

@@ -0,0 +1,24 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<IsPackable>false</IsPackable>
<IsTestProject>true</IsTestProject>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.6.0"/>
<PackageReference Include="NUnit" Version="3.13.3"/>
<PackageReference Include="NUnit3TestAdapter" Version="4.2.1"/>
<PackageReference Include="NUnit.Analyzers" Version="3.6.1"/>
<PackageReference Include="coverlet.collector" Version="6.0.0"/>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\LibParse\LibParse.csproj" />
</ItemGroup>
</Project>

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,430 @@
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v8.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v8.0": {
"Tests/1.0.0": {
"dependencies": {
"LibParse": "1.0.0",
"Microsoft.NET.Test.Sdk": "17.6.0",
"NUnit": "3.13.3",
"NUnit.Analyzers": "3.6.1",
"NUnit3TestAdapter": "4.2.1",
"coverlet.collector": "6.0.0"
},
"runtime": {
"Tests.dll": {}
}
},
"coverlet.collector/6.0.0": {},
"Microsoft.CodeCoverage/17.6.0": {
"runtime": {
"lib/netcoreapp3.1/Microsoft.VisualStudio.CodeCoverage.Shim.dll": {
"assemblyVersion": "15.0.0.0",
"fileVersion": "17.600.1123.17103"
}
}
},
"Microsoft.NET.Test.Sdk/17.6.0": {
"dependencies": {
"Microsoft.CodeCoverage": "17.6.0",
"Microsoft.TestPlatform.TestHost": "17.6.0"
}
},
"Microsoft.NETCore.Platforms/1.1.0": {},
"Microsoft.TestPlatform.ObjectModel/17.6.0": {
"dependencies": {
"NuGet.Frameworks": "5.11.0",
"System.Reflection.Metadata": "1.6.0"
},
"runtime": {
"lib/netcoreapp3.1/Microsoft.TestPlatform.CoreUtilities.dll": {
"assemblyVersion": "15.0.0.0",
"fileVersion": "15.0.0.0"
},
"lib/netcoreapp3.1/Microsoft.TestPlatform.PlatformAbstractions.dll": {
"assemblyVersion": "15.0.0.0",
"fileVersion": "15.0.0.0"
},
"lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll": {
"assemblyVersion": "15.0.0.0",
"fileVersion": "15.0.0.0"
}
},
"resources": {
"lib/netcoreapp3.1/cs/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
"locale": "cs"
},
"lib/netcoreapp3.1/cs/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
"locale": "cs"
},
"lib/netcoreapp3.1/de/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
"locale": "de"
},
"lib/netcoreapp3.1/de/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
"locale": "de"
},
"lib/netcoreapp3.1/es/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
"locale": "es"
},
"lib/netcoreapp3.1/es/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
"locale": "es"
},
"lib/netcoreapp3.1/fr/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
"locale": "fr"
},
"lib/netcoreapp3.1/fr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
"locale": "fr"
},
"lib/netcoreapp3.1/it/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
"locale": "it"
},
"lib/netcoreapp3.1/it/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
"locale": "it"
},
"lib/netcoreapp3.1/ja/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
"locale": "ja"
},
"lib/netcoreapp3.1/ja/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
"locale": "ja"
},
"lib/netcoreapp3.1/ko/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
"locale": "ko"
},
"lib/netcoreapp3.1/ko/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
"locale": "ko"
},
"lib/netcoreapp3.1/pl/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
"locale": "pl"
},
"lib/netcoreapp3.1/pl/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
"locale": "pl"
},
"lib/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
"locale": "pt-BR"
},
"lib/netcoreapp3.1/pt-BR/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
"locale": "pt-BR"
},
"lib/netcoreapp3.1/ru/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
"locale": "ru"
},
"lib/netcoreapp3.1/ru/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
"locale": "ru"
},
"lib/netcoreapp3.1/tr/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
"locale": "tr"
},
"lib/netcoreapp3.1/tr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
"locale": "tr"
},
"lib/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
"locale": "zh-Hans"
},
"lib/netcoreapp3.1/zh-Hans/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
"locale": "zh-Hans"
},
"lib/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
"locale": "zh-Hant"
},
"lib/netcoreapp3.1/zh-Hant/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
"locale": "zh-Hant"
}
}
},
"Microsoft.TestPlatform.TestHost/17.6.0": {
"dependencies": {
"Microsoft.TestPlatform.ObjectModel": "17.6.0",
"Newtonsoft.Json": "13.0.1"
},
"runtime": {
"lib/netcoreapp3.1/Microsoft.TestPlatform.CommunicationUtilities.dll": {
"assemblyVersion": "15.0.0.0",
"fileVersion": "15.0.0.0"
},
"lib/netcoreapp3.1/Microsoft.TestPlatform.CrossPlatEngine.dll": {
"assemblyVersion": "15.0.0.0",
"fileVersion": "15.0.0.0"
},
"lib/netcoreapp3.1/Microsoft.TestPlatform.Utilities.dll": {
"assemblyVersion": "15.0.0.0",
"fileVersion": "15.0.0.0"
},
"lib/netcoreapp3.1/Microsoft.VisualStudio.TestPlatform.Common.dll": {
"assemblyVersion": "15.0.0.0",
"fileVersion": "15.0.0.0"
},
"lib/netcoreapp3.1/testhost.dll": {
"assemblyVersion": "15.0.0.0",
"fileVersion": "15.0.0.0"
}
},
"resources": {
"lib/netcoreapp3.1/cs/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
"locale": "cs"
},
"lib/netcoreapp3.1/cs/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
"locale": "cs"
},
"lib/netcoreapp3.1/cs/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
"locale": "cs"
},
"lib/netcoreapp3.1/de/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
"locale": "de"
},
"lib/netcoreapp3.1/de/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
"locale": "de"
},
"lib/netcoreapp3.1/de/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
"locale": "de"
},
"lib/netcoreapp3.1/es/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
"locale": "es"
},
"lib/netcoreapp3.1/es/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
"locale": "es"
},
"lib/netcoreapp3.1/es/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
"locale": "es"
},
"lib/netcoreapp3.1/fr/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
"locale": "fr"
},
"lib/netcoreapp3.1/fr/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
"locale": "fr"
},
"lib/netcoreapp3.1/fr/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
"locale": "fr"
},
"lib/netcoreapp3.1/it/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
"locale": "it"
},
"lib/netcoreapp3.1/it/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
"locale": "it"
},
"lib/netcoreapp3.1/it/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
"locale": "it"
},
"lib/netcoreapp3.1/ja/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
"locale": "ja"
},
"lib/netcoreapp3.1/ja/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
"locale": "ja"
},
"lib/netcoreapp3.1/ja/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
"locale": "ja"
},
"lib/netcoreapp3.1/ko/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
"locale": "ko"
},
"lib/netcoreapp3.1/ko/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
"locale": "ko"
},
"lib/netcoreapp3.1/ko/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
"locale": "ko"
},
"lib/netcoreapp3.1/pl/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
"locale": "pl"
},
"lib/netcoreapp3.1/pl/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
"locale": "pl"
},
"lib/netcoreapp3.1/pl/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
"locale": "pl"
},
"lib/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
"locale": "pt-BR"
},
"lib/netcoreapp3.1/pt-BR/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
"locale": "pt-BR"
},
"lib/netcoreapp3.1/pt-BR/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
"locale": "pt-BR"
},
"lib/netcoreapp3.1/ru/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
"locale": "ru"
},
"lib/netcoreapp3.1/ru/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
"locale": "ru"
},
"lib/netcoreapp3.1/ru/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
"locale": "ru"
},
"lib/netcoreapp3.1/tr/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
"locale": "tr"
},
"lib/netcoreapp3.1/tr/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
"locale": "tr"
},
"lib/netcoreapp3.1/tr/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
"locale": "tr"
},
"lib/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
"locale": "zh-Hans"
},
"lib/netcoreapp3.1/zh-Hans/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
"locale": "zh-Hans"
},
"lib/netcoreapp3.1/zh-Hans/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
"locale": "zh-Hans"
},
"lib/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
"locale": "zh-Hant"
},
"lib/netcoreapp3.1/zh-Hant/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
"locale": "zh-Hant"
},
"lib/netcoreapp3.1/zh-Hant/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
"locale": "zh-Hant"
}
}
},
"NETStandard.Library/2.0.0": {
"dependencies": {
"Microsoft.NETCore.Platforms": "1.1.0"
}
},
"Newtonsoft.Json/13.0.1": {
"runtime": {
"lib/netstandard2.0/Newtonsoft.Json.dll": {
"assemblyVersion": "13.0.0.0",
"fileVersion": "13.0.1.25517"
}
}
},
"NuGet.Frameworks/5.11.0": {
"runtime": {
"lib/netstandard2.0/NuGet.Frameworks.dll": {
"assemblyVersion": "5.11.0.10",
"fileVersion": "5.11.0.10"
}
}
},
"NUnit/3.13.3": {
"dependencies": {
"NETStandard.Library": "2.0.0"
},
"runtime": {
"lib/netstandard2.0/nunit.framework.dll": {
"assemblyVersion": "3.13.3.0",
"fileVersion": "3.13.3.0"
}
}
},
"NUnit.Analyzers/3.6.1": {},
"NUnit3TestAdapter/4.2.1": {},
"System.Reflection.Metadata/1.6.0": {},
"LibParse/1.0.0": {
"runtime": {
"LibParse.dll": {}
}
}
}
},
"libraries": {
"Tests/1.0.0": {
"type": "project",
"serviceable": false,
"sha512": ""
},
"coverlet.collector/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-tW3lsNS+dAEII6YGUX/VMoJjBS1QvsxqJeqLaJXub08y1FSjasFPtQ4UBUsudE9PNrzLjooClMsPtY2cZLdXpQ==",
"path": "coverlet.collector/6.0.0",
"hashPath": "coverlet.collector.6.0.0.nupkg.sha512"
},
"Microsoft.CodeCoverage/17.6.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-5v2GwzpR7JEuQUzupjx3zLwn2FutADW/weLzLt726DR3WXxsM+ICPoJG6pxuKFsumtZp890UrVuudTUhsE8Qyg==",
"path": "microsoft.codecoverage/17.6.0",
"hashPath": "microsoft.codecoverage.17.6.0.nupkg.sha512"
},
"Microsoft.NET.Test.Sdk/17.6.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-tHyg4C6c89QvLv6Utz3xKlba4EeoyJyIz59Q1NrjRENV7gfGnSE6I+sYPIbVOzQttoo2zpHDgOK/p6Hw2OlD7A==",
"path": "microsoft.net.test.sdk/17.6.0",
"hashPath": "microsoft.net.test.sdk.17.6.0.nupkg.sha512"
},
"Microsoft.NETCore.Platforms/1.1.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-kz0PEW2lhqygehI/d6XsPCQzD7ff7gUJaVGPVETX611eadGsA3A877GdSlU0LRVMCTH/+P3o2iDTak+S08V2+A==",
"path": "microsoft.netcore.platforms/1.1.0",
"hashPath": "microsoft.netcore.platforms.1.1.0.nupkg.sha512"
},
"Microsoft.TestPlatform.ObjectModel/17.6.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-AA/rrf5zwC5/OBLEOajkhjbVTM3SvxRXy8kcQ8e4mJKojbyZvqqhpfNg362N9vXU94DLg9NUTFOAnoYVT0pTJw==",
"path": "microsoft.testplatform.objectmodel/17.6.0",
"hashPath": "microsoft.testplatform.objectmodel.17.6.0.nupkg.sha512"
},
"Microsoft.TestPlatform.TestHost/17.6.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-7YdgUcIeCPVKLC7n7LNKDiEHWc7z3brkkYPdUbDnFsvf6WvY9UfzS0VSUJ8P2NgN0CDSD223GCJFSjSBLZRqOQ==",
"path": "microsoft.testplatform.testhost/17.6.0",
"hashPath": "microsoft.testplatform.testhost.17.6.0.nupkg.sha512"
},
"NETStandard.Library/2.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-7jnbRU+L08FXKMxqUflxEXtVymWvNOrS8yHgu9s6EM8Anr6T/wIX4nZ08j/u3Asz+tCufp3YVwFSEvFTPYmBPA==",
"path": "netstandard.library/2.0.0",
"hashPath": "netstandard.library.2.0.0.nupkg.sha512"
},
"Newtonsoft.Json/13.0.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-ppPFpBcvxdsfUonNcvITKqLl3bqxWbDCZIzDWHzjpdAHRFfZe0Dw9HmA0+za13IdyrgJwpkDTDA9fHaxOrt20A==",
"path": "newtonsoft.json/13.0.1",
"hashPath": "newtonsoft.json.13.0.1.nupkg.sha512"
},
"NuGet.Frameworks/5.11.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-eaiXkUjC4NPcquGWzAGMXjuxvLwc6XGKMptSyOGQeT0X70BUZObuybJFZLA0OfTdueLd3US23NBPTBb6iF3V1Q==",
"path": "nuget.frameworks/5.11.0",
"hashPath": "nuget.frameworks.5.11.0.nupkg.sha512"
},
"NUnit/3.13.3": {
"type": "package",
"serviceable": true,
"sha512": "sha512-KNPDpls6EfHwC3+nnA67fh5wpxeLb3VLFAfLxrug6JMYDLHH6InaQIWR7Sc3y75d/9IKzMksH/gi08W7XWbmnQ==",
"path": "nunit/3.13.3",
"hashPath": "nunit.3.13.3.nupkg.sha512"
},
"NUnit.Analyzers/3.6.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-RKP9tpKfl3DmRgUDGgh3XM3XzeLMrCXXMZm6vm1nMsObZ6vtQL1L9NrK7+oZh1jWearvNsbMis2+AIOY3NFmow==",
"path": "nunit.analyzers/3.6.1",
"hashPath": "nunit.analyzers.3.6.1.nupkg.sha512"
},
"NUnit3TestAdapter/4.2.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-kgH8VKsrcZZgNGQXRpVCrM7TnNz9li3b/snH+YmnXUNqsaWa1Xw9EQWHpbzq4Li2FbTjTE/E5N5HdLNXzZ8BpQ==",
"path": "nunit3testadapter/4.2.1",
"hashPath": "nunit3testadapter.4.2.1.nupkg.sha512"
},
"System.Reflection.Metadata/1.6.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-COC1aiAJjCoA5GBF+QKL2uLqEBew4JsCkQmoHKbN3TlOZKa2fKLz5CpiRQKDz0RsAOEGsVKqOD5bomsXq/4STQ==",
"path": "system.reflection.metadata/1.6.0",
"hashPath": "system.reflection.metadata.1.6.0.nupkg.sha512"
},
"LibParse/1.0.0": {
"type": "project",
"serviceable": false,
"sha512": ""
}
}
}

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,12 @@
{
"runtimeOptions": {
"tfm": "net8.0",
"framework": {
"name": "Microsoft.NETCore.App",
"version": "8.0.0"
},
"configProperties": {
"System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
}
}
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More