public void VerifyBracketsAreBalanced_WhenSingleBracket_ShouldReturnFail(string input) { //---------------Arrange------------------- var expected = "Fail"; var parser = new BracketsParser(); //---------------Act ---------------------- var result = parser.VerifyBracketsAreBalanced(input); //---------------Assert ----------------------- Assert.AreEqual(expected, result); }
public void VerifyBracketsAreBalanced_WhenDoublyNestedSetOfBalancedBrackets_ShouldReturnOk() { //---------------Arrange------------------- var input = "[[[][]]]"; var expected = "Ok"; var parser = new BracketsParser(); //---------------Act ---------------------- var result = parser.VerifyBracketsAreBalanced(input); //---------------Assert ----------------------- Assert.AreEqual(expected, result); }
public void VerifyBracketsAreBalanced_WhenEmptyString_ShouldReturnOk() { //---------------Arrange------------------- var input = string.Empty; var expected = "Ok"; var parser = new BracketsParser(); //---------------Act ---------------------- var result = parser.VerifyBracketsAreBalanced(input); //---------------Assert ----------------------- Assert.AreEqual(expected, result); }
public void VerifyBracketsAreBalanced_WhenUnclosedNestedBrackets_ShouldReturnFail() { //---------------Arrange------------------- var input = "[[]"; var expected = "Fail"; var parser = new BracketsParser(); //---------------Act ---------------------- var result = parser.VerifyBracketsAreBalanced(input); //---------------Assert ----------------------- Assert.AreEqual(expected, result); }
private EventLogItem ParseEventLogItemData(StringBuilder eventLogItemData, long endPosition, CancellationToken cancellationToken = default) { var parsedData = BracketsParser.ParseBlock(eventLogItemData); var eventLogItem = new EventLogItem { TransactionStatus = GetTransactionPresentation(parsedData[1]), FileName = LgpFileName, EndPosition = endPosition, LgfEndPosition = _lgfReader.GetPosition() }; try { eventLogItem.DateTime = _timeZone.ToUtc(DateTime.ParseExact(parsedData[0], "yyyyMMddHHmmss", CultureInfo.InvariantCulture)); } catch { eventLogItem.DateTime = DateTime.MinValue; } var transactionData = parsedData[2]; eventLogItem.TransactionNumber = Convert.ToInt64(transactionData[1], 16); var transactionDate = new DateTime().AddSeconds(Convert.ToInt64(transactionData[0], 16) / 10000); eventLogItem.TransactionDateTime = transactionDate == DateTime.MinValue ? transactionDate : _timeZone.ToUtc(transactionDate); var(value, uuid) = _lgfReader.GetReferencedObjectValue(ObjectType.Users, parsedData[3], cancellationToken); eventLogItem.UserUuid = uuid; eventLogItem.User = value; eventLogItem.Computer = _lgfReader.GetObjectValue(ObjectType.Computers, parsedData[4], cancellationToken); var application = _lgfReader.GetObjectValue(ObjectType.Applications, parsedData[5], cancellationToken); eventLogItem.Application = GetApplicationPresentation(application); eventLogItem.Connection = parsedData[6]; var ev = _lgfReader.GetObjectValue(ObjectType.Events, parsedData[7], cancellationToken); eventLogItem.Event = GetEventPresentation(ev); var severity = (string)parsedData[8]; eventLogItem.Severity = GetSeverityPresentation(severity); eventLogItem.Comment = parsedData[9]; (value, uuid) = _lgfReader.GetReferencedObjectValue(ObjectType.Metadata, parsedData[10], cancellationToken); eventLogItem.MetadataUuid = uuid; eventLogItem.Metadata = value; eventLogItem.Data = GetData(parsedData[11]).Trim(); eventLogItem.DataPresentation = parsedData[12]; eventLogItem.Server = _lgfReader.GetObjectValue(ObjectType.Servers, parsedData[13], cancellationToken); var mainPort = _lgfReader.GetObjectValue(ObjectType.MainPorts, parsedData[14], cancellationToken); if (mainPort != "") { eventLogItem.MainPort = int.Parse(mainPort); } var addPort = _lgfReader.GetObjectValue(ObjectType.AddPorts, parsedData[15], cancellationToken); if (addPort != "") { eventLogItem.AddPort = int.Parse(addPort); } eventLogItem.Session = parsedData[16]; return(eventLogItem); }