public void ParseLogOutput() { var processControl = new ProcessObserver<ChangeLogInfo>(); PlasticXmlOutputParser.ChangeLogInfoFromTextReaderXml(new StringReader(Resources.logoutput), processControl, CancellationToken.None); var output = processControl.Output.ToList(); Assert.AreEqual(1, output.Count); var first = output[0]; Assert.AreEqual(2114, first.ChangesetId); Assert.AreEqual(242, first.Changes.Count); }
public void ParseAddOutputTest() { var processControl = new ProcessObserver<AddedInfo>(); Plastic.ParseAddOutput(new StringReader(Resources.add), processControl, CancellationToken.None); var output = processControl.Output.ToList(); Assert.AreEqual(35, output.Count); var first = output[0]; Assert.AreEqual(@"b:\cm\monkeyfarm\Plastic", first.Path); Assert.AreEqual(OperationStatus.Success, first.Status); }
/// <summary> /// </summary> /// <param name="msg">A <see cref="T:System.Windows.Forms.Message"/>, passed by reference, that represents the window message to process.</param> /// <param name="keyData">One of the <see cref="T:System.Windows.Forms.Keys"/> values that represents the key to process.</param> /// <returns> /// true if the character was processed by the control; otherwise, false. /// </returns> protected override bool ProcessCmdKey(ref Message msg, Keys keyData) { if (this.InterJetAvailabilityOfFlightsHandler.IsWebServiceRuning) { if (ProcessObserver.HandleEvent(ref msg, keyData)) { return(true); } } return(base.ProcessCmdKey(ref msg, keyData)); }
public void ParseXLinkWritableTest() { var obs = new ProcessObserver<XLinkInfo, Unit>(); const string Output = @"b:\cm\build\ExampleData --> wxlink:ExampleData:/@121@ExampleData@dice-plastic-1:8087"; Plastic.ParseXLink(Output.ToStreamReader(), obs, CancellationToken.None); var xlink = obs.Output.First(); Assert.AreEqual(@"b:\cm\build\ExampleData", xlink.Path); Assert.AreEqual(@"ExampleData@dice-plastic-1:8087", xlink.Repository); Assert.AreEqual(121, xlink.Changeset); Assert.AreEqual(@"/", xlink.RemotePath); Assert.IsTrue(xlink.Writeable); }
public void GetFileInfoTest() { var processControl = new ProcessObserver<FileInfo, Unit>(); PlasticXmlOutputParser.FileInfoFromTextReaderXml(new StringReader(Resources.fileinfo), processControl, CancellationToken.None); var output = processControl.Output.ToList(); Assert.AreEqual(9, output.Count); var third = output[2]; Assert.AreEqual(@"b:\cm\frostbite\ExampleData", third.ClientPath); Assert.AreEqual(0, third.Size); Assert.IsNotNull(third.XlinkInfo); Assert.AreEqual(437, third.XlinkInfo.Changeset); }
public void GetFileInfoFieldsTest() { var processControl = new ProcessObserver<FileInfo, Unit>(); PlasticXmlOutputParser.FileInfoFromTextReaderXml(new StringReader(Resources.fileinfo_fields), processControl, CancellationToken.None); var output = processControl.Output.ToList(); Assert.AreEqual(9, output.Count); var third = output[2]; Assert.AreEqual(0, third.Size); Assert.IsNotNull(third.XlinkInfo); Assert.AreEqual("/ExampleData", third.ServerPath); Assert.AreEqual("ExampleData", third.XlinkInfo.RemotePath); }
public void ParseListOutputTest() { var processControl = new ProcessObserver<ListInfo>(); PlasticXmlOutputParser.ListInfoFromTextReaderXml(new StringReader(Resources.ls), processControl, CancellationToken.None); var statusChanges = processControl.Output.ToList(); Assert.AreEqual(3, statusChanges.Count); var first = statusChanges[0]; Assert.AreEqual(ChangeTypes.CheckedOut, first.ChangeType); Assert.AreEqual(@"b:\cm\frostbite\TnT\Code\Tools\FrostEd\Common\Framework\Managers\DataManager\PlasticSourceControl.cs", first.Fullname); }
public void ParseChangesetInfo() { const string Data = @"892937;C;b:\cm\frostbite\TnT\Code\Tools\FrostEd\Common\Scene\Tools\SceneToolBase.cs;4711 892938;C;b:\cm\frostbite\TnT\Code\Tools\FrostEd\Common\Scene\VectorShape\Sphere\SphereShapeTool.cs;4712 "; var processObserver = new ProcessObserver<ChangesetItemInfo>(); Plastic.ParseChangesetItems(new StringReader(Data), processObserver, CancellationToken.None, Tuple.Create(10L, "myRepo")); var retVal = processObserver.Output.ToList(); Assert.AreEqual(2, retVal.Count); var first = retVal.First(); Assert.AreEqual(892937, first.Revision); Assert.AreEqual("C", first.Kind); Assert.AreEqual(4711, first.Parent); Assert.AreEqual(10, first.Changeset); Assert.AreEqual("myRepo", first.Repository); Assert.AreEqual(@"b:\cm\frostbite\TnT\Code\Tools\FrostEd\Common\Scene\Tools\SceneToolBase.cs", first.Item); }
public void ParseLocksOutput() { const string Output = @"b6f8c2c4-ba1d-4e77-9a20-313a80a337bc S-1-5-21-2021117682-251527243-912297744-16124 frostbite /VeniceData/Raw/Test/Svarling/Objects/CardboardBoxes/CardboardBoxes_01.fbx 32c4cced-f43b-4572-ab25-bccda7224f7c S-1-5-21-2021117682-251527243-912297744-1987 fb-dev-jlindqvis1 /ExampleData/Raw/Voyager/Characters/SoldierZombie/SoldierZombie/Resources/Clips/Characters/SoldierZombie/Anim/fbx/Soldier_Idle_Anim.fbx"; var observer = new ProcessObserver<LockInfo>(); Plastic.ParseListLockOutput(Output.ToStreamReader(), observer, CancellationToken.None, "dice-plastic-1:8087"); var guid = Guid.Parse("b6f8c2c4-ba1d-4e77-9a20-313a80a337bc"); var locks = observer.Output.ToArray(); Assert.AreEqual(2, locks.Length); var aLock = observer.Output.FirstOrDefault(); Assert.IsNotNull(aLock); Assert.AreEqual(guid, aLock.Guid); Assert.AreEqual("frostbite", aLock.Workspace); Assert.AreEqual("/VeniceData/Raw/Test/Svarling/Objects/CardboardBoxes/CardboardBoxes_01.fbx", aLock.ServerPath); Assert.AreEqual("/ExampleData/Raw/Voyager/Characters/SoldierZombie/SoldierZombie/Resources/Clips/Characters/SoldierZombie/Anim/fbx/Soldier_Idle_Anim.fbx", locks[1].ServerPath); }
public void ParseXLinkWithExpansionRuleTest() { var obs = new ProcessObserver<XLinkInfo, Unit>(); const string Output = @"b:\cm\build\ExampleData --> xlink:ExampleData:/@121@ExampleData@dice-plastic-1:8087 Branch expansion rules: br:/main@frostbite@dice-plastic-1:8087 -> br:/main@ExampleData@dice-plastic-1:8087 "; Plastic.ParseXLink(Output.ToStreamReader(), obs, CancellationToken.None); var xlink = obs.Output.First(); Assert.AreEqual(@"b:\cm\build\ExampleData", xlink.Path); Assert.AreEqual(@"ExampleData@dice-plastic-1:8087", xlink.Repository); Assert.AreEqual(121, xlink.Changeset); Assert.AreEqual(@"/", xlink.RemotePath); Assert.IsFalse(xlink.Writeable); Assert.AreEqual(1, xlink.BranchExpansionRules.Count); var ber = xlink.BranchExpansionRules[0]; Assert.AreEqual("br:/main@frostbite@dice-plastic-1:8087", ber.From); Assert.AreEqual("br:/main@ExampleData@dice-plastic-1:8087", ber.To); }
public void ParseStatusOutputTest() { var processControl = new ProcessObserver<StatusChangeInfo>(); PlasticXmlOutputParser.StatusChangeInfoFromTextReaderXml(new StringReader(Resources.statusout), processControl, CancellationToken.None, @"B:\cm\build"); var statusChanges = processControl.Output.ToList(); Assert.AreEqual(12, statusChanges.Count); Assert.AreEqual(1, statusChanges.Count(si => si.ChangeType == ChangeTypes.Added)); Assert.AreEqual(1, statusChanges.Count(si => si.ChangeType == ChangeTypes.Changed)); Assert.AreEqual(2, statusChanges.Count(si => si.ChangeType == ChangeTypes.CheckedOut)); Assert.AreEqual(1, statusChanges.Count(si => si.ChangeType == ChangeTypes.LocallyDeleted)); Assert.AreEqual(2, statusChanges.Count(si => si.ChangeType == ChangeTypes.LocallyMoved)); var first = statusChanges[0]; Assert.AreEqual(string.Empty, first.OldPath); Assert.AreEqual(@"B:\cm\build\Frostbite.diceconfig", first.Path); Assert.AreEqual(" (Merge from 432)", first.MergeInfo); var last = statusChanges[10]; Assert.IsTrue(last.SimilarityPerUnit > 0.9); }
public void ParseChangelistInfoTest() { const string Line = @"""foobar"" ""my cl desc"" persistent ""My second changelist"" ""With a desc"""; var pc = new ProcessObserver<ChangelistInfo>(); Plastic.ParseChangelistOutput(new StringReader(Line), pc, CancellationToken.None, null); var output = pc.Output.ToList(); Assert.AreEqual(output.Count, 2); var r1 = output[0]; Assert.AreEqual("foobar", r1.Name); Assert.AreEqual("my cl desc", r1.Description); Assert.IsTrue(r1.Persistent); var r2 = output[1]; Assert.AreEqual("My second changelist", r2.Name); Assert.AreEqual("With a desc", r2.Description); Assert.IsFalse(r2.Persistent); }