port AutofillParser unit tests to .net 8
This commit is contained in:
		@@ -3,17 +3,6 @@ Microsoft Visual Studio Solution File, Format Version 12.00
 | 
				
			|||||||
# Visual Studio Version 17
 | 
					# Visual Studio Version 17
 | 
				
			||||||
VisualStudioVersion = 17.4.33205.214
 | 
					VisualStudioVersion = 17.4.33205.214
 | 
				
			||||||
MinimumVisualStudioVersion = 10.0.40219.1
 | 
					MinimumVisualStudioVersion = 10.0.40219.1
 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Kp2aAutofillParserTest", "Kp2aAutofillParserTest\Kp2aAutofillParserTest.csproj", "{3D1560FF-86BB-4CB4-8367-80BA13B81C38}"
 | 
					 | 
				
			||||||
EndProject
 | 
					 | 
				
			||||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ZlibAndroid", "ZlibAndroid\ZlibAndroid.csproj", "{1DF9DA08-D2FE-4227-BD53-761CD3F6CA42}"
 | 
					Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ZlibAndroid", "ZlibAndroid\ZlibAndroid.csproj", "{1DF9DA08-D2FE-4227-BD53-761CD3F6CA42}"
 | 
				
			||||||
EndProject
 | 
					EndProject
 | 
				
			||||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TwofishCipher", "TwofishCipher\TwofishCipher.csproj", "{69D491AA-3A31-4467-8216-3641A4F157BE}"
 | 
					Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TwofishCipher", "TwofishCipher\TwofishCipher.csproj", "{69D491AA-3A31-4467-8216-3641A4F157BE}"
 | 
				
			||||||
@@ -38,6 +27,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Kp2aKeyboardBinding", "Kp2a
 | 
				
			|||||||
EndProject
 | 
					EndProject
 | 
				
			||||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PCloudBindings", "PCloudBindings\PCloudBindings.csproj", "{D5F03D6D-B233-4716-93B5-18C2D965B5EC}"
 | 
					Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PCloudBindings", "PCloudBindings\PCloudBindings.csproj", "{D5F03D6D-B233-4716-93B5-18C2D965B5EC}"
 | 
				
			||||||
EndProject
 | 
					EndProject
 | 
				
			||||||
 | 
					Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Kp2aAutofillParser.Tests", "Kp2aAutofillParser.Tests\Kp2aAutofillParser.Tests.csproj", "{F5A2A8F9-C084-498F-9603-9D927BA5C626}"
 | 
				
			||||||
 | 
					EndProject
 | 
				
			||||||
Global
 | 
					Global
 | 
				
			||||||
	GlobalSection(SolutionConfigurationPlatforms) = preSolution
 | 
						GlobalSection(SolutionConfigurationPlatforms) = preSolution
 | 
				
			||||||
		Debug|Any CPU = Debug|Any CPU
 | 
							Debug|Any CPU = Debug|Any CPU
 | 
				
			||||||
@@ -54,30 +45,6 @@ Global
 | 
				
			|||||||
		ReleaseNoNet|x64 = ReleaseNoNet|x64
 | 
							ReleaseNoNet|x64 = ReleaseNoNet|x64
 | 
				
			||||||
	EndGlobalSection
 | 
						EndGlobalSection
 | 
				
			||||||
	GlobalSection(ProjectConfigurationPlatforms) = postSolution
 | 
						GlobalSection(ProjectConfigurationPlatforms) = postSolution
 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.Debug|Any CPU.Build.0 = Debug|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.Debug|Win32.ActiveCfg = Debug|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.Debug|Win32.Build.0 = Debug|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.Debug|x64.ActiveCfg = Debug|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.Debug|x64.Build.0 = Debug|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.Release|Any CPU.ActiveCfg = Release|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.Release|Any CPU.Build.0 = Release|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.Release|Win32.ActiveCfg = Release|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.Release|Win32.Build.0 = Release|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.Release|x64.ActiveCfg = Release|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.Release|x64.Build.0 = Release|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.ReleaseNoNet|Any CPU.ActiveCfg = Release|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.ReleaseNoNet|Any CPU.Build.0 = Release|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.ReleaseNoNet|Mixed Platforms.ActiveCfg = Release|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.ReleaseNoNet|Mixed Platforms.Build.0 = Release|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.ReleaseNoNet|Win32.ActiveCfg = Release|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.ReleaseNoNet|Win32.Build.0 = Release|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.ReleaseNoNet|x64.ActiveCfg = Release|Any CPU
 | 
					 | 
				
			||||||
		{3D1560FF-86BB-4CB4-8367-80BA13B81C38}.ReleaseNoNet|x64.Build.0 = Release|Any CPU
 | 
					 | 
				
			||||||
		{1DF9DA08-D2FE-4227-BD53-761CD3F6CA42}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 | 
							{1DF9DA08-D2FE-4227-BD53-761CD3F6CA42}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 | 
				
			||||||
		{1DF9DA08-D2FE-4227-BD53-761CD3F6CA42}.Debug|Any CPU.Build.0 = Debug|Any CPU
 | 
							{1DF9DA08-D2FE-4227-BD53-761CD3F6CA42}.Debug|Any CPU.Build.0 = Debug|Any CPU
 | 
				
			||||||
		{1DF9DA08-D2FE-4227-BD53-761CD3F6CA42}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 | 
							{1DF9DA08-D2FE-4227-BD53-761CD3F6CA42}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 | 
				
			||||||
@@ -378,6 +345,30 @@ Global
 | 
				
			|||||||
		{D5F03D6D-B233-4716-93B5-18C2D965B5EC}.ReleaseNoNet|Win32.Build.0 = Release|Any CPU
 | 
							{D5F03D6D-B233-4716-93B5-18C2D965B5EC}.ReleaseNoNet|Win32.Build.0 = Release|Any CPU
 | 
				
			||||||
		{D5F03D6D-B233-4716-93B5-18C2D965B5EC}.ReleaseNoNet|x64.ActiveCfg = Release|Any CPU
 | 
							{D5F03D6D-B233-4716-93B5-18C2D965B5EC}.ReleaseNoNet|x64.ActiveCfg = Release|Any CPU
 | 
				
			||||||
		{D5F03D6D-B233-4716-93B5-18C2D965B5EC}.ReleaseNoNet|x64.Build.0 = Release|Any CPU
 | 
							{D5F03D6D-B233-4716-93B5-18C2D965B5EC}.ReleaseNoNet|x64.Build.0 = Release|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.Debug|Any CPU.Build.0 = Debug|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.Debug|Win32.ActiveCfg = Debug|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.Debug|Win32.Build.0 = Debug|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.Debug|x64.ActiveCfg = Debug|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.Debug|x64.Build.0 = Debug|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.Release|Any CPU.ActiveCfg = Release|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.Release|Any CPU.Build.0 = Release|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.Release|Mixed Platforms.Build.0 = Release|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.Release|Win32.ActiveCfg = Release|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.Release|Win32.Build.0 = Release|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.Release|x64.ActiveCfg = Release|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.Release|x64.Build.0 = Release|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.ReleaseNoNet|Any CPU.ActiveCfg = Release|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.ReleaseNoNet|Any CPU.Build.0 = Release|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.ReleaseNoNet|Mixed Platforms.ActiveCfg = Release|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.ReleaseNoNet|Mixed Platforms.Build.0 = Release|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.ReleaseNoNet|Win32.ActiveCfg = Release|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.ReleaseNoNet|Win32.Build.0 = Release|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.ReleaseNoNet|x64.ActiveCfg = Release|Any CPU
 | 
				
			||||||
 | 
							{F5A2A8F9-C084-498F-9603-9D927BA5C626}.ReleaseNoNet|x64.Build.0 = Release|Any CPU
 | 
				
			||||||
	EndGlobalSection
 | 
						EndGlobalSection
 | 
				
			||||||
	GlobalSection(SolutionProperties) = preSolution
 | 
						GlobalSection(SolutionProperties) = preSolution
 | 
				
			||||||
		HideSolutionNode = FALSE
 | 
							HideSolutionNode = FALSE
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -26,55 +26,55 @@ namespace Kp2aAutofillParserTest
 | 
				
			|||||||
        [Fact]
 | 
					        [Fact]
 | 
				
			||||||
        public void TestNotFocusedPasswordAutoIsNotFilled()
 | 
					        public void TestNotFocusedPasswordAutoIsNotFilled()
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            var resourceName = "Kp2aAutofillParserTest.com-servicenet-mobile-no-focus.json";
 | 
					            var resourceName = "com-servicenet-mobile-no-focus.json";
 | 
				
			||||||
            RunTestFromAutofillInput(resourceName, "com.servicenet.mobile");
 | 
					            RunTestFromAutofillInput(resourceName, "com.servicenet.mobile");
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        [Fact]
 | 
					        [Fact]
 | 
				
			||||||
        public void TestCrashRegressionEmptySequence()
 | 
					        public void TestCrashRegressionEmptySequence()
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            var resourceName = "Kp2aAutofillParserTest.imdb.json";
 | 
					            var resourceName = "imdb.json";
 | 
				
			||||||
            RunTestFromAutofillInput(resourceName, "com.vivaldi.browser", "m.imdb.com");
 | 
					            RunTestFromAutofillInput(resourceName, "com.vivaldi.browser", "m.imdb.com");
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        [Fact]
 | 
					        [Fact]
 | 
				
			||||||
        public void TestFocusedPasswordAutoIsFilled()
 | 
					        public void TestFocusedPasswordAutoIsFilled()
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            var resourceName = "Kp2aAutofillParserTest.com-servicenet-mobile-focused.json";
 | 
					            var resourceName = "com-servicenet-mobile-focused.json";
 | 
				
			||||||
            RunTestFromAutofillInput(resourceName, "com.servicenet.mobile");
 | 
					            RunTestFromAutofillInput(resourceName, "com.servicenet.mobile");
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        [Fact]
 | 
					        [Fact]
 | 
				
			||||||
        public void TestMulitpleUnfocusedLoginsIsFilled()
 | 
					        public void TestMulitpleUnfocusedLoginsIsFilled()
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            var resourceName = "Kp2aAutofillParserTest.firefox-amazon-it.json";
 | 
					            var resourceName = "firefox-amazon-it.json";
 | 
				
			||||||
            RunTestFromAutofillInput(resourceName, "org.mozilla.firefox", "www.amazon.it");
 | 
					            RunTestFromAutofillInput(resourceName, "org.mozilla.firefox", "www.amazon.it");
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        [Fact]
 | 
					        [Fact]
 | 
				
			||||||
        public void CanDetectFieldsWithoutAutofillHints()
 | 
					        public void CanDetectFieldsWithoutAutofillHints()
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            var resourceName = "Kp2aAutofillParserTest.chrome-android10-amazon-it.json";
 | 
					            var resourceName = "chrome-android10-amazon-it.json";
 | 
				
			||||||
            RunTestFromAutofillInput(resourceName, "com.android.chrome", "www.amazon.it");
 | 
					            RunTestFromAutofillInput(resourceName, "com.android.chrome", "www.amazon.it");
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        
 | 
					        
 | 
				
			||||||
        [Fact]
 | 
					        [Fact]
 | 
				
			||||||
        public void DetectsUsernameFieldDespitePasswordAutoHint()
 | 
					        public void DetectsUsernameFieldDespitePasswordAutoHint()
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            var resourceName = "Kp2aAutofillParserTest.com-ifs-banking-fiid3364-android13.json";
 | 
					            var resourceName = "com-ifs-banking-fiid3364-android13.json";
 | 
				
			||||||
            RunTestFromAutofillInput(resourceName, "com.ifs.banking.fiid3364", null);
 | 
					            RunTestFromAutofillInput(resourceName, "com.ifs.banking.fiid3364", null);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        [Fact]
 | 
					        [Fact]
 | 
				
			||||||
        public void DetectsEmailAutofillHint()
 | 
					        public void DetectsEmailAutofillHint()
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            var resourceName = "Kp2aAutofillParserTest.com-expressvpn-vpn-android13.json";
 | 
					            var resourceName = "com-expressvpn-vpn-android13.json";
 | 
				
			||||||
            RunTestFromAutofillInput(resourceName, "com.expressvpn.vpn", null);
 | 
					            RunTestFromAutofillInput(resourceName, "com.expressvpn.vpn", null);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        [Fact]
 | 
					        [Fact]
 | 
				
			||||||
        public void TestIgnoresAndroidSettings()
 | 
					        public void TestIgnoresAndroidSettings()
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            var resourceName = "Kp2aAutofillParserTest.android14-settings.json";
 | 
					            var resourceName = "android14-settings.json";
 | 
				
			||||||
            RunTestFromAutofillInput(resourceName, "com.android.settings", null);
 | 
					            RunTestFromAutofillInput(resourceName, "com.android.settings", null);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -82,9 +82,8 @@ namespace Kp2aAutofillParserTest
 | 
				
			|||||||
        {
 | 
					        {
 | 
				
			||||||
            var assembly = Assembly.GetExecutingAssembly();
 | 
					            var assembly = Assembly.GetExecutingAssembly();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
            string input;
 | 
					            string input;
 | 
				
			||||||
            using (Stream stream = assembly.GetManifestResourceStream(resourceName))
 | 
					            using (Stream stream = assembly.GetManifestResourceStream(assembly.GetName().Name + "." + resourceName))
 | 
				
			||||||
            using (StreamReader reader = new StreamReader(stream))
 | 
					            using (StreamReader reader = new StreamReader(stream))
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
                input = reader.ReadToEnd();
 | 
					                input = reader.ReadToEnd();
 | 
				
			||||||
@@ -1,16 +1,18 @@
 | 
				
			|||||||
<Project Sdk="Microsoft.NET.Sdk">
 | 
					<Project Sdk="Microsoft.NET.Sdk">
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  <PropertyGroup>
 | 
					  <PropertyGroup>
 | 
				
			||||||
    <TargetFramework>net6.0</TargetFramework>
 | 
					    <TargetFramework>net8.0</TargetFramework>
 | 
				
			||||||
    <ImplicitUsings>enable</ImplicitUsings>
 | 
					    <ImplicitUsings>enable</ImplicitUsings>
 | 
				
			||||||
    <Nullable>enable</Nullable>
 | 
					    <Nullable>enable</Nullable>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    <IsPackable>false</IsPackable>
 | 
					    <IsPackable>false</IsPackable>
 | 
				
			||||||
 | 
					    <IsTestProject>true</IsTestProject>
 | 
				
			||||||
  </PropertyGroup>
 | 
					  </PropertyGroup>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  <ItemGroup>
 | 
					  <ItemGroup>
 | 
				
			||||||
    <None Remove="android14-settings.json" />
 | 
					    <None Remove="android14-settings.json" />
 | 
				
			||||||
    <None Remove="chrome-android10-amazon-it.json" />
 | 
					    <None Remove="chrome-android10-amazon-it.json" />
 | 
				
			||||||
 | 
					    <None Remove="citibank.json" />
 | 
				
			||||||
    <None Remove="com-expressvpn-vpn-android13.json" />
 | 
					    <None Remove="com-expressvpn-vpn-android13.json" />
 | 
				
			||||||
    <None Remove="com-ifs-banking-fiid3364-android13.json" />
 | 
					    <None Remove="com-ifs-banking-fiid3364-android13.json" />
 | 
				
			||||||
    <None Remove="com-servicenet-mobile-focused.json" />
 | 
					    <None Remove="com-servicenet-mobile-focused.json" />
 | 
				
			||||||
@@ -20,16 +22,10 @@
 | 
				
			|||||||
  </ItemGroup>
 | 
					  </ItemGroup>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  <ItemGroup>
 | 
					  <ItemGroup>
 | 
				
			||||||
    <PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.11.1" />
 | 
					    <PackageReference Include="coverlet.collector" Version="6.0.0" />
 | 
				
			||||||
    <PackageReference Include="xunit" Version="2.4.2" />
 | 
					    <PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.8.0" />
 | 
				
			||||||
    <PackageReference Include="xunit.runner.visualstudio" Version="2.4.5">
 | 
					    <PackageReference Include="xunit" Version="2.5.3" />
 | 
				
			||||||
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
 | 
					    <PackageReference Include="xunit.runner.visualstudio" Version="2.5.3" />
 | 
				
			||||||
      <PrivateAssets>all</PrivateAssets>
 | 
					 | 
				
			||||||
    </PackageReference>
 | 
					 | 
				
			||||||
    <PackageReference Include="coverlet.collector" Version="6.0.2">
 | 
					 | 
				
			||||||
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
 | 
					 | 
				
			||||||
      <PrivateAssets>all</PrivateAssets>
 | 
					 | 
				
			||||||
    </PackageReference>
 | 
					 | 
				
			||||||
  </ItemGroup>
 | 
					  </ItemGroup>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  <ItemGroup>
 | 
					  <ItemGroup>
 | 
				
			||||||
@@ -37,25 +33,28 @@
 | 
				
			|||||||
  </ItemGroup>
 | 
					  </ItemGroup>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  <ItemGroup>
 | 
					  <ItemGroup>
 | 
				
			||||||
 | 
					    <EmbeddedResource Include="android14-settings.json">
 | 
				
			||||||
 | 
					      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
 | 
				
			||||||
 | 
					    </EmbeddedResource>
 | 
				
			||||||
    <EmbeddedResource Include="chrome-android10-amazon-it.json">
 | 
					    <EmbeddedResource Include="chrome-android10-amazon-it.json">
 | 
				
			||||||
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
 | 
					      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
 | 
				
			||||||
    </EmbeddedResource>
 | 
					    </EmbeddedResource>
 | 
				
			||||||
 | 
					    <EmbeddedResource Include="citibank.json">
 | 
				
			||||||
 | 
					      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
 | 
				
			||||||
 | 
					    </EmbeddedResource>
 | 
				
			||||||
    <EmbeddedResource Include="com-expressvpn-vpn-android13.json">
 | 
					    <EmbeddedResource Include="com-expressvpn-vpn-android13.json">
 | 
				
			||||||
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
 | 
					      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
 | 
				
			||||||
    </EmbeddedResource>
 | 
					    </EmbeddedResource>
 | 
				
			||||||
    <EmbeddedResource Include="com-ifs-banking-fiid3364-android13.json">
 | 
					    <EmbeddedResource Include="com-ifs-banking-fiid3364-android13.json">
 | 
				
			||||||
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
 | 
					      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
 | 
				
			||||||
    </EmbeddedResource>
 | 
					    </EmbeddedResource>
 | 
				
			||||||
    <EmbeddedResource Include="firefox-amazon-it.json">
 | 
					 | 
				
			||||||
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
 | 
					 | 
				
			||||||
    </EmbeddedResource>
 | 
					 | 
				
			||||||
    <EmbeddedResource Include="com-servicenet-mobile-focused.json">
 | 
					    <EmbeddedResource Include="com-servicenet-mobile-focused.json">
 | 
				
			||||||
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
 | 
					      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
 | 
				
			||||||
    </EmbeddedResource>
 | 
					    </EmbeddedResource>
 | 
				
			||||||
    <EmbeddedResource Include="com-servicenet-mobile-no-focus.json">
 | 
					    <EmbeddedResource Include="com-servicenet-mobile-no-focus.json">
 | 
				
			||||||
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
 | 
					      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
 | 
				
			||||||
    </EmbeddedResource>
 | 
					    </EmbeddedResource>
 | 
				
			||||||
    <EmbeddedResource Include="android14-settings.json">
 | 
					    <EmbeddedResource Include="firefox-amazon-it.json">
 | 
				
			||||||
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
 | 
					      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
 | 
				
			||||||
    </EmbeddedResource>
 | 
					    </EmbeddedResource>
 | 
				
			||||||
    <EmbeddedResource Include="imdb.json">
 | 
					    <EmbeddedResource Include="imdb.json">
 | 
				
			||||||
@@ -63,4 +62,8 @@
 | 
				
			|||||||
    </EmbeddedResource>
 | 
					    </EmbeddedResource>
 | 
				
			||||||
  </ItemGroup>
 | 
					  </ItemGroup>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  <ItemGroup>
 | 
				
			||||||
 | 
					    <Using Include="Xunit" />
 | 
				
			||||||
 | 
					  </ItemGroup>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
</Project>
 | 
					</Project>
 | 
				
			||||||
@@ -1,7 +1,6 @@
 | 
				
			|||||||
<Project Sdk="Microsoft.NET.Sdk">
 | 
					<Project Sdk="Microsoft.NET.Sdk">
 | 
				
			||||||
  <PropertyGroup>
 | 
					  <PropertyGroup>
 | 
				
			||||||
    <TargetFramework>net8.0-android</TargetFramework>
 | 
					    <TargetFramework>net8.0</TargetFramework>
 | 
				
			||||||
    <SupportedOSPlatformVersion>21</SupportedOSPlatformVersion>
 | 
					 | 
				
			||||||
    <Nullable>enable</Nullable>
 | 
					    <Nullable>enable</Nullable>
 | 
				
			||||||
    <ImplicitUsings>enable</ImplicitUsings>
 | 
					    <ImplicitUsings>enable</ImplicitUsings>
 | 
				
			||||||
  </PropertyGroup>
 | 
					  </PropertyGroup>
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user