Skip to content

Commit 8e65808

Browse files
rmarinhoCopilot
andcommitted
Address @jonathanpeppers review: TCP-only enum, add ToSocketSpec tests
- Remove LocalAbstract, LocalReserved, LocalFilesystem from AdbProtocol enum (add later when needed) - Simplify ToSocketSpec and TryParse to only handle TCP - Add ToSocketSpec unit tests: HighPort, LowPort, InvalidProtocol_Throws - Add TryParse test: NonTcpProtocol_ReturnsNull - Remove 3 non-TCP TryParse tests - Update PublicAPI files (remove 3 enum entries per TFM) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 4482a99 commit 8e65808

5 files changed

Lines changed: 24 additions & 50 deletions

File tree

src/Xamarin.Android.Tools.AndroidSdk/PublicAPI/net10.0/PublicAPI.Unshipped.txt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -191,9 +191,7 @@ Xamarin.Android.Tools.AdbPortSpec.Protocol.get -> Xamarin.Android.Tools.AdbProto
191191
Xamarin.Android.Tools.AdbPortSpec.Protocol.init -> void
192192
Xamarin.Android.Tools.AdbPortSpec.ToSocketSpec() -> string!
193193
Xamarin.Android.Tools.AdbProtocol
194-
Xamarin.Android.Tools.AdbProtocol.LocalAbstract = 1 -> Xamarin.Android.Tools.AdbProtocol
195-
Xamarin.Android.Tools.AdbProtocol.LocalFilesystem = 3 -> Xamarin.Android.Tools.AdbProtocol
196-
Xamarin.Android.Tools.AdbProtocol.LocalReserved = 2 -> Xamarin.Android.Tools.AdbProtocol
194+
197195
Xamarin.Android.Tools.AdbProtocol.Tcp = 0 -> Xamarin.Android.Tools.AdbProtocol
198196
override Xamarin.Android.Tools.AdbPortSpec.ToString() -> string!
199197
static Xamarin.Android.Tools.AdbPortSpec.TryParse(string? socketSpec) -> Xamarin.Android.Tools.AdbPortSpec?

src/Xamarin.Android.Tools.AndroidSdk/PublicAPI/netstandard2.0/PublicAPI.Unshipped.txt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -191,9 +191,7 @@ Xamarin.Android.Tools.AdbPortSpec.Protocol.get -> Xamarin.Android.Tools.AdbProto
191191
Xamarin.Android.Tools.AdbPortSpec.Protocol.init -> void
192192
Xamarin.Android.Tools.AdbPortSpec.ToSocketSpec() -> string!
193193
Xamarin.Android.Tools.AdbProtocol
194-
Xamarin.Android.Tools.AdbProtocol.LocalAbstract = 1 -> Xamarin.Android.Tools.AdbProtocol
195-
Xamarin.Android.Tools.AdbProtocol.LocalFilesystem = 3 -> Xamarin.Android.Tools.AdbProtocol
196-
Xamarin.Android.Tools.AdbProtocol.LocalReserved = 2 -> Xamarin.Android.Tools.AdbProtocol
194+
197195
Xamarin.Android.Tools.AdbProtocol.Tcp = 0 -> Xamarin.Android.Tools.AdbProtocol
198196
override Xamarin.Android.Tools.AdbPortSpec.ToString() -> string!
199197
static Xamarin.Android.Tools.AdbPortSpec.TryParse(string? socketSpec) -> Xamarin.Android.Tools.AdbPortSpec?

src/Xamarin.Android.Tools.AndroidSdk/Runners/AdbPortSpec.cs

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,6 @@ public record AdbPortSpec (AdbProtocol Protocol, int Port)
1515
/// </summary>
1616
public string ToSocketSpec () => Protocol switch {
1717
AdbProtocol.Tcp => $"tcp:{Port}",
18-
AdbProtocol.LocalAbstract => $"localabstract:{Port}",
19-
AdbProtocol.LocalReserved => $"localreserved:{Port}",
20-
AdbProtocol.LocalFilesystem => $"localfilesystem:{Port}",
2118
_ => throw new ArgumentOutOfRangeException (nameof (Protocol), Protocol, $"Unsupported ADB protocol: {Protocol}"),
2219
};
2320

@@ -42,9 +39,6 @@ public record AdbPortSpec (AdbProtocol Protocol, int Port)
4239

4340
var protocol = protocolStr.ToLowerInvariant () switch {
4441
"tcp" => (AdbProtocol?) AdbProtocol.Tcp,
45-
"localabstract" => AdbProtocol.LocalAbstract,
46-
"localreserved" => AdbProtocol.LocalReserved,
47-
"localfilesystem" => AdbProtocol.LocalFilesystem,
4842
_ => null,
4943
};
5044

src/Xamarin.Android.Tools.AndroidSdk/Runners/AdbProtocol.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ namespace Xamarin.Android.Tools;
88
/// </summary>
99
public enum AdbProtocol
1010
{
11+
/// <summary>
12+
/// TCP socket spec, e.g. "tcp:5000".
13+
/// </summary>
1114
Tcp,
12-
LocalAbstract,
13-
LocalReserved,
14-
LocalFilesystem,
1515
}

tests/Xamarin.Android.Tools.AndroidSdk-Tests/AdbRunnerTests.cs

Lines changed: 19 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -878,39 +878,9 @@ public void AdbPortSpec_TryParse_ValidTcp ()
878878
}
879879

880880
[Test]
881-
public void AdbPortSpec_TryParse_ValidLocalAbstract ()
881+
public void AdbPortSpec_TryParse_NonTcpProtocol_ReturnsNull ()
882882
{
883-
var spec = AdbPortSpec.TryParse ("localabstract:9222");
884-
if (spec is null) {
885-
Assert.Fail ("Expected non-null AdbPortSpec");
886-
return;
887-
}
888-
Assert.AreEqual (AdbProtocol.LocalAbstract, spec.Protocol);
889-
Assert.AreEqual (9222, spec.Port);
890-
}
891-
892-
[Test]
893-
public void AdbPortSpec_TryParse_ValidLocalReserved ()
894-
{
895-
var spec = AdbPortSpec.TryParse ("localreserved:1234");
896-
if (spec is null) {
897-
Assert.Fail ("Expected non-null AdbPortSpec");
898-
return;
899-
}
900-
Assert.AreEqual (AdbProtocol.LocalReserved, spec.Protocol);
901-
Assert.AreEqual (1234, spec.Port);
902-
}
903-
904-
[Test]
905-
public void AdbPortSpec_TryParse_ValidLocalFilesystem ()
906-
{
907-
var spec = AdbPortSpec.TryParse ("localfilesystem:8080");
908-
if (spec is null) {
909-
Assert.Fail ("Expected non-null AdbPortSpec");
910-
return;
911-
}
912-
Assert.AreEqual (AdbProtocol.LocalFilesystem, spec.Protocol);
913-
Assert.AreEqual (8080, spec.Port);
883+
Assert.IsNull (AdbPortSpec.TryParse ("localabstract:9222"));
914884
}
915885

916886
[Test]
@@ -963,10 +933,24 @@ public void AdbPortSpec_ToSocketSpec_Tcp ()
963933
}
964934

965935
[Test]
966-
public void AdbPortSpec_ToSocketSpec_LocalAbstract ()
936+
public void AdbPortSpec_ToSocketSpec_HighPort ()
937+
{
938+
var spec = new AdbPortSpec (AdbProtocol.Tcp, 65535);
939+
Assert.AreEqual ("tcp:65535", spec.ToSocketSpec ());
940+
}
941+
942+
[Test]
943+
public void AdbPortSpec_ToSocketSpec_LowPort ()
944+
{
945+
var spec = new AdbPortSpec (AdbProtocol.Tcp, 1);
946+
Assert.AreEqual ("tcp:1", spec.ToSocketSpec ());
947+
}
948+
949+
[Test]
950+
public void AdbPortSpec_ToSocketSpec_InvalidProtocol_Throws ()
967951
{
968-
var spec = new AdbPortSpec (AdbProtocol.LocalAbstract, 9222);
969-
Assert.AreEqual ("localabstract:9222", spec.ToSocketSpec ());
952+
var spec = new AdbPortSpec ((AdbProtocol) 99, 5000);
953+
Assert.Throws<System.ArgumentOutOfRangeException> (() => spec.ToSocketSpec ());
970954
}
971955

972956
[Test]

0 commit comments

Comments
 (0)