diff --git a/test/integration/Appium.Net.Integration.Tests.csproj b/test/integration/Appium.Net.Integration.Tests.csproj
index c2cceadc2..56db6f627 100644
--- a/test/integration/Appium.Net.Integration.Tests.csproj
+++ b/test/integration/Appium.Net.Integration.Tests.csproj
@@ -16,7 +16,7 @@
runtime; build; native; contentfiles; analyzers; buildtransitive
-
+
diff --git a/test/integration/helpers/Env.cs b/test/integration/helpers/Env.cs
index f9fca01a5..d977b1e9b 100644
--- a/test/integration/helpers/Env.cs
+++ b/test/integration/helpers/Env.cs
@@ -1,7 +1,7 @@
using System;
using System.Collections.Generic;
using System.IO;
-using Newtonsoft.Json;
+using System.Text.Json;
namespace Appium.Net.Integration.Tests.helpers
{
@@ -10,32 +10,45 @@ public class Env
public static TimeSpan InitTimeoutSec = TimeSpan.FromSeconds(180);
public static TimeSpan ImplicitTimeoutSec = TimeSpan.FromSeconds(10);
- private static Dictionary _env;
+ private static Dictionary _env;
private static bool _initialized;
private static void Init()
{
+ _env = new Dictionary
+ {
+ { "DEV", JsonDocument.Parse("true").RootElement },
+ { "isRemoteAppiumServer", JsonDocument.Parse("false").RootElement },
+ { "remoteAppiumServerUri", JsonDocument.Parse("\"http://localhost:4723\"").RootElement }
+ };
+
+ if (_initialized) return;
+
try
{
- if (!_initialized)
+ _initialized = true;
+ var path = AppDomain.CurrentDomain.BaseDirectory;
+ var sr = new StreamReader(path + "env.json");
+ var jsonString = sr.ReadToEnd();
+ _env = JsonSerializer.Deserialize>(jsonString, new JsonSerializerOptions
{
- _initialized = true;
- var path = AppDomain.CurrentDomain.BaseDirectory;
- var sr = new StreamReader(path + "env.json");
- var jsonString = sr.ReadToEnd();
- _env = JsonConvert.DeserializeObject>(jsonString);
- }
+ PropertyNameCaseInsensitive = true
+ });
}
- catch
+ catch (JsonException jsonEx)
{
- _env = new Dictionary();
+ Console.WriteLine($"Error parsing JSON: {jsonEx.Message}");
+ }
+ catch (Exception ex)
+ {
+ Console.WriteLine($"Error initializing environment: {ex.Message}");
}
}
- private static bool IsTrue(string val)
+ private static bool IsTrue(object val)
{
- val = val?.ToLower().Trim();
- return (val == "true") || (val == "1");
+ val = val?.ToString().ToLower().Trim();
+ return val.Equals("true") || val.Equals("1");
}
public static bool ServerIsRemote()
@@ -47,16 +60,25 @@ public static bool ServerIsRemote()
public static bool ServerIsLocal()
{
Init();
- return _env.ContainsKey("DEV") && IsTrue(_env["DEV"]) || IsTrue(Environment.GetEnvironmentVariable("DEV"));
+ return (_env.ContainsKey("DEV") && IsTrue(_env["DEV"])) || IsTrue(Environment.GetEnvironmentVariable("DEV"));
}
public static string GetEnvVar(string name)
{
- if (_env.ContainsKey(name) && (_env[name] != null))
+ if (_env.ContainsKey(name))
{
- return _env[name];
+ JsonElement element = _env[name];
+
+ return element.ValueKind switch
+ {
+ JsonValueKind.String => element.GetString(),
+ JsonValueKind.Number => element.GetRawText(),
+ JsonValueKind.True or JsonValueKind.False => element.GetRawText(),
+ JsonValueKind.Null => null,
+ _ => element.GetRawText()
+ };
}
- return Environment.GetEnvironmentVariable(name);
+ return Environment.GetEnvironmentVariable(name);
}
}
}
\ No newline at end of file