void TestR4(string edit_action) { DBElement<string, List<string>> element = new DBElement<string, List<string>>(); element.addElementData("element1", "test element for editing key-value pair to databse with value as string", DateTime.Now, new List<string> { "enum_one", "enum_two" }, new List<string> { "test element1's payload" }); enum_db.insert("enum_one", element); "Demonstrating Requirement #4".title(); DBElement<string, List<string>> edit_element = new DBElement<string, List<string>>(); enum_db.getValue("enum_one", out edit_element); "Element to be edited".title(); edit_element.showEnumerableElement(); WriteLine(); "Database before editing".title(); enum_db.showEnumerableDB(); WriteLine(); switch (edit_action) { case "edit metadata": edit_element.edit_metadata(edit_action); goto default; case "add children": edit_element.add_children(edit_action); goto default; case "remove children": edit_element.remove_children(edit_action); goto default; case "edit payload": edit_element.edit_payload(); goto default; default: "element after editing".title(); edit_element.showEnumerableElement(); "Databaser after editing".title(); enum_db.showEnumerableDB(); WriteLine(); break; } }