public void LevelCorrectWhenModelIsLoadedUsingValue() { var model = new StringMarkov(3); model.Learn(ExampleData); model.Save(ModelFileName); var loaded = model.Load <StringMarkov>(ModelFileName, 2); Assert.AreEqual(2, loaded.Level); }
public void CanSaveEmptyModel() { var model = new StringMarkov(); model.Save(ModelFileName); var forLoading = new StringMarkov().Load <StringMarkov>(ModelFileName, model.Level); Assert.AreEqual(model.Level, forLoading.Level); Assert.AreEqual(model.SourceLines, forLoading.SourceLines); }
public void SavedFileDoesntContainModelDictionary() { var model = new StringMarkov(); model.Learn(ExampleData); model.Save(ModelFileName); string fileContents = File.ReadAllText(ModelFileName); dynamic loaded = JsonConvert.DeserializeObject <dynamic>(fileContents); Assert.IsNull(loaded.Model); }
public void SavedFileContainsLevel() { var model = new StringMarkov(); model.Learn(ExampleData); model.Save(ModelFileName); string fileContents = File.ReadAllText(ModelFileName); dynamic loaded = JsonConvert.DeserializeObject <dynamic>(fileContents); Assert.IsNotNull(loaded.Level); Assert.AreEqual(2, (int)loaded.Level); }
public void CanLoadWithGivenLevel(int newLevel) { var model = new StringMarkov(1); model.Learn(ExampleData); model.Save(ModelFileName); var forLoading = new StringMarkov().Load <StringMarkov>(ModelFileName, newLevel); Assert.AreEqual(newLevel, forLoading.Level); Assert.AreEqual(model.SourceLines, forLoading.SourceLines); Assert.AreEqual(newLevel, forLoading.Model.Max(a => a.Key.Before.Length)); }
public void CanWalkLoadedModel() { var model = new StringMarkov(1); model.Learn(ExampleData); model.Save(ModelFileName); var newModel = new StringMarkov().Load <StringMarkov>(ModelFileName); var lines = newModel.Walk(); Logger.Info(string.Join("\r\n", lines)); Assert.AreEqual(1, lines.Count()); Assert.That(lines.First(), Is.Not.Empty); }