From 9a1621b78cc46b8840aace79d157ff3fed528f4b Mon Sep 17 00:00:00 2001 From: berce <75228263+bercedev@users.noreply.github.com> Date: Wed, 21 Oct 2026 16:08:37 +0300 Subject: [PATCH] fix(client): build the User-Agent from the assembly version The hardcoded QuickbaseNet/1.0.1 went stale with each release; the package is at 1.0.2. --- .../Tests/QuickbaseClientTests.cs | 13 +++++++++++++ QuickbaseNet/Services/QuickbaseClient.cs | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/QuickbaseNet.UnitTests/Tests/QuickbaseClientTests.cs b/QuickbaseNet.UnitTests/Tests/QuickbaseClientTests.cs index c06dd71..3e772a5 100644 --- a/QuickbaseNet.UnitTests/Tests/QuickbaseClientTests.cs +++ b/QuickbaseNet.UnitTests/Tests/QuickbaseClientTests.cs @@ -49,6 +49,19 @@ public async Task Constructor_ThrowsArgumentNullException_WhenTokenIsNull() Assert.Equal("userToken", exception.ParamName); } + [Fact] + public void Constructor_SetsUserAgentFromAssemblyVersion() + { + // Arrange + var version = typeof(QuickbaseClient).Assembly.GetName().Version!.ToString(3); + + // Act + var client = new QuickbaseClient(TestRealm, TestToken); + + // Assert + Assert.Equal($"QuickbaseNet/{version}", client.Client.DefaultRequestHeaders.UserAgent.ToString()); + } + [Fact] public async Task QueryRecords_ReturnsSuccessResponse_WhenCalled() { diff --git a/QuickbaseNet/Services/QuickbaseClient.cs b/QuickbaseNet/Services/QuickbaseClient.cs index d47738d..4770ac1 100644 --- a/QuickbaseNet/Services/QuickbaseClient.cs +++ b/QuickbaseNet/Services/QuickbaseClient.cs @@ -15,7 +15,7 @@ namespace QuickbaseNet.Services public class QuickbaseClient { private const string BaseUrl = "https://api.quickbase.com"; - private const string UserAgent = "QuickbaseNet/1.0.1"; + private static readonly string UserAgent = "QuickbaseNet/" + typeof(QuickbaseClient).Assembly.GetName().Version.ToString(3); /// /// Gets or sets the HTTP client used to make requests to the QuickBase API.