//----< Demonstrating req 3 - addition/deletion of key/value database for collection type db>------------------- public void TestR3_NonPrimitive(DBEngine <int, DBElement <int, string> > dbType1, DBEngine <string, DBElement <string, List <string> > > dbType2, DBItemEditor editor) { "\nDemonstrating Requirement #3 Collection Type".title(); WriteLine("\n\n Addition of Key/value pair"); String movie_name = "3 Idiots"; WriteLine(" Before Adding Key : " + movie_name); dbType2.showEnumerableDB(); DBElement <string, List <string> > newerelem3 = new DBElement <string, List <string> >(); newerelem3.name = "Movie Name: 3 Idiots"; newerelem3.descr = "3 Friends revist the college days and recall memories"; newerelem3.children.AddRange(new[] { "The Good, the Bad and the Ugly", "Django Unchained" }); newerelem3.payload = new List <string> { "Aamir Khan", "Madhavan", "Mona Singh" }; editor.addKeyValyePair <string, List <String>, string>(dbType2, newerelem3, movie_name); WriteLine("\n\n After adding key :" + movie_name); dbType2.showEnumerableDB(); IEnumerable <string> keys = dbType2.Keys(); String first = keys.First(); WriteLine("\n\n Removal of Key/value pair"); WriteLine(" Before removing key :" + first); dbType2.showEnumerableDB(); editor.removeKey <string, List <string>, string>(dbType2, first); WriteLine("\n\n After removing key :" + first); dbType2.showEnumerableDB(); }
//----< Demonstrating req 3 - addition/deletion of key/value database for primitive type db>------------------- public void TestR3(DBEngine <int, DBElement <int, string> > dbType1, DBEngine <string, DBElement <string, List <string> > > dbType2, DBItemEditor editor) { "\nDemonstrating Requirement #3 Primitive Type".title(); int key1 = DBElementExtensions.generate_int_key(); WriteLine("\n\n Addition of Key/value pair"); WriteLine(" Before Adding Key : " + key1); dbType1.showDB(); WriteLine("\n\n After adding key :" + key1); DBElement <int, string> elem1 = new DBElement <int, string>(); elem1.name = "Titanic"; elem1.descr = "A seventeen-year-old aristocrat falls in love with a kind"; elem1.timeStamp = DateTime.Now; elem1.children.AddRange(new List <int> { 114, 116 }); elem1.payload = "Stars: Leonardo DiCaprio, Kate Winslet, Billy Zane"; editor.addKeyValyePair <int, String>(dbType1, elem1, key1); dbType1.showDB(); IEnumerable <int> keys1 = dbType1.Keys(); int first = keys1.First(); WriteLine("\n\n Removal of Key/value pair"); WriteLine(" Before removing key :" + first); dbType1.showDB(); WriteLine("\n\n After removing key :" + first); editor.removeKey <int, string>(dbType1, first); dbType1.showDB(); }