diff --git a/Facepunch.Steamworks.Test/Facepunch.Steamworks.Test.csproj b/Facepunch.Steamworks.Test/Facepunch.Steamworks.Test.csproj
index 6054e13..c69df4d 100644
--- a/Facepunch.Steamworks.Test/Facepunch.Steamworks.Test.csproj
+++ b/Facepunch.Steamworks.Test/Facepunch.Steamworks.Test.csproj
@@ -92,6 +92,7 @@
+
diff --git a/Facepunch.Steamworks.Test/SteamNetworkingTest.cs b/Facepunch.Steamworks.Test/SteamNetworkingTest.cs
new file mode 100644
index 0000000..c07d15e
--- /dev/null
+++ b/Facepunch.Steamworks.Test/SteamNetworkingTest.cs
@@ -0,0 +1,37 @@
+using System;
+using System.Linq;
+using System.Text;
+using System.Threading;
+using System.Threading.Tasks;
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using Steamworks.Data;
+
+namespace Steamworks
+{
+ [TestClass]
+ [DeploymentItem( "steam_api64.dll" )]
+ public class SteamNetworkingTest
+ {
+ [TestMethod]
+ public async Task SendP2PPacket()
+ {
+ var sent = SteamNetworking.SendP2PPacket( SteamClient.SteamId, new byte[] { 1, 2, 3 } );
+
+ Assert.IsTrue( sent );
+
+ while ( !SteamNetworking.IsP2PPacketAvailable() )
+ {
+ await Task.Delay( 10 );
+ }
+
+ var packet = SteamNetworking.ReadP2PPacket();
+
+ Assert.IsTrue( packet.HasValue );
+
+ Assert.AreEqual( packet.Value.SteamId, SteamClient.SteamId );
+ Assert.AreEqual( packet.Value.Data[1], 2 );
+ Assert.AreEqual( packet.Value.Data.Length, 3 );
+ }
+ }
+
+}