From d4055c6ff1857676672ac39627b3578b9c95473a Mon Sep 17 00:00:00 2001 From: Jedd Morgan <45512892+JR-Morgan@users.noreply.github.com> Date: Mon, 23 Mar 2026 16:03:20 +0000 Subject: [PATCH 01/10] Avoid deprecated fields --- .../Api/GraphQL/Models/Workspace.cs | 12 ++++++- .../GraphQL/Resources/ActiveUserResource.cs | 8 ++--- .../GraphQL/Resources/OtherUserResource.cs | 36 +++++++++---------- .../GraphQL/Resources/WorkspaceResource.cs | 6 +--- 4 files changed, 32 insertions(+), 30 deletions(-) diff --git a/src/Speckle.Sdk/Api/GraphQL/Models/Workspace.cs b/src/Speckle.Sdk/Api/GraphQL/Models/Workspace.cs index 745f54ad7..807212bd6 100644 --- a/src/Speckle.Sdk/Api/GraphQL/Models/Workspace.cs +++ b/src/Speckle.Sdk/Api/GraphQL/Models/Workspace.cs @@ -1,3 +1,5 @@ +using Speckle.Newtonsoft.Json; + namespace Speckle.Sdk.Api.GraphQL.Models; public class LimitedWorkspace @@ -6,8 +8,12 @@ public class LimitedWorkspace public string name { get; init; } public string? role { get; init; } public string slug { get; init; } - public string? logo { get; init; } + public string? logoUri { get; init; } public string? description { get; init; } + + [JsonIgnore] + [Obsolete($"Deprecated, use {nameof(logoUri)} instead", true)] + public string? logo { get; init; } } public class Workspace : LimitedWorkspace @@ -16,9 +22,13 @@ public class Workspace : LimitedWorkspace public DateTime updatedAt { get; init; } public bool readOnly { get; init; } public WorkspacePermissionChecks permissions { get; init; } + + [JsonIgnore] + [Obsolete("Workspaces no longer have creation state, is always created true", true)] public WorkspaceCreationState? creationState { get; init; } } +[Obsolete("Workspaces no longer have creation state, is always created true")] public sealed class WorkspaceCreationState { public bool completed { get; init; } diff --git a/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs b/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs index cb5451816..732b3fa56 100644 --- a/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs +++ b/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs @@ -264,15 +264,11 @@ query ActiveUser($limit: Int!, $cursor: String, $filter: UserWorkspacesFilter) { name role slug - logo + logoUrl createdAt updatedAt readOnly description - creationState - { - completed - } permissions { canCreateProject { authorized @@ -328,7 +324,7 @@ query ActiveUser { name role slug - logo + logoUrl description } } diff --git a/src/Speckle.Sdk/Api/GraphQL/Resources/OtherUserResource.cs b/src/Speckle.Sdk/Api/GraphQL/Resources/OtherUserResource.cs index 309d12557..a6c65dbda 100644 --- a/src/Speckle.Sdk/Api/GraphQL/Resources/OtherUserResource.cs +++ b/src/Speckle.Sdk/Api/GraphQL/Resources/OtherUserResource.cs @@ -52,7 +52,6 @@ query LimitedUser($id: String!) { /// String to search for. Must be at least 3 characters /// Max number of users to fetch /// Optional cursor for pagination - /// /// /// /// @@ -61,26 +60,25 @@ public async Task UserSearch( string query, int limit = ServerLimits.DEFAULT_PAGINATION_REQUEST, string? cursor = null, - bool archived = false, bool emailOnly = false, CancellationToken cancellationToken = default ) { //language=graphql const string QUERY = """ - query UserSearch($query: String!, $limit: Int!, $cursor: String, $archived: Boolean, $emailOnly: Boolean) { - data:userSearch(query: $query, limit: $limit, cursor: $cursor, archived: $archived, emailOnly: $emailOnly) { + query Users($input: UsersRetrievalInput!) { + users(input: $input) { cursor items { - id - name - bio - company - avatar - verified - role - } - } + id + name + bio + company + avatar + verified + role + } + } } """; @@ -89,11 +87,13 @@ query UserSearch($query: String!, $limit: Int!, $cursor: String, $archived: Bool Query = QUERY, Variables = new { - query, - limit, - cursor, - archived, - emailOnly, + input = new + { + query, + limit, + emailOnly, + cursor, + }, }, }; diff --git a/src/Speckle.Sdk/Api/GraphQL/Resources/WorkspaceResource.cs b/src/Speckle.Sdk/Api/GraphQL/Resources/WorkspaceResource.cs index 285c008b6..805a4ad67 100644 --- a/src/Speckle.Sdk/Api/GraphQL/Resources/WorkspaceResource.cs +++ b/src/Speckle.Sdk/Api/GraphQL/Resources/WorkspaceResource.cs @@ -28,15 +28,11 @@ query WorkspaceGet($workspaceId: String!) { name role slug - logo + logoUrl createdAt updatedAt readOnly description - creationState - { - completed - } permissions { canCreateProject { authorized From 4b319499c33609b81e831dc976e9834fadaaa9a3 Mon Sep 17 00:00:00 2001 From: Jedd Morgan <45512892+JR-Morgan@users.noreply.github.com> Date: Mon, 23 Mar 2026 16:10:44 +0000 Subject: [PATCH 02/10] Fix mistake --- src/Speckle.Sdk/Api/GraphQL/Resources/OtherUserResource.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Speckle.Sdk/Api/GraphQL/Resources/OtherUserResource.cs b/src/Speckle.Sdk/Api/GraphQL/Resources/OtherUserResource.cs index a6c65dbda..26d462564 100644 --- a/src/Speckle.Sdk/Api/GraphQL/Resources/OtherUserResource.cs +++ b/src/Speckle.Sdk/Api/GraphQL/Resources/OtherUserResource.cs @@ -67,7 +67,7 @@ public async Task UserSearch( //language=graphql const string QUERY = """ query Users($input: UsersRetrievalInput!) { - users(input: $input) { + data:users(input: $input) { cursor items { id From 2b61ab7d2e0088a97f5bdfb41b70eda701ec1411 Mon Sep 17 00:00:00 2001 From: Jedd Morgan <45512892+JR-Morgan@users.noreply.github.com> Date: Tue, 24 Mar 2026 10:04:44 +0000 Subject: [PATCH 03/10] fallback mechanism --- .../GraphQL/Resources/ActiveUserResource.cs | 44 ++++++++++++++++++- .../GraphQL/Resources/SubscriptionResource.cs | 1 + 2 files changed, 43 insertions(+), 2 deletions(-) diff --git a/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs b/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs index 732b3fa56..4e8289187 100644 --- a/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs +++ b/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs @@ -313,7 +313,7 @@ query ActiveUser($limit: Int!, $cursor: String, $filter: UserWorkspacesFilter) { /// note this returns a , because it may be a workspace the user is not a member of /// /// The ActiveUser could not be found (e.g. the client is not authenticated) - public async Task GetActiveWorkspace(CancellationToken cancellationToken = default) + private async Task GetActiveWorkspace_Legacy(CancellationToken cancellationToken = default) { //language=graphql const string QUERY = """ @@ -324,7 +324,6 @@ query ActiveUser { name role slug - logoUrl description } } @@ -345,6 +344,47 @@ query ActiveUser { return response.data.data; } + public async Task GetActiveWorkspace(CancellationToken cancellationToken = default) + { + //language=graphql + const string QUERY = """ + query ActiveUser { + data:activeUser { + data:activeWorkspace { + id + name + role + slug + logoUrl + description + } + } + } + """; + + var request = new GraphQLRequest { Query = QUERY }; + + NullableResponse?> response; + try + { + response = await _client + .ExecuteGraphQLRequest?>>(request, cancellationToken) + .ConfigureAwait(false); + } + catch (SpeckleGraphQLInvalidQueryException) + { + //v2.x.x servers do not have a logoUrl property + return await GetActiveWorkspace_Legacy(cancellationToken).ConfigureAwait(false); + } + + if (response.data is null) + { + throw new SpeckleException("GraphQL response indicated that the ActiveUser could not be found"); + } + + return response.data.data; + } + /// Max number of projects to fetch /// Optional cursor for pagination /// Optional filter diff --git a/src/Speckle.Sdk/Api/GraphQL/Resources/SubscriptionResource.cs b/src/Speckle.Sdk/Api/GraphQL/Resources/SubscriptionResource.cs index 8ba201d18..391402305 100644 --- a/src/Speckle.Sdk/Api/GraphQL/Resources/SubscriptionResource.cs +++ b/src/Speckle.Sdk/Api/GraphQL/Resources/SubscriptionResource.cs @@ -76,6 +76,7 @@ subscription UserProjectsUpdated { /// Subscribe to updates to resource comments/threads. Optionally specify resource ID string to only receive updates regarding comments for those resources /// /// + [Obsolete("Comments are now issues, and we've not update SDKs with the new subs")] public Subscription CreateProjectCommentsUpdatedSubscription( ViewerUpdateTrackingTarget target ) From c517dead036529ea658e162ff2cf24a9d5b41102 Mon Sep 17 00:00:00 2001 From: Jedd Morgan <45512892+JR-Morgan@users.noreply.github.com> Date: Tue, 24 Mar 2026 10:24:43 +0000 Subject: [PATCH 04/10] Internal --- .../Api/GraphQL/Resources/WorkspaceResourceTests.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Speckle.Sdk.Tests.Integration/Api/GraphQL/Resources/WorkspaceResourceTests.cs b/tests/Speckle.Sdk.Tests.Integration/Api/GraphQL/Resources/WorkspaceResourceTests.cs index d597472d4..838156e2c 100644 --- a/tests/Speckle.Sdk.Tests.Integration/Api/GraphQL/Resources/WorkspaceResourceTests.cs +++ b/tests/Speckle.Sdk.Tests.Integration/Api/GraphQL/Resources/WorkspaceResourceTests.cs @@ -21,7 +21,7 @@ private static async Task Setup() return testUser; } - [Fact] + [Fact, Trait("Server", "Internal")] public async Task TestGetWorkspace() { var ex = await Assert.ThrowsAsync(async () => _ = await Sut.Get("non-existent-id")); From 63e174b0fba64a057216adf4d44cf07b464f8625 Mon Sep 17 00:00:00 2001 From: Jedd Morgan <45512892+JR-Morgan@users.noreply.github.com> Date: Tue, 30 Jun 2026 10:47:47 +0100 Subject: [PATCH 05/10] simpler handling of v2 servers --- .../Api/GraphQL/Models/Workspace.cs | 18 ++++----- .../GraphQL/Resources/ActiveUserResource.cs | 40 +------------------ .../Api/GraphQL/Resources/CommentResource.cs | 7 ++++ .../GraphQL/Resources/OtherUserResource.cs | 1 + 4 files changed, 19 insertions(+), 47 deletions(-) diff --git a/src/Speckle.Sdk/Api/GraphQL/Models/Workspace.cs b/src/Speckle.Sdk/Api/GraphQL/Models/Workspace.cs index 807212bd6..9faa104a0 100644 --- a/src/Speckle.Sdk/Api/GraphQL/Models/Workspace.cs +++ b/src/Speckle.Sdk/Api/GraphQL/Models/Workspace.cs @@ -4,10 +4,10 @@ namespace Speckle.Sdk.Api.GraphQL.Models; public class LimitedWorkspace { - public string id { get; init; } - public string name { get; init; } + public required string id { get; init; } + public required string name { get; init; } public string? role { get; init; } - public string slug { get; init; } + public required string slug { get; init; } public string? logoUri { get; init; } public string? description { get; init; } @@ -18,10 +18,10 @@ public class LimitedWorkspace public class Workspace : LimitedWorkspace { - public DateTime createdAt { get; init; } - public DateTime updatedAt { get; init; } - public bool readOnly { get; init; } - public WorkspacePermissionChecks permissions { get; init; } + public required DateTime createdAt { get; init; } + public required DateTime updatedAt { get; init; } + public required bool readOnly { get; init; } + public required WorkspacePermissionChecks permissions { get; init; } [JsonIgnore] [Obsolete("Workspaces no longer have creation state, is always created true", true)] @@ -31,10 +31,10 @@ public class Workspace : LimitedWorkspace [Obsolete("Workspaces no longer have creation state, is always created true")] public sealed class WorkspaceCreationState { - public bool completed { get; init; } + public required bool completed { get; init; } } public sealed class WorkspacePermissionChecks { - public PermissionCheckResult canCreateProject { get; init; } + public required PermissionCheckResult canCreateProject { get; init; } } diff --git a/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs b/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs index 4e8289187..716f4c5ec 100644 --- a/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs +++ b/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs @@ -1,4 +1,4 @@ -using GraphQL; +using GraphQL; using Speckle.Sdk.Api.GraphQL.Inputs; using Speckle.Sdk.Api.GraphQL.Models; using Speckle.Sdk.Api.GraphQL.Models.Responses; @@ -308,42 +308,6 @@ query ActiveUser($limit: Int!, $cursor: String, $filter: UserWorkspacesFilter) { return response.data.data; } - /// - /// The active (last selected) workspace - /// note this returns a , because it may be a workspace the user is not a member of - /// - /// The ActiveUser could not be found (e.g. the client is not authenticated) - private async Task GetActiveWorkspace_Legacy(CancellationToken cancellationToken = default) - { - //language=graphql - const string QUERY = """ - query ActiveUser { - data:activeUser { - data:activeWorkspace { - id - name - role - slug - description - } - } - } - """; - - var request = new GraphQLRequest { Query = QUERY }; - - var response = await _client - .ExecuteGraphQLRequest?>>(request, cancellationToken) - .ConfigureAwait(false); - - if (response.data is null) - { - throw new SpeckleException("GraphQL response indicated that the ActiveUser could not be found"); - } - - return response.data.data; - } - public async Task GetActiveWorkspace(CancellationToken cancellationToken = default) { //language=graphql @@ -374,7 +338,7 @@ query ActiveUser { catch (SpeckleGraphQLInvalidQueryException) { //v2.x.x servers do not have a logoUrl property - return await GetActiveWorkspace_Legacy(cancellationToken).ConfigureAwait(false); + return null; } if (response.data is null) diff --git a/src/Speckle.Sdk/Api/GraphQL/Resources/CommentResource.cs b/src/Speckle.Sdk/Api/GraphQL/Resources/CommentResource.cs index 30aed5e97..ed9397c7d 100644 --- a/src/Speckle.Sdk/Api/GraphQL/Resources/CommentResource.cs +++ b/src/Speckle.Sdk/Api/GraphQL/Resources/CommentResource.cs @@ -21,6 +21,7 @@ internal CommentResource(ISpeckleGraphQLClient client) /// /// /// + [Obsolete("Comments are deprecated in favour of Issues which we don't provide a .NET Resource for at this time")] public async Task Get( string commentId, string projectId, @@ -99,6 +100,7 @@ query CommentThreads($projectId: String!, $commentId: String!, $repliesLimit: In /// /// /// + [Obsolete("Comments are deprecated in favour of Issues which we don't provide a .NET Resource for at this time")] public async Task GetProjectComments( string projectId, int limit = ServerLimits.DEFAULT_PAGINATION_REQUEST, @@ -186,6 +188,7 @@ query CommentThreads($projectId: String!, $cursor: String, $limit: Int!, $filter /// /// /// + [Obsolete("Comments are deprecated in favour of Issues which we don't provide a .NET Resource for at this time")] internal async Task Create(CreateCommentInput input, CancellationToken cancellationToken = default) { //language=graphql @@ -227,6 +230,7 @@ mutation Mutation($input: CreateCommentInput!) { /// /// /// + [Obsolete("Comments are deprecated in favour of Issues which we don't provide a .NET Resource for at this time")] internal async Task Edit(EditCommentInput input, CancellationToken cancellationToken = default) { //language=graphql @@ -267,6 +271,7 @@ mutation Mutation($input: EditCommentInput!) { /// /// /// + [Obsolete("Comments are deprecated in favour of Issues which we don't provide a .NET Resource for at this time")] public async Task Archive(ArchiveCommentInput input, CancellationToken cancellationToken = default) { //language=graphql @@ -293,6 +298,7 @@ mutation Mutation($input: ArchiveCommentInput!) { /// /// /// + [Obsolete("Comments are deprecated in favour of Issues which we don't provide a .NET Resource for at this time")] public async Task MarkViewed(MarkCommentViewedInput input, CancellationToken cancellationToken = default) { //language=graphql @@ -320,6 +326,7 @@ mutation Mutation($input: MarkCommentViewedInput!) { /// /// /// + [Obsolete("Comments are deprecated in favour of Issues which we don't provide a .NET Resource for at this time")] internal async Task Reply(CreateCommentReplyInput input, CancellationToken cancellationToken = default) { //language=graphql diff --git a/src/Speckle.Sdk/Api/GraphQL/Resources/OtherUserResource.cs b/src/Speckle.Sdk/Api/GraphQL/Resources/OtherUserResource.cs index 26d462564..a0a92cf60 100644 --- a/src/Speckle.Sdk/Api/GraphQL/Resources/OtherUserResource.cs +++ b/src/Speckle.Sdk/Api/GraphQL/Resources/OtherUserResource.cs @@ -56,6 +56,7 @@ query LimitedUser($id: String!) { /// /// /// + [Obsolete("User search is deprecated")] public async Task UserSearch( string query, int limit = ServerLimits.DEFAULT_PAGINATION_REQUEST, From 40b7ca9af06a5311a3a20885b504fa873efd1c1f Mon Sep 17 00:00:00 2001 From: Jedd Morgan <45512892+JR-Morgan@users.noreply.github.com> Date: Tue, 30 Jun 2026 10:49:10 +0100 Subject: [PATCH 06/10] return comment --- src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs b/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs index 716f4c5ec..c028eb6bc 100644 --- a/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs +++ b/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs @@ -308,6 +308,11 @@ query ActiveUser($limit: Int!, $cursor: String, $filter: UserWorkspacesFilter) { return response.data.data; } + /// + /// The active (last selected) workspace + /// note this returns a , because it may be a workspace the user is not a member of + /// + /// The ActiveUser could not be found (e.g. the client is not authenticated) public async Task GetActiveWorkspace(CancellationToken cancellationToken = default) { //language=graphql From 42830afa80688b4982d18821f54793391d4774ef Mon Sep 17 00:00:00 2001 From: Jedd Morgan <45512892+JR-Morgan@users.noreply.github.com> Date: Tue, 30 Jun 2026 11:04:23 +0100 Subject: [PATCH 07/10] adjust v2 handler --- src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs b/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs index c028eb6bc..a44e762f5 100644 --- a/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs +++ b/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs @@ -340,8 +340,10 @@ query ActiveUser { .ExecuteGraphQLRequest?>>(request, cancellationToken) .ConfigureAwait(false); } - catch (SpeckleGraphQLInvalidQueryException) + catch (AggregateException a) { + a.Handle(x => x is SpeckleGraphQLInvalidQueryException); + //v2.x.x servers do not have a logoUrl property return null; } From ec007cba284ed90849134fcbf158e5e5a3f8ec58 Mon Sep 17 00:00:00 2001 From: Jedd Morgan <45512892+JR-Morgan@users.noreply.github.com> Date: Tue, 30 Jun 2026 11:04:41 +0100 Subject: [PATCH 08/10] move comment for clartty --- src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs b/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs index a44e762f5..b9f8f0b4b 100644 --- a/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs +++ b/src/Speckle.Sdk/Api/GraphQL/Resources/ActiveUserResource.cs @@ -342,9 +342,9 @@ query ActiveUser { } catch (AggregateException a) { + //v2.x.x servers do not have a logoUrl property a.Handle(x => x is SpeckleGraphQLInvalidQueryException); - //v2.x.x servers do not have a logoUrl property return null; } From d3b043c7b859e37f5cd8114641c44a31cdc1ddca Mon Sep 17 00:00:00 2001 From: Jedd Morgan <45512892+JR-Morgan@users.noreply.github.com> Date: Tue, 30 Jun 2026 11:09:43 +0100 Subject: [PATCH 09/10] fix tests --- .../Api/GraphQL/Resources/WorkspaceResourceTests.cs | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/tests/Speckle.Sdk.Tests.Integration/Api/GraphQL/Resources/WorkspaceResourceTests.cs b/tests/Speckle.Sdk.Tests.Integration/Api/GraphQL/Resources/WorkspaceResourceTests.cs index 66f4666c0..c895b4709 100644 --- a/tests/Speckle.Sdk.Tests.Integration/Api/GraphQL/Resources/WorkspaceResourceTests.cs +++ b/tests/Speckle.Sdk.Tests.Integration/Api/GraphQL/Resources/WorkspaceResourceTests.cs @@ -27,10 +27,18 @@ public async Task TestGetWorkspace() { var ex = await Assert.ThrowsAsync(async () => _ = await Sut.Get("non-existent-id")); ex.InnerExceptions.Should().HaveCount(1); - ex.InnerExceptions.Should().AllBeOfType(); + ex.InnerExceptions.Should().AllBeOfType(); + } + + [Fact, Trait("Server", "Internal")] + public async Task TestGetProjectsInternal() + { + var ex = await Assert.ThrowsAsync(async () => _ = await Sut.GetProjects("non-existent-id")); + ex.InnerExceptions.Should().HaveCount(1); + ex.InnerExceptions.Should().AllBeOfType(); } - [Fact] + [Fact, Trait("Server", "Public")] public async Task TestGetProjects() { var ex = await Assert.ThrowsAsync(async () => _ = await Sut.GetProjects("non-existent-id")); From ff8e82dd3593716ee0697addc028c2e3f3a6b7d2 Mon Sep 17 00:00:00 2001 From: Jedd Morgan <45512892+JR-Morgan@users.noreply.github.com> Date: Tue, 30 Jun 2026 11:29:26 +0100 Subject: [PATCH 10/10] Internal tests --- .../Api/GraphQL/Resources/ActiveUserResourceTests.cs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/Speckle.Sdk.Tests.Integration/Api/GraphQL/Resources/ActiveUserResourceTests.cs b/tests/Speckle.Sdk.Tests.Integration/Api/GraphQL/Resources/ActiveUserResourceTests.cs index 803a42b6e..e80671cca 100644 --- a/tests/Speckle.Sdk.Tests.Integration/Api/GraphQL/Resources/ActiveUserResourceTests.cs +++ b/tests/Speckle.Sdk.Tests.Integration/Api/GraphQL/Resources/ActiveUserResourceTests.cs @@ -107,14 +107,14 @@ await FluentActions .ThrowAsync(); } - [Fact] + [Fact, Trait("Server", "Internal")] public async Task ActiveUserGetWorkspaces() { var ex = await Assert.ThrowsAsync(async () => _ = await Sut.GetWorkspaces()); await Verify(ex); } - [Fact] + [Fact, Trait("Server", "Internal")] public async Task ActiveUserGetWorkspaces_NoAuth() { await FluentActions @@ -130,7 +130,7 @@ public async Task ActiveUserGetActiveWorkspace() res.Should().Be(null); } - [Fact] + [Fact, Trait("Server", "Internal")] public async Task ActiveUserGetActiveWorkspace_NoAuth() { await FluentActions