Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,11 @@
using Contentstack.Management.Core.Tests.Model;
using Contentstack.Management.Core.Queryable;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using Newtonsoft.Json.Linq;
using System.Text.Json.Nodes;
using System.Text.Json;
using System.Security.Cryptography;
using System.Net;
using Contentstack.Management.Core.Exceptions;
using Newtonsoft.Json;
using System.Threading;
using System.Linq;

Expand Down Expand Up @@ -107,10 +107,10 @@ public async Task Test001_Should_Create_Delivery_Token()

AssertLogger.IsTrue(response.IsSuccessStatusCode, "Create delivery token failed", "CreateDeliveryTokenSuccess");

var responseObject = response.OpenJObjectResponse();
var responseObject = response.OpenJsonObjectResponse();
AssertLogger.IsNotNull(responseObject["token"], "Response should contain token object");

var tokenData = responseObject["token"] as JObject;
var tokenData = responseObject["token"] as JsonObject;
AssertLogger.IsNotNull(tokenData["uid"], "Token should have UID");
AssertLogger.AreEqual(_testTokenModel.Name, tokenData["name"]?.ToString(), "Token name should match", "TokenName");
AssertLogger.AreEqual(_testTokenModel.Description, tokenData["description"]?.ToString(), "Token description should match", "TokenDescription");
Expand Down Expand Up @@ -165,10 +165,10 @@ public async Task Test002_Should_Create_Delivery_Token_Async()

AssertLogger.IsTrue(response.IsSuccessStatusCode, "Async create delivery token failed", "AsyncCreateSuccess");

var responseObject = response.OpenJObjectResponse();
var responseObject = response.OpenJsonObjectResponse();
AssertLogger.IsNotNull(responseObject["token"], "Response should contain token object");

var tokenData = responseObject["token"] as JObject;
var tokenData = responseObject["token"] as JsonObject;
AssertLogger.IsNotNull(tokenData["uid"], "Token should have UID");
AssertLogger.AreEqual(asyncTokenModel.Name, tokenData["name"]?.ToString(), "Token name should match", "AsyncTokenName");

Expand Down Expand Up @@ -204,10 +204,10 @@ public async Task Test003_Should_Fetch_Delivery_Token()

AssertLogger.IsTrue(response.IsSuccessStatusCode, "Fetch delivery token failed", "FetchSuccess");

var responseObject = response.OpenJObjectResponse();
var responseObject = response.OpenJsonObjectResponse();
AssertLogger.IsNotNull(responseObject["token"], "Response should contain token object");

var tokenData = responseObject["token"] as JObject;
var tokenData = responseObject["token"] as JsonObject;
AssertLogger.AreEqual(_deliveryTokenUid, tokenData["uid"]?.ToString(), "Token UID should match", "TokenUid");
AssertLogger.AreEqual(_testTokenModel.Name, tokenData["name"]?.ToString(), "Token name should match", "TokenName");
AssertLogger.IsNotNull(tokenData["token"], "Token should have access token");
Expand Down Expand Up @@ -236,10 +236,10 @@ public async Task Test004_Should_Fetch_Delivery_Token_Async()

AssertLogger.IsTrue(response.IsSuccessStatusCode, "Async fetch delivery token failed", "AsyncFetchSuccess");

var responseObject = response.OpenJObjectResponse();
var responseObject = response.OpenJsonObjectResponse();
AssertLogger.IsNotNull(responseObject["token"], "Response should contain token object");

var tokenData = responseObject["token"] as JObject;
var tokenData = responseObject["token"] as JsonObject;
AssertLogger.AreEqual(_deliveryTokenUid, tokenData["uid"]?.ToString(), "Token UID should match", "TokenUid");
AssertLogger.IsNotNull(tokenData["token"], "Token should have access token");
}
Expand Down Expand Up @@ -293,10 +293,10 @@ public async Task Test005_Should_Update_Delivery_Token()

AssertLogger.IsTrue(response.IsSuccessStatusCode, "Update delivery token failed", "UpdateSuccess");

var responseObject = response.OpenJObjectResponse();
var responseObject = response.OpenJsonObjectResponse();
AssertLogger.IsNotNull(responseObject["token"], "Response should contain token object");

var tokenData = responseObject["token"] as JObject;
var tokenData = responseObject["token"] as JsonObject;
AssertLogger.AreEqual(_deliveryTokenUid, tokenData["uid"]?.ToString(), "Token UID should match", "TokenUid");
AssertLogger.AreEqual(updateModel.Name, tokenData["name"]?.ToString(), "Updated token name should match", "UpdatedTokenName");
AssertLogger.AreEqual(updateModel.Description, tokenData["description"]?.ToString(), "Updated token description should match", "UpdatedTokenDescription");
Expand Down Expand Up @@ -351,10 +351,10 @@ public async Task Test006_Should_Update_Delivery_Token_Async()

AssertLogger.IsTrue(response.IsSuccessStatusCode, "Async update delivery token failed", "AsyncUpdateSuccess");

var responseObject = response.OpenJObjectResponse();
var responseObject = response.OpenJsonObjectResponse();
AssertLogger.IsNotNull(responseObject["token"], "Response should contain token object");

var tokenData = responseObject["token"] as JObject;
var tokenData = responseObject["token"] as JsonObject;
AssertLogger.AreEqual(_deliveryTokenUid, tokenData["uid"]?.ToString(), "Token UID should match", "TokenUid");
AssertLogger.AreEqual(updateModel.Name, tokenData["name"]?.ToString(), "Updated token name should match", "UpdatedTokenName");

Expand Down Expand Up @@ -382,10 +382,10 @@ public async Task Test007_Should_Query_All_Delivery_Tokens()

AssertLogger.IsTrue(response.IsSuccessStatusCode, "Query delivery tokens failed", "QuerySuccess");

var responseObject = response.OpenJObjectResponse();
var responseObject = response.OpenJsonObjectResponse();
AssertLogger.IsNotNull(responseObject["tokens"], "Response should contain tokens array");

var tokens = responseObject["tokens"] as JArray;
var tokens = responseObject["tokens"] as JsonArray;
AssertLogger.IsTrue(tokens.Count > 0, "Should have at least one delivery token", "TokensCountGreaterThanZero");

bool foundTestToken = false;
Expand Down Expand Up @@ -428,10 +428,10 @@ public async Task Test008_Should_Query_Delivery_Tokens_With_Parameters()

AssertLogger.IsTrue(response.IsSuccessStatusCode, "Query delivery tokens with parameters failed", "QueryWithParamsSuccess");

var responseObject = response.OpenJObjectResponse();
var responseObject = response.OpenJsonObjectResponse();
AssertLogger.IsNotNull(responseObject["tokens"], "Response should contain tokens array");

var tokens = responseObject["tokens"] as JArray;
var tokens = responseObject["tokens"] as JsonArray;
AssertLogger.IsTrue(tokens.Count <= 5, "Should respect limit parameter", "RespectLimitParam");

}
Expand Down Expand Up @@ -483,14 +483,14 @@ public async Task Test009_Should_Create_Token_With_Multiple_Environments()

AssertLogger.IsTrue(response.IsSuccessStatusCode, "Create multi-environment delivery token failed", "MultiEnvCreateSuccess");

var responseObject = response.OpenJObjectResponse();
var tokenData = responseObject["token"] as JObject;
var responseObject = response.OpenJsonObjectResponse();
var tokenData = responseObject["token"] as JsonObject;
AssertLogger.IsNotNull(tokenData["uid"], "Token should have UID");

string multiEnvTokenUid = tokenData["uid"]?.ToString();
TestOutputLogger.LogContext("MultiEnvTokenUid", multiEnvTokenUid ?? "");

var scope = tokenData["scope"] as JArray;
var scope = tokenData["scope"] as JsonArray;
AssertLogger.IsNotNull(scope, "Token should have scope");
AssertLogger.IsTrue(scope.Count > 0, "Token should have at least one scope", "ScopeCount");

Expand Down Expand Up @@ -546,15 +546,15 @@ public async Task Test011_Should_Create_Token_With_Complex_Scope()

AssertLogger.IsTrue(response.IsSuccessStatusCode, "Create complex scope delivery token failed", "ComplexScopeCreateSuccess");

var responseObject = response.OpenJObjectResponse();
var tokenData = responseObject["token"] as JObject;
var responseObject = response.OpenJsonObjectResponse();
var tokenData = responseObject["token"] as JsonObject;
AssertLogger.IsNotNull(tokenData["uid"], "Token should have UID");

string complexScopeTokenUid = tokenData["uid"]?.ToString();
TestOutputLogger.LogContext("ComplexScopeTokenUid", complexScopeTokenUid ?? "");

// Verify multiple scopes
var scope = tokenData["scope"] as JArray;
var scope = tokenData["scope"] as JsonArray;
AssertLogger.IsNotNull(scope, "Token should have scope");
AssertLogger.IsTrue(scope.Count >= 2, "Token should have multiple scopes", "ScopeCountMultiple");

Expand Down Expand Up @@ -610,13 +610,13 @@ public async Task Test012_Should_Create_Token_With_UI_Structure()

AssertLogger.IsTrue(response.IsSuccessStatusCode, "Create UI structure delivery token failed", "UIStructureCreateSuccess");

var responseObject = response.OpenJObjectResponse();
var tokenData = responseObject["token"] as JObject;
var responseObject = response.OpenJsonObjectResponse();
var tokenData = responseObject["token"] as JsonObject;
AssertLogger.IsNotNull(tokenData["uid"], "Token should have UID");
AssertLogger.AreEqual(uiStructureTokenModel.Name, tokenData["name"]?.ToString(), "Token name should match", "UITokenName");

// Verify the scope structure matches UI format
var scope = tokenData["scope"] as JArray;
var scope = tokenData["scope"] as JsonArray;
AssertLogger.IsNotNull(scope, "Token should have scope");
AssertLogger.IsTrue(scope.Count == 2, "Token should have 2 scope modules (environment and branch)", "UIScopeCount");

Expand Down Expand Up @@ -654,10 +654,10 @@ public async Task Test015_Should_Query_Delivery_Tokens_Async()

AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Async query delivery tokens failed: {response.OpenResponse()}", "AsyncQuerySuccess");

var responseObject = response.OpenJObjectResponse();
var responseObject = response.OpenJsonObjectResponse();
AssertLogger.IsNotNull(responseObject["tokens"], "Response should contain tokens array");

var tokens = responseObject["tokens"] as JArray;
var tokens = responseObject["tokens"] as JsonArray;
AssertLogger.IsTrue(tokens.Count > 0, "Should have at least one delivery token", "AsyncTokensCount");

bool foundTestToken = false;
Expand Down Expand Up @@ -717,8 +717,8 @@ public async Task Test016_Should_Create_Token_With_Empty_Description()

AssertLogger.IsTrue(response.IsSuccessStatusCode, $"Create token with empty description failed: {response.OpenResponse()}", "EmptyDescCreateSuccess");

var responseObject = response.OpenJObjectResponse();
var tokenData = responseObject["token"] as JObject;
var responseObject = response.OpenJsonObjectResponse();
var tokenData = responseObject["token"] as JsonObject;
AssertLogger.IsNotNull(tokenData["uid"], "Token should have UID");
AssertLogger.AreEqual(emptyDescTokenModel.Name, tokenData["name"]?.ToString(), "Token name should match", "EmptyDescTokenName");

Expand Down Expand Up @@ -947,8 +947,8 @@ public void Test023_Should_Accept_Create_With_Whitespace_Only_Name()
AssertLogger.IsTrue(response.IsSuccessStatusCode, "Should accept token with whitespace name");

// Get token UID for cleanup
var responseObject = response.OpenJObjectResponse();
var tokenData = responseObject["token"] as JObject;
var responseObject = response.OpenJsonObjectResponse();
var tokenData = responseObject["token"] as JsonObject;
string createdTokenUid = tokenData["uid"]?.ToString();

// Verify name contains whitespace
Expand Down Expand Up @@ -999,8 +999,8 @@ public void Test025_Should_Accept_Create_With_Invalid_Name_Characters()
AssertLogger.IsTrue(response.IsSuccessStatusCode, "Should accept token with special characters");

// Get token UID for cleanup
var responseObject = response.OpenJObjectResponse();
var tokenData = responseObject["token"] as JObject;
var responseObject = response.OpenJsonObjectResponse();
var tokenData = responseObject["token"] as JsonObject;
string createdTokenUid = tokenData["uid"]?.ToString();

// Verify name contains special characters
Expand Down Expand Up @@ -1690,7 +1690,7 @@ public void Test070_Should_Accept_Query_With_Negative_Limit()
AssertLogger.IsTrue(response.IsSuccessStatusCode, "Should accept query with negative limit");

// Server should return results even with negative limit
var tokens = response.OpenJObjectResponse()["tokens"];
var tokens = response.OpenJsonObjectResponse()["tokens"];
AssertLogger.IsNotNull(tokens, "Should return tokens array");
}
catch (ArgumentException ex)
Expand Down Expand Up @@ -1735,7 +1735,7 @@ public void Test072_Should_Accept_Query_With_Excessive_Limit()
AssertLogger.IsTrue(response.IsSuccessStatusCode, "Should accept query with large limit");

// Server should return results even with excessive limit
var tokens = response.OpenJObjectResponse()["tokens"];
var tokens = response.OpenJsonObjectResponse()["tokens"];
AssertLogger.IsNotNull(tokens, "Should return tokens array");
}
catch (ArgumentException ex)
Expand Down Expand Up @@ -1789,7 +1789,7 @@ public async Task Test074_Should_Accept_Query_With_Invalid_Parameters_Async()
AssertLogger.IsTrue(response.IsSuccessStatusCode, "Should accept async query with negative limit");

// Server should return results even with negative limit
var tokens = response.OpenJObjectResponse()["tokens"];
var tokens = response.OpenJsonObjectResponse()["tokens"];
AssertLogger.IsNotNull(tokens, "Should return tokens array");
}
catch (ArgumentException ex)
Expand Down Expand Up @@ -1912,8 +1912,8 @@ public async Task Test082_Should_Handle_Permission_Scenarios_Async()
if (createResponse.IsSuccessStatusCode)
{
// Clean up the test token if created
var responseObject = createResponse.OpenJObjectResponse();
var tokenData = responseObject["token"] as JObject;
var responseObject = createResponse.OpenJsonObjectResponse();
var tokenData = responseObject["token"] as JsonObject;
string tokenUid = tokenData["uid"]?.ToString();

if (!string.IsNullOrEmpty(tokenUid))
Expand Down Expand Up @@ -2004,7 +2004,7 @@ public async Task Test091_Should_Handle_Large_Response_Data()

if (response.IsSuccessStatusCode)
{
var responseObject = response.OpenJObjectResponse();
var responseObject = response.OpenJsonObjectResponse();
AssertLogger.IsNotNull(responseObject, "Response should be parseable even if large");
}
}
Expand Down Expand Up @@ -2176,7 +2176,7 @@ public async Task Cleanup()
var tokensResponse = _stack.DeliveryToken().Query().Find();
if (tokensResponse.IsSuccessStatusCode)
{
var tokens = tokensResponse.OpenJObjectResponse()["tokens"] as JArray;
var tokens = tokensResponse.OpenJsonObjectResponse()["tokens"] as JsonArray;
if (tokens?.Count > 0)
{
foreach (var token in tokens)
Expand Down Expand Up @@ -2229,7 +2229,7 @@ private async Task CleanupTestResources()
var tokensResponse = _stack.DeliveryToken().Query().Find();
if (tokensResponse.IsSuccessStatusCode)
{
var tokens = tokensResponse.OpenJObjectResponse()["tokens"] as JArray;
var tokens = tokensResponse.OpenJsonObjectResponse()["tokens"] as JsonArray;
if (tokens?.Count > 0)
{
foreach (var token in tokens)
Expand Down Expand Up @@ -2265,7 +2265,7 @@ private async Task CleanupTestResources()
var environmentsResponse = _stack.Environment().Query().Find();
if (environmentsResponse.IsSuccessStatusCode)
{
var environments = environmentsResponse.OpenJObjectResponse()["environments"] as JArray;
var environments = environmentsResponse.OpenJsonObjectResponse()["environments"] as JsonArray;
if (environments?.Count > 0)
{
foreach (var env in environments)
Expand Down Expand Up @@ -2592,8 +2592,8 @@ private async Task<string> CreateTemporaryTokenForTesting(string baseName)

if (response.IsSuccessStatusCode)
{
var responseObject = response.OpenJObjectResponse();
var tokenData = responseObject["token"] as JObject;
var responseObject = response.OpenJsonObjectResponse();
var tokenData = responseObject["token"] as JsonObject;
return tokenData["uid"]?.ToString();
}
}
Expand Down Expand Up @@ -2630,7 +2630,7 @@ private async Task CreateTestEnvironment(string environmentUid = null)
response = _stack.Environment().Query().Find();
if (response.IsSuccessStatusCode)
{
var environments = response.OpenJObjectResponse()["environments"] as JArray;
var environments = response.OpenJsonObjectResponse()["environments"] as JsonArray;
if (environments?.Count > 0)
{
Console.WriteLine($"Test environment {envUid} already exists");
Expand Down Expand Up @@ -2664,7 +2664,7 @@ private async Task CleanupTestEnvironment(string environmentUid = null)

if (queryResponse.IsSuccessStatusCode)
{
var environments = queryResponse.OpenJObjectResponse()["environments"] as JArray;
var environments = queryResponse.OpenJsonObjectResponse()["environments"] as JsonArray;
if (environments?.Count > 0)
{
// Find the environment with matching name
Expand Down
Loading
Loading