Пример #1
0
        public void TestNewChild()
        {
            //setup
            using Datapack pack = new Datapack("datapacks", "pack", "a pack", 0, new NoneFileCreator());
            PackNamespace space = pack.Namespace("space");

            //test
            ChildAdvancement advancement = GetChildAdvancement(space);

            advancement.NewChild("childchild", new EnchantedItemTrigger()
            {
                Levels = 5
            }, null !, new JsonText.Text("Name"), new JsonText.Text("Description"), ID.Item.stone);
            Assert.IsTrue(pack.FileCreator.GetDirectories().Any(d => d == "datapacks/pack/data/space/advancements/"), "Directory wasn't created");
            Assert.IsTrue(pack.FileCreator.GetWriters().Any(w => w.path == "datapacks/pack/data/space/advancements/childchild.json"), "File wasn't created");
        }
Пример #2
0
        public void TestWriteChild()
        {
            //setup
            using Datapack pack = new Datapack("datapacks", "pack", "a pack", 0, new NoneFileCreator());
            PackNamespace space = pack.Namespace("space");

            //test
            ChildAdvancement childAdvancement  = GetChildAdvancement(space);
            string           advancementString = pack.FileCreator.GetWriters().Single(w => w.path == "datapacks/pack/data/space/advancements/child.json").writer.ToString() !;

            Assert.AreEqual("{\"requirements\":[[\"trigger_0\"]],\"criteria\":" +
                            "{\"trigger_0\":{\"conditions\":{\"item\":{\"item\":\"minecraft:wooden_sword\"},\"levels\":{\"max\":5,\"min\":5}},\"trigger\":\"minecraft:enchanted_item\"}}" +
                            ",\"display\":{\"icon\":{\"item\":\"minecraft:stone\"},\"title\":{\"text\":\"Name\"},\"description\":{\"text\":\"Description\"},\"frame\":\"goal\",\"show_toast\":false,\"announce_to_chat\":true,\"hidden\":true},\"parent\":\"space:parent\"}", advancementString, "Child file wasn't written correctly");
            Assert.IsNull(childAdvancement.Requirements, "requirements weren't cleared");
            Assert.IsNull(childAdvancement.Reward, "reward wasn't cleared");
            Assert.IsNull(childAdvancement.Description, "description wasn't cleared");
            Assert.IsNull(childAdvancement.Name, "name wasn't cleared");
        }