public void Hotload_CreatedFileTwice() { CreateFile("derp.bytes", "key: value"); CreateFile("index.bytes", "- derp"); var fs = new FileSource(m_tmpDir, true); fs.Preload(() => {}); CreateFile("durr.bytes", "a: b"); CreateFile("index.bytes", "- derp\n- durr"); var index = fs.GetFiles()[0]; fs.TryHotload(index); CreateFile("hurr.bytes", "x: y"); CreateFile("index.bytes", "- derp\n- durr\n- hurr"); fs.TryHotload(index); var files = fs.GetFiles(); Assert.AreEqual(4, files.Count); Assert.AreEqual("durr", files[2].Name); Assert.AreEqual("b", files[2].Parsed["a"].StringValue); Assert.AreEqual("hurr", files[3].Name); Assert.AreEqual("y", files[3].Parsed["x"].StringValue); }
public void OpenOneFile() { CreateFile("derp.bytes", "key: value"); CreateFile("index.bytes", "- derp"); var fs = new FileSource(m_tmpDir, true); fs.Preload(() => {}); var files = fs.GetFiles(); Assert.AreEqual(2, files.Count); Assert.AreEqual("index", files[0].Name); Assert.AreEqual("derp", files[1].Name); Assert.AreEqual("value", files[1].Parsed["key"].StringValue); }
public void Hotload_ExistingFile() { CreateFile("derp.bytes", "key: value"); CreateFile("index.bytes", "- derp"); var fs = new FileSource(m_tmpDir, true); fs.Preload(() => {}); CreateFile("derp.bytes", "key: value2"); var fi = fs.GetFiles()[1]; var fi2 = fs.TryHotload(fi); Assert.IsNotNull(fi2); Assert.AreEqual("derp", fi2.Name); Assert.AreEqual("value2", fi2.Parsed["key"].StringValue); }
public void Hotload_DeletedFile() { CreateFile("derp.bytes", "key: value"); CreateFile("durr.bytes", "a: b"); CreateFile("index.bytes", "- derp\n- durr"); var fs = new FileSource(m_tmpDir, true); fs.Preload(() => {}); CreateFile("index.bytes", "- derp"); DeleteFile("durr.bytes"); var fi = fs.GetFiles()[2]; var fi2 = fs.TryHotload(fi); Assert.IsNull(fi2); }
public void ReceivePreloaded() { CreateFile("derp.bytes", "key: value"); CreateFile("index.bytes", "- derp"); var fs = new FileSource(m_tmpDir, true); fs.Preload(() => {}); var fs2 = new FileSource(m_tmpDir, true); fs2.ReceivePreloaded(fs.GetFiles()); var files = fs2.GetFiles(); Assert.AreEqual(2, files.Count); Assert.AreEqual("index", files[0].Name); Assert.AreEqual("derp", files[1].Name); }