public void TestGetFolderNames()
        {
            {
                // when
                ButlersFolder.Initialize("xxx");
                List <string> names = ButlersFolder.GetFolderNames().ToList();

                // then
                names.Sort();
                Assert.AreEqual(3, names.Count);
                Assert.AreEqual("Calm-Jenkins", names[0]);
                Assert.AreEqual("Emotional-Jenkins", names[1]);
                Assert.AreEqual("xxx", names[2]);
            }

            {
                // when
                ButlersFolder.SetupFolderIfNotExists("zzz");
                List <string> names = ButlersFolder.GetFolderNames().ToList();

                // then
                names.Sort();
                Assert.AreEqual(4, names.Count);
                Assert.AreEqual("Calm-Jenkins", names[0]);
                Assert.AreEqual("Emotional-Jenkins", names[1]);
                Assert.AreEqual("xxx", names[2]);
                Assert.AreEqual("zzz", names[3]);
            }
        }
        public void TestSetupFolderIfNotExists()
        {
            {
                // setup
                ButlersFolder.Initialize("abc");
                string folder = ButlersFolder.GetFolder("def");
                Assert.IsFalse(Directory.Exists(folder));

                // when
                ButlersFolder.SetupFolderIfNotExists("def");

                // then
                Assert.IsTrue(Directory.Exists(folder));
            }
            {
                // setup
                ButlersFolder.Initialize("abc");
                string butlerXml = Path.Combine(ButlersFolder.GetFolder("abc"), "Butler.xml");
                Assert.IsTrue(File.Exists(butlerXml));
                File.Delete(butlerXml);
                Assert.IsFalse(File.Exists(butlerXml));

                // when
                ButlersFolder.SetupFolderIfNotExists("abc");

                // then
                Assert.IsFalse(File.Exists(butlerXml));
            }
        }