public void ParsingFactoryCorrectTypeBasedOnString_NullString_StringOnlyParsingTypeNull() { //Arrange string[] nullLine = null; //Act parsingStrategy = parsingFactory.Create(nullLine); //Assert Assert.AreEqual(typeof(StringOnlyParsingStrategy), parsingStrategy.GetType()); }
public void ParsingFactoryCorrectTypeBasedOnString_EmptyString_StringOnlyParsingType() { //Arrange string[] emptyStringLine = new string[] { "" }; //Act parsingStrategy = parsingFactory.Create(emptyStringLine); //Assert Assert.AreEqual(typeof(StringOnlyParsingStrategy), parsingStrategy.GetType()); }
public void ParsingFactoryCorrectTypeBasedOnString_NoThreadIdParsingStrategyString_NoThreadIdParsingType() { //Arrange string[] noThreadIdStrategyLine = new string[] { "2019-01-08|13:20:05.907|INFO |1|---- Telexis.TSU.ShellUI version 1.36.2.32763 ----" }; //Act parsingStrategy = parsingFactory.Create(noThreadIdStrategyLine); //Assert Assert.AreEqual(typeof(NoThreadIdParsingStrategy), parsingStrategy.GetType()); }
public void ParsingFactoryCorrectTypeBasedOnString_NoEventIdParsingStrategyString_NoEventIdParsingType() { //Arrange string[] noEventIdStrategyLine = new string[] { "2019-03-11|13:37:17.132|[00000006]|INFO |Initializing Threadpool: Compass thread pool" }; //Act parsingStrategy = parsingFactory.Create(noEventIdStrategyLine); //Assert Assert.AreEqual(typeof(NoEventIdParsingStrategy), parsingStrategy.GetType()); }
public void ParsingFactoryCorrectTypeBasedOnString_FullParsingStrategyString_FullParsingType() { //Arrange string[] fullParsingStrategyLine = new string[] { "2019 - 01 - 08 | 13:19:55.657 |[00000001] | INFO | 1 | ----Telexis.TSU.AutoUpdaterService version 1.36.2.32763----" }; //Act parsingStrategy = parsingFactory.Create(fullParsingStrategyLine); //Assert Assert.AreEqual(typeof(FullParsingStrategy), parsingStrategy.GetType()); }
/// <summary> /// Constructor for the TabViewModel /// </summary> /// <param name="iParsingFactory">Interface for determining which parsing strategy we need to use</param> /// <param name="iParsingStrategy">Interface for the determining how to parse a log file</param> /// <param name="iFilterFactory">Interface for the filters we need to use</param> /// <param name="iLog">Interface for the LogParse's log file</param> /// <param name="logFilePath">A string containing the path to the log file</param> public TabViewModel(IParsingFactory iParsingFactory, IParsingStrategy iParsingStrategy, IFilterFactory iFilterFactory, ILog iLog, string logFilePath) { _fileWatcher = new FileWatcher(); _parsingFactory = iParsingFactory; _filterfactory = iFilterFactory; _parsingStrategy = iParsingStrategy; _iLog = iLog; _logFilePath = logFilePath; ListFilters = new ObservableCollection <ObservableCollection <LogModel> >(); _logLvlComboEnumList = Enum.GetValues(typeof(LogLevelEnum)).OfType <LogLevelEnum>().ToList(); PopulateList(GetLines(logFilePath)); Messenger.Default.Register <double>(this, UpdateScrollViewSize); ExtractFileName(); GetLogInfo(); _fileWatcher.OnFileModified = (s) => FileChangeEvent(s); _fileWatcher.Watch(logFilePath); NoDateCheckBoxIsValid = _listLoadLine.Any(x => x.DateTime == DateTime.MinValue); }
public void Initiliaze() { listOfResults = new List <LogModel>(); parsingStrategy = new FullParsingStrategy(); }
public Parser(IParsingStrategy <T> strategy) { _strategy = strategy; }