public void Test_00__native <T>(T data) where T : unmanaged { DataStream from = DataStream.FromUnmanaged(data); string b64 = from.ToBase64(); string hex = from.ToHexString(); byte[] arr = from.ToBytes(); T t1 = DataStream.FromBytes(arr).ToUnmanaged <T>(); T t2 = DataStream.FromBase64(b64).ToUnmanaged <T>(); T t3 = DataStream.FromHex(hex).ToUnmanaged <T>(); Assert.AreEqual(data, t1); Assert.AreEqual(data, t2); Assert.AreEqual(data, t3); }
public void StreamsCanBeSentToListening() { using (var octopus = new HalibutRuntime(services, Certificates.Octopus)) using (var tentacleListening = new HalibutRuntime(services, Certificates.TentacleListening)) { var tentaclePort = tentacleListening.Listen(); tentacleListening.Trust(Certificates.OctopusPublicThumbprint); var data = new byte[1024 * 1024 + 15]; new Random().NextBytes(data); var echo = octopus.CreateClient <IEchoService>("https://localhost:" + tentaclePort, Certificates.TentacleListeningPublicThumbprint); for (var i = 0; i < 100; i++) { var count = echo.CountBytes(DataStream.FromBytes(data)); Assert.That(count, Is.EqualTo(1024 * 1024 + 15)); } } }
public void StreamsCanBeSentToPolling() { using (var octopus = new HalibutRuntime(services, Certificates.Octopus)) using (var tentaclePolling = new HalibutRuntime(services, Certificates.TentaclePolling)) { var octopusPort = octopus.Listen(); octopus.Trust(Certificates.TentaclePollingPublicThumbprint); tentaclePolling.Poll(new Uri("poll://SQ-TENTAPOLL"), new ServiceEndPoint(new Uri("https://localhost:" + octopusPort), Certificates.OctopusPublicThumbprint)); var echo = octopus.CreateClient <IEchoService>("poll://SQ-TENTAPOLL", Certificates.TentaclePollingPublicThumbprint); var data = new byte[1024 * 1024 + 15]; new Random().NextBytes(data); for (var i = 0; i < 100; i++) { var count = echo.CountBytes(DataStream.FromBytes(data)); count.Should().Be(1024 * 1024 + 15); } } }
public override string ToString() => $"{Occurrence}x {Codepoint}: {DataStream.FromBytes(Sequence).ToHexString()}";