public void ReadsSingleCommandFromFile() { if (File.Exists(SingleCommandFilePath)) { File.Delete(SingleCommandFilePath); } var queue = new FileCommandQueueHandler(SingleCommandFilePath); Assert.IsEmpty(queue.GetCommands()); File.WriteAllText(SingleCommandFilePath, JsonConvert.SerializeObject(new LiquidateCommand(), new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All })); Assert.IsInstanceOf(typeof(LiquidateCommand), queue.GetCommands().Single()); }
public void ReadsMultipleCommandsFromFile() { if (File.Exists(MultiCommandFilePath)) { File.Delete(MultiCommandFilePath); } var queue = new FileCommandQueueHandler(MultiCommandFilePath); Assert.IsEmpty(queue.GetCommands()); File.WriteAllText(MultiCommandFilePath, JsonConvert.SerializeObject(new List <ICommand> { new LiquidateCommand(), new SpecialCommand() }, new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.All })); var list = queue.GetCommands().ToList(); Assert.IsInstanceOf(typeof(LiquidateCommand), list[0]); Assert.IsInstanceOf(typeof(SpecialCommand), list[1]); Assert.IsEmpty(queue.GetCommands()); }