diff --git a/src/Speckle.Sdk/ServiceRegistration.cs b/src/Speckle.Sdk/ServiceRegistration.cs index 259f733f..8f8066ae 100644 --- a/src/Speckle.Sdk/ServiceRegistration.cs +++ b/src/Speckle.Sdk/ServiceRegistration.cs @@ -1,9 +1,18 @@ using System.Reflection; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; +using Speckle.Sdk.Api; +using Speckle.Sdk.Credentials; using Speckle.Sdk.Dependencies; using Speckle.Sdk.Host; using Speckle.Sdk.Logging; +using Speckle.Sdk.Models.GraphTraversal; +using Speckle.Sdk.Serialisation.V2; +using Speckle.Sdk.Serialisation.V2.Receive; +using Speckle.Sdk.Serialisation.V2.Send; +using Speckle.Sdk.SQLite; +using Speckle.Sdk.Transports; +using Speckle.Sdk.Transports.ServerUtils; namespace Speckle.Sdk; @@ -70,18 +79,39 @@ public static class ServiceRegistration ); serviceCollection.TryAddSingleton(); serviceCollection.TryAddSingleton(); - serviceCollection.AddMatchingInterfacesAsTransient(Assembly.GetExecutingAssembly()); + serviceCollection.AddMatchingInterfacesAsTransient( + Assembly.GetExecutingAssembly(), + typeof(ServerTransport), + typeof(Account), + typeof(ServerApi), + typeof(SqLiteJsonCacheManager), + typeof(ServerObjectManager), + typeof(BaseSerializer), + typeof(SerializeProcess), + typeof(ObjectSaver), + typeof(ObjectSerializer), + typeof(ObjectDeserializer), + typeof(DeserializeProcess), + typeof(ObjectLoader), + typeof(TraversalRule), + typeof(Client) + ); serviceCollection.AddMatchingInterfacesAsTransient(typeof(GraphQLRetry).Assembly); return serviceCollection; } public static IServiceCollection AddMatchingInterfacesAsTransient( this IServiceCollection serviceCollection, - Assembly assembly + Assembly assembly, + params Type[] classesToIgnore ) { foreach (var type in assembly.ExportedTypes.Where(t => t.IsNonAbstractClass())) { + if (classesToIgnore.Contains(type)) + { + continue; + } foreach (var matchingInterface in type.FindMatchingInterface()) { serviceCollection.TryAddTransient(matchingInterface, type); diff --git a/tests/Speckle.Objects.Tests.Unit/packages.lock.json b/tests/Speckle.Objects.Tests.Unit/packages.lock.json index f86bb622..91b5fe24 100644 --- a/tests/Speckle.Objects.Tests.Unit/packages.lock.json +++ b/tests/Speckle.Objects.Tests.Unit/packages.lock.json @@ -325,20 +325,6 @@ "resolved": "2.0.3", "contentHash": "pot1I4YOxlWjIb5jmwvvQNbTrZ3lJQ+jUGkGjWE3hEFM0l5gOnBWS+H3qsex68s5cO52g+44vpGzhAt+42vwKg==" }, - "xunit.analyzers": { - "type": "Transitive", - "resolved": "1.18.0", - "contentHash": "OtFMHN8yqIcYP9wcVIgJrq01AfTxijjAqVDy/WeQVSyrDC1RzBWeQPztL49DN2syXRah8TYnfvk035s7L95EZQ==" - }, - "xunit.core": { - "type": "Transitive", - "resolved": "2.9.3", - "contentHash": "BiAEvqGvyme19wE0wTKdADH+NloYqikiU0mcnmiNyXaF9HyHmE6sr/3DC5vnBkgsWaE6yPyWszKSPSApWdRVeQ==", - "dependencies": { - "xunit.extensibility.core": "[2.9.3]", - "xunit.extensibility.execution": "[2.9.3]" - } - }, "xunit.extensibility.core": { "type": "Transitive", "resolved": "2.9.3", @@ -380,13 +366,10 @@ "speckle.sdk.testing": { "type": "Project", "dependencies": { - "Microsoft.NET.Test.Sdk": "[17.13.0, )", "Moq": "[4.20.72, )", "Speckle.Sdk": "[1.0.0, )", "Verify.Quibble": "[2.1.1, )", - "Verify.Xunit": "[29.2.0, )", - "xunit": "[2.9.3, )", - "xunit.runner.visualstudio": "[3.0.2, )" + "Verify.Xunit": "[29.2.0, )" } }, "GraphQL.Client": { @@ -480,17 +463,6 @@ "xunit.abstractions": "2.0.3", "xunit.extensibility.execution": "2.9.3" } - }, - "xunit": { - "type": "CentralTransitive", - "requested": "[2.9.3, )", - "resolved": "2.9.3", - "contentHash": "TlXQBinK35LpOPKHAqbLY4xlEen9TBafjs0V5KnA4wZsoQLQJiirCR4CbIXvOH8NzkW4YeJKP5P/Bnrodm0h9Q==", - "dependencies": { - "xunit.analyzers": "1.18.0", - "xunit.assert": "2.9.3", - "xunit.core": "[2.9.3]" - } } } } diff --git a/tests/Speckle.Sdk.Serialization.Tests/packages.lock.json b/tests/Speckle.Sdk.Serialization.Tests/packages.lock.json index 517cd334..5078dc23 100644 --- a/tests/Speckle.Sdk.Serialization.Tests/packages.lock.json +++ b/tests/Speckle.Sdk.Serialization.Tests/packages.lock.json @@ -370,20 +370,6 @@ "resolved": "2.0.3", "contentHash": "pot1I4YOxlWjIb5jmwvvQNbTrZ3lJQ+jUGkGjWE3hEFM0l5gOnBWS+H3qsex68s5cO52g+44vpGzhAt+42vwKg==" }, - "xunit.analyzers": { - "type": "Transitive", - "resolved": "1.18.0", - "contentHash": "OtFMHN8yqIcYP9wcVIgJrq01AfTxijjAqVDy/WeQVSyrDC1RzBWeQPztL49DN2syXRah8TYnfvk035s7L95EZQ==" - }, - "xunit.core": { - "type": "Transitive", - "resolved": "2.9.3", - "contentHash": "BiAEvqGvyme19wE0wTKdADH+NloYqikiU0mcnmiNyXaF9HyHmE6sr/3DC5vnBkgsWaE6yPyWszKSPSApWdRVeQ==", - "dependencies": { - "xunit.extensibility.core": "[2.9.3]", - "xunit.extensibility.execution": "[2.9.3]" - } - }, "xunit.extensibility.core": { "type": "Transitive", "resolved": "2.9.3", @@ -425,13 +411,10 @@ "speckle.sdk.testing": { "type": "Project", "dependencies": { - "Microsoft.NET.Test.Sdk": "[17.13.0, )", "Moq": "[4.20.72, )", "Speckle.Sdk": "[1.0.0, )", "Verify.Quibble": "[2.1.1, )", - "Verify.Xunit": "[29.2.0, )", - "xunit": "[2.9.3, )", - "xunit.runner.visualstudio": "[3.0.2, )" + "Verify.Xunit": "[29.2.0, )" } }, "GraphQL.Client": { @@ -516,17 +499,6 @@ "xunit.abstractions": "2.0.3", "xunit.extensibility.execution": "2.9.3" } - }, - "xunit": { - "type": "CentralTransitive", - "requested": "[2.9.3, )", - "resolved": "2.9.3", - "contentHash": "TlXQBinK35LpOPKHAqbLY4xlEen9TBafjs0V5KnA4wZsoQLQJiirCR4CbIXvOH8NzkW4YeJKP5P/Bnrodm0h9Q==", - "dependencies": { - "xunit.analyzers": "1.18.0", - "xunit.assert": "2.9.3", - "xunit.core": "[2.9.3]" - } } } } diff --git a/tests/Speckle.Sdk.Testing/Speckle.Sdk.Testing.csproj b/tests/Speckle.Sdk.Testing/Speckle.Sdk.Testing.csproj index 2238b7c0..31e3a487 100644 --- a/tests/Speckle.Sdk.Testing/Speckle.Sdk.Testing.csproj +++ b/tests/Speckle.Sdk.Testing/Speckle.Sdk.Testing.csproj @@ -6,12 +6,9 @@ - - - diff --git a/tests/Speckle.Sdk.Testing/packages.lock.json b/tests/Speckle.Sdk.Testing/packages.lock.json index 0b4d76b5..06bc10c4 100644 --- a/tests/Speckle.Sdk.Testing/packages.lock.json +++ b/tests/Speckle.Sdk.Testing/packages.lock.json @@ -2,16 +2,6 @@ "version": 2, "dependencies": { "net8.0": { - "Microsoft.NET.Test.Sdk": { - "type": "Direct", - "requested": "[17.13.0, )", - "resolved": "17.13.0", - "contentHash": "W19wCPizaIC9Zh47w8wWI/yxuqR7/dtABwOrc8r2jX/8mUNxM2vw4fXDh+DJTeogxV+KzKwg5jNNGQVwf3LXyA==", - "dependencies": { - "Microsoft.CodeCoverage": "17.13.0", - "Microsoft.TestPlatform.TestHost": "17.13.0" - } - }, "Microsoft.SourceLink.GitHub": { "type": "Direct", "requested": "[8.0.0, )", @@ -69,23 +59,6 @@ "xunit.extensibility.execution": "2.9.3" } }, - "xunit": { - "type": "Direct", - "requested": "[2.9.3, )", - "resolved": "2.9.3", - "contentHash": "TlXQBinK35LpOPKHAqbLY4xlEen9TBafjs0V5KnA4wZsoQLQJiirCR4CbIXvOH8NzkW4YeJKP5P/Bnrodm0h9Q==", - "dependencies": { - "xunit.analyzers": "1.18.0", - "xunit.assert": "2.9.3", - "xunit.core": "[2.9.3]" - } - }, - "xunit.runner.visualstudio": { - "type": "Direct", - "requested": "[3.0.2, )", - "resolved": "3.0.2", - "contentHash": "oXbusR6iPq0xlqoikjdLvzh+wQDkMv9If58myz9MEzldS4nIcp442Btgs2sWbYWV+caEluMe2pQCZ0hUZgPiow==" - }, "Argon": { "type": "Transitive", "resolved": "0.27.0", @@ -144,11 +117,6 @@ "resolved": "8.0.0", "contentHash": "bZKfSIKJRXLTuSzLudMFte/8CempWjVamNUR5eHJizsy+iuOuO/k2gnh7W0dHJmYY0tBf+gUErfluCv5mySAOQ==" }, - "Microsoft.CodeCoverage": { - "type": "Transitive", - "resolved": "17.13.0", - "contentHash": "9LIUy0y+DvUmEPtbRDw6Bay3rzwqFV8P4efTrK4CZhQle3M/QwLPjISghfcolmEGAPWxuJi6m98ZEfk4VR4Lfg==" - }, "Microsoft.Data.Sqlite.Core": { "type": "Transitive", "resolved": "7.0.5", @@ -210,28 +178,6 @@ "resolved": "8.0.0", "contentHash": "dk9JPxTCIevS75HyEQ0E4OVAFhB2N+V9ShCXf8Q6FkUQZDkgLI12y679Nym1YqsiSysuQskT7Z+6nUf3yab6Vw==" }, - "Microsoft.TestPlatform.ObjectModel": { - "type": "Transitive", - "resolved": "17.13.0", - "contentHash": "bt0E0Dx+iqW97o4A59RCmUmz/5NarJ7LRL+jXbSHod72ibL5XdNm1Ke+UO5tFhBG4VwHLcSjqq9BUSblGNWamw==", - "dependencies": { - "System.Reflection.Metadata": "1.6.0" - } - }, - "Microsoft.TestPlatform.TestHost": { - "type": "Transitive", - "resolved": "17.13.0", - "contentHash": "9GGw08Dc3AXspjekdyTdZ/wYWFlxbgcF0s7BKxzVX+hzAwpifDOdxM+ceVaaJSQOwqt3jtuNlHn3XTpKUS9x9Q==", - "dependencies": { - "Microsoft.TestPlatform.ObjectModel": "17.13.0", - "Newtonsoft.Json": "13.0.1" - } - }, - "Newtonsoft.Json": { - "type": "Transitive", - "resolved": "13.0.1", - "contentHash": "ppPFpBcvxdsfUonNcvITKqLl3bqxWbDCZIzDWHzjpdAHRFfZe0Dw9HmA0+za13IdyrgJwpkDTDA9fHaxOrt20A==" - }, "Quibble": { "type": "Transitive", "resolved": "0.3.1", @@ -314,11 +260,6 @@ "resolved": "5.0.0", "contentHash": "erBZjkQHWL9jpasCE/0qKAryzVBJFxGHVBAvgRN1bzM0q2s1S4oYREEEL0Vb+1kA/6BKb5FjUZMp5VXmy+gzkQ==" }, - "System.Reflection.Metadata": { - "type": "Transitive", - "resolved": "1.6.0", - "contentHash": "COC1aiAJjCoA5GBF+QKL2uLqEBew4JsCkQmoHKbN3TlOZKa2fKLz5CpiRQKDz0RsAOEGsVKqOD5bomsXq/4STQ==" - }, "System.Runtime.CompilerServices.Unsafe": { "type": "Transitive", "resolved": "4.5.1", @@ -353,20 +294,6 @@ "resolved": "2.0.3", "contentHash": "pot1I4YOxlWjIb5jmwvvQNbTrZ3lJQ+jUGkGjWE3hEFM0l5gOnBWS+H3qsex68s5cO52g+44vpGzhAt+42vwKg==" }, - "xunit.analyzers": { - "type": "Transitive", - "resolved": "1.18.0", - "contentHash": "OtFMHN8yqIcYP9wcVIgJrq01AfTxijjAqVDy/WeQVSyrDC1RzBWeQPztL49DN2syXRah8TYnfvk035s7L95EZQ==" - }, - "xunit.core": { - "type": "Transitive", - "resolved": "2.9.3", - "contentHash": "BiAEvqGvyme19wE0wTKdADH+NloYqikiU0mcnmiNyXaF9HyHmE6sr/3DC5vnBkgsWaE6yPyWszKSPSApWdRVeQ==", - "dependencies": { - "xunit.extensibility.core": "[2.9.3]", - "xunit.extensibility.execution": "[2.9.3]" - } - }, "xunit.extensibility.core": { "type": "Transitive", "resolved": "2.9.3", @@ -455,12 +382,6 @@ "requested": "[13.0.2, )", "resolved": "13.0.2", "contentHash": "g1BejUZwax5PRfL6xHgLEK23sqHWOgOj9hE7RvfRRlN00AGt8GnPYt8HedSK7UB3HiRW8zCA9Pn0iiYxCK24BA==" - }, - "xunit.assert": { - "type": "CentralTransitive", - "requested": "[2.9.3, )", - "resolved": "2.9.3", - "contentHash": "/Kq28fCE7MjOV42YLVRAJzRF0WmEqsmflm0cfpMjGtzQ2lR5mYVj1/i0Y8uDAOLczkL3/jArrwehfMD0YogMAA==" } } } diff --git a/tests/Speckle.Sdk.Tests.Integration/Fixtures.cs b/tests/Speckle.Sdk.Tests.Integration/Fixtures.cs index a8afbc0c..d86a87a3 100644 --- a/tests/Speckle.Sdk.Tests.Integration/Fixtures.cs +++ b/tests/Speckle.Sdk.Tests.Integration/Fixtures.cs @@ -11,7 +11,6 @@ using Speckle.Sdk.Common; using Speckle.Sdk.Credentials; using Speckle.Sdk.Host; using Speckle.Sdk.Models; -using Speckle.Sdk.Tests.Unit.Serialisation; using Speckle.Sdk.Transports; using Version = Speckle.Sdk.Api.GraphQL.Models.Version; @@ -26,7 +25,7 @@ public static class Fixtures static Fixtures() { TypeLoader.Reset(); - TypeLoader.Initialize(typeof(Base).Assembly, typeof(IgnoreTest).Assembly); + TypeLoader.Initialize(typeof(Base).Assembly); ServiceProvider = TestServiceSetup.GetServiceProvider(); } diff --git a/tests/Speckle.Sdk.Tests.Integration/Speckle.Sdk.Tests.Integration.csproj b/tests/Speckle.Sdk.Tests.Integration/Speckle.Sdk.Tests.Integration.csproj index e5204dc2..115bf270 100644 --- a/tests/Speckle.Sdk.Tests.Integration/Speckle.Sdk.Tests.Integration.csproj +++ b/tests/Speckle.Sdk.Tests.Integration/Speckle.Sdk.Tests.Integration.csproj @@ -8,6 +8,8 @@ + + @@ -15,7 +17,7 @@ - + diff --git a/tests/Speckle.Sdk.Tests.Integration/packages.lock.json b/tests/Speckle.Sdk.Tests.Integration/packages.lock.json index 9d7e5e45..2ad27423 100644 --- a/tests/Speckle.Sdk.Tests.Integration/packages.lock.json +++ b/tests/Speckle.Sdk.Tests.Integration/packages.lock.json @@ -8,6 +8,21 @@ "resolved": "9.0.1", "contentHash": "aadciFNDT5bnylaYUkKal+s5hF7yU/lmZxImQWAlk1438iPqK1Uf79H5ylELpyLIU49HL5ql+tnWBihp3WVLCA==" }, + "AwesomeAssertions": { + "type": "Direct", + "requested": "[8.1.0, )", + "resolved": "8.1.0", + "contentHash": "IfNC4cpXPi9tclWvuNO9lfkuIxJsUTLTS1NXto55jDrAUQJYl0zLI9ByISrfkbBE2Xtg+IWaAXQ6jnUx3anDuw==" + }, + "Microsoft.Extensions.DependencyInjection": { + "type": "Direct", + "requested": "[2.2.0, )", + "resolved": "2.2.0", + "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + } + }, "Microsoft.NET.Test.Sdk": { "type": "Direct", "requested": "[17.13.0, )", @@ -373,35 +388,12 @@ "speckle.sdk.testing": { "type": "Project", "dependencies": { - "Microsoft.NET.Test.Sdk": "[17.13.0, )", "Moq": "[4.20.72, )", "Speckle.Sdk": "[1.0.0, )", "Verify.Quibble": "[2.1.1, )", - "Verify.Xunit": "[29.2.0, )", - "xunit": "[2.9.3, )", - "xunit.runner.visualstudio": "[3.0.2, )" + "Verify.Xunit": "[29.2.0, )" } }, - "speckle.sdk.tests.unit": { - "type": "Project", - "dependencies": { - "AwesomeAssertions": "[8.1.0, )", - "Microsoft.Extensions.DependencyInjection": "[2.2.0, )", - "Microsoft.NET.Test.Sdk": "[17.13.0, )", - "RichardSzalay.MockHttp": "[7.0.0, )", - "Speckle.DoubleNumerics": "[4.1.0, )", - "Speckle.Sdk": "[1.0.0, )", - "Speckle.Sdk.Testing": "[1.0.0, )", - "altcover": "[9.0.1, )", - "xunit.runner.visualstudio": "[3.0.2, )" - } - }, - "AwesomeAssertions": { - "type": "CentralTransitive", - "requested": "[8.1.0, )", - "resolved": "8.1.0", - "contentHash": "IfNC4cpXPi9tclWvuNO9lfkuIxJsUTLTS1NXto55jDrAUQJYl0zLI9ByISrfkbBE2Xtg+IWaAXQ6jnUx3anDuw==" - }, "GraphQL.Client": { "type": "CentralTransitive", "requested": "[6.0.0, )", @@ -429,15 +421,6 @@ "SQLitePCLRaw.bundle_e_sqlite3": "2.1.4" } }, - "Microsoft.Extensions.DependencyInjection": { - "type": "CentralTransitive", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" - } - }, "Microsoft.Extensions.DependencyInjection.Abstractions": { "type": "CentralTransitive", "requested": "[2.2.0, )", @@ -465,12 +448,6 @@ "Castle.Core": "5.1.1" } }, - "RichardSzalay.MockHttp": { - "type": "CentralTransitive", - "requested": "[7.0.0, )", - "resolved": "7.0.0", - "contentHash": "QwnauYiaywp65QKFnP+wvgiQ2D8Pv888qB2dyfd7MSVDF06sIvxqASenk+RxsWybyyt+Hu1Y251wQxpHTv3UYg==" - }, "Speckle.DoubleNumerics": { "type": "CentralTransitive", "requested": "[4.1.0, )", diff --git a/tests/Speckle.Sdk.Tests.Unit/ServiceRegistrationTests.cs b/tests/Speckle.Sdk.Tests.Unit/ServiceRegistrationTests.cs new file mode 100644 index 00000000..cfe7d889 --- /dev/null +++ b/tests/Speckle.Sdk.Tests.Unit/ServiceRegistrationTests.cs @@ -0,0 +1,27 @@ +using FluentAssertions; +using Microsoft.Extensions.DependencyInjection; + +namespace Speckle.Sdk.Tests.Unit; + +public class ServiceRegistrationTests +{ + [Fact] + public void RegisterDependencies_Validation() + { + var serviceCollection = new ServiceCollection(); + serviceCollection.AddSpeckleSdk(new("Tests", "test"), "v3"); + var serviceProvider = serviceCollection.BuildServiceProvider(new ServiceProviderOptions { ValidateOnBuild = true }); + serviceProvider.Should().NotBeNull(); + } + + [Fact] + public void RegisterDependencies_Scopes() + { + var serviceCollection = new ServiceCollection(); + serviceCollection.AddSpeckleSdk(new("Tests", "test"), "v3"); + var serviceProvider = serviceCollection.BuildServiceProvider( + new ServiceProviderOptions { ValidateScopes = true, ValidateOnBuild = true } + ); + serviceProvider.Should().NotBeNull(); + } +} diff --git a/tests/Speckle.Sdk.Tests.Unit/Speckle.Sdk.Tests.Unit.csproj b/tests/Speckle.Sdk.Tests.Unit/Speckle.Sdk.Tests.Unit.csproj index 92ef4b7c..0ea2762d 100644 --- a/tests/Speckle.Sdk.Tests.Unit/Speckle.Sdk.Tests.Unit.csproj +++ b/tests/Speckle.Sdk.Tests.Unit/Speckle.Sdk.Tests.Unit.csproj @@ -12,7 +12,8 @@ - + + diff --git a/tests/Speckle.Sdk.Testing/VerifyTests.cs b/tests/Speckle.Sdk.Tests.Unit/VerifyTests.cs similarity index 70% rename from tests/Speckle.Sdk.Testing/VerifyTests.cs rename to tests/Speckle.Sdk.Tests.Unit/VerifyTests.cs index a303625d..a22f3c6c 100644 --- a/tests/Speckle.Sdk.Testing/VerifyTests.cs +++ b/tests/Speckle.Sdk.Tests.Unit/VerifyTests.cs @@ -1,4 +1,4 @@ -namespace Speckle.Sdk.Testing; +namespace Speckle.Sdk.Tests.Unit; public class VerifyTests { diff --git a/tests/Speckle.Sdk.Tests.Unit/packages.lock.json b/tests/Speckle.Sdk.Tests.Unit/packages.lock.json index f3b02a2e..4aff640a 100644 --- a/tests/Speckle.Sdk.Tests.Unit/packages.lock.json +++ b/tests/Speckle.Sdk.Tests.Unit/packages.lock.json @@ -16,11 +16,11 @@ }, "Microsoft.Extensions.DependencyInjection": { "type": "Direct", - "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "MZtBIwfDFork5vfjpJdG5g8wuJFt7d/y3LOSVVtDK/76wlbtz6cjltfKHqLx2TKVqTj5/c41t77m1+h20zqtPA==", + "requested": "[8.0.0, )", + "resolved": "8.0.0", + "contentHash": "V8S3bsm50ig6JSyrbcJJ8bW2b9QLGouz+G1miK3UTaOWmMtFwNNNzUf4AleyDWUmTrWMLNnFSLEQtxmxgNQnNQ==", "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "2.2.0" + "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.0" } }, "Microsoft.NET.Test.Sdk": { @@ -67,6 +67,12 @@ "resolved": "0.9.6", "contentHash": "HKH7tYrYYlCK1ct483hgxERAdVdMtl7gUKW9ijWXxA1UsYR4Z+TrRHYmzZ9qmpu1NnTycSrp005NYM78GDKV1w==" }, + "xunit.assert": { + "type": "Direct", + "requested": "[2.9.3, )", + "resolved": "2.9.3", + "contentHash": "/Kq28fCE7MjOV42YLVRAJzRF0WmEqsmflm0cfpMjGtzQ2lR5mYVj1/i0Y8uDAOLczkL3/jArrwehfMD0YogMAA==" + }, "xunit.runner.visualstudio": { "type": "Direct", "requested": "[3.0.2, )", @@ -340,20 +346,6 @@ "resolved": "2.0.3", "contentHash": "pot1I4YOxlWjIb5jmwvvQNbTrZ3lJQ+jUGkGjWE3hEFM0l5gOnBWS+H3qsex68s5cO52g+44vpGzhAt+42vwKg==" }, - "xunit.analyzers": { - "type": "Transitive", - "resolved": "1.18.0", - "contentHash": "OtFMHN8yqIcYP9wcVIgJrq01AfTxijjAqVDy/WeQVSyrDC1RzBWeQPztL49DN2syXRah8TYnfvk035s7L95EZQ==" - }, - "xunit.core": { - "type": "Transitive", - "resolved": "2.9.3", - "contentHash": "BiAEvqGvyme19wE0wTKdADH+NloYqikiU0mcnmiNyXaF9HyHmE6sr/3DC5vnBkgsWaE6yPyWszKSPSApWdRVeQ==", - "dependencies": { - "xunit.extensibility.core": "[2.9.3]", - "xunit.extensibility.execution": "[2.9.3]" - } - }, "xunit.extensibility.core": { "type": "Transitive", "resolved": "2.9.3", @@ -389,13 +381,10 @@ "speckle.sdk.testing": { "type": "Project", "dependencies": { - "Microsoft.NET.Test.Sdk": "[17.13.0, )", "Moq": "[4.20.72, )", "Speckle.Sdk": "[1.0.0, )", "Verify.Quibble": "[2.1.1, )", - "Verify.Xunit": "[29.2.0, )", - "xunit": "[2.9.3, )", - "xunit.runner.visualstudio": "[3.0.2, )" + "Verify.Xunit": "[29.2.0, )" } }, "GraphQL.Client": { @@ -428,8 +417,8 @@ "Microsoft.Extensions.DependencyInjection.Abstractions": { "type": "CentralTransitive", "requested": "[2.2.0, )", - "resolved": "2.2.0", - "contentHash": "f9hstgjVmr6rmrfGSpfsVOl2irKAgr1QjrSi3FgnS7kulxband50f2brRLwySAQTADPZeTdow0mpSMcoAdadCw==" + "resolved": "8.0.0", + "contentHash": "cjWrLkJXK0rs4zofsK4bSdg+jhDLTaxrkXu4gS6Y7MAlCvRyNNgwY/lJi5RDlQOnSZweHqoyvgvbdvQsRIW+hg==" }, "Microsoft.Extensions.Logging": { "type": "CentralTransitive", @@ -483,23 +472,6 @@ "xunit.abstractions": "2.0.3", "xunit.extensibility.execution": "2.9.3" } - }, - "xunit": { - "type": "CentralTransitive", - "requested": "[2.9.3, )", - "resolved": "2.9.3", - "contentHash": "TlXQBinK35LpOPKHAqbLY4xlEen9TBafjs0V5KnA4wZsoQLQJiirCR4CbIXvOH8NzkW4YeJKP5P/Bnrodm0h9Q==", - "dependencies": { - "xunit.analyzers": "1.18.0", - "xunit.assert": "2.9.3", - "xunit.core": "[2.9.3]" - } - }, - "xunit.assert": { - "type": "CentralTransitive", - "requested": "[2.9.3, )", - "resolved": "2.9.3", - "contentHash": "/Kq28fCE7MjOV42YLVRAJzRF0WmEqsmflm0cfpMjGtzQ2lR5mYVj1/i0Y8uDAOLczkL3/jArrwehfMD0YogMAA==" } } }