public void TestTranslationHostObjectsWhenEmpty() { var hostServices = new HostServices(); BuildRequest request = new BuildRequest( submissionId: 1, _nodeRequestId++, 1, new string[] { "alpha", "omega" }, hostServices: hostServices, BuildEventContext.Invalid, parentRequest: null); ((ITranslatable)request).Translate(TranslationHelpers.GetWriteTranslator()); BuildRequest.FactoryForDeserialization(TranslationHelpers.GetReadTranslator()); }
public void TestTranslationRemoteHostObjects() { var stateInHostObject = 3; var hostServices = new HostServices(); var rot = new MockRunningObjectTable(); hostServices.SetTestRunningObjectTable(rot); var moniker = nameof(TestTranslationRemoteHostObjects) + Guid.NewGuid(); var remoteHost = new MockRemoteHostObject(stateInHostObject); using (var result = rot.Register(moniker, remoteHost)) { hostServices.RegisterHostObject( "WithOutOfProc.targets", "DisplayMessages", "ATask", moniker); BuildRequest request = new BuildRequest( submissionId: 1, _nodeRequestId++, 1, new string[] { "alpha", "omega" }, hostServices: hostServices, BuildEventContext.Invalid, parentRequest: null); ((ITranslatable)request).Translate(TranslationHelpers.GetWriteTranslator()); INodePacket packet = BuildRequest.FactoryForDeserialization(TranslationHelpers.GetReadTranslator()); BuildRequest deserializedRequest = packet as BuildRequest; deserializedRequest.HostServices.SetTestRunningObjectTable(rot); var hostObject = deserializedRequest.HostServices.GetHostObject( "WithOutOfProc.targets", "DisplayMessages", "ATask") as ITestRemoteHostObject; hostObject.GetState().ShouldBe(stateInHostObject); } }
public void TestTranslation() { BuildRequest request = CreateNewBuildRequest(1, new string[] { "alpha", "omega" }); Assert.Equal(NodePacketType.BuildRequest, request.Type); ((ITranslatable)request).Translate(TranslationHelpers.GetWriteTranslator()); INodePacket packet = BuildRequest.FactoryForDeserialization(TranslationHelpers.GetReadTranslator()); BuildRequest deserializedRequest = packet as BuildRequest; Assert.Equal(request.BuildEventContext, deserializedRequest.BuildEventContext); Assert.Equal(request.ConfigurationId, deserializedRequest.ConfigurationId); Assert.Equal(request.GlobalRequestId, deserializedRequest.GlobalRequestId); Assert.Equal(request.IsConfigurationResolved, deserializedRequest.IsConfigurationResolved); Assert.Equal(request.NodeRequestId, deserializedRequest.NodeRequestId); Assert.Equal(request.ParentBuildEventContext, deserializedRequest.ParentBuildEventContext); Assert.Equal(request.Targets.Count, deserializedRequest.Targets.Count); for (int i = 0; i < request.Targets.Count; i++) { Assert.Equal(request.Targets[i], deserializedRequest.Targets[i]); } }