public void Serialization_Works_As_Expected_For_Known_Plugins() { // arrange ColVisDatatablePlugin cvdp = new ColVisDatatablePlugin { aiExclude = new[] { 0, 1, 4 } }; DefaultDatatableButton btn = new DefaultDatatableButton { text = "Sample Button", action = DefaultDatatableButton.GetDefaultActionFunc() }; btn.action.Body = "alert('hello mihir');"; ButtonsDatatablePlugin bdp = new ButtonsDatatablePlugin(); bdp.buttons.Add(btn); DatatableSettings s = new DatatableSettings(); s.Plugins.AddRange(new IDatatablePlugin <object> [] { cvdp, bdp }); const string expected = "{\r\n \"bLengthChange\": false,\r\n \"bPaginate\": false,\r\n \"bServerSide\": false,\r\n \"iDisplayLength\": 10,\r\n \"oColVis\": {\r\n \"aiExclude\": [\r\n 0,\r\n 1,\r\n 4\r\n ]\r\n },\r\n \"buttons\": [\r\n {\r\n \"text\": \"Sample Button\",\r\n \"action\": function (e, dt, node, config) { alert('hello mihir'); }\r\n }\r\n ]\r\n}"; // act string json = s.ToString(); // assert Assert.AreEqual(expected, json); }
public void Initialise() { m_inbuiltBtn = new InbuiltDatatableButton { type = "copy" }; m_defaultBtn = new DefaultDatatableButton { action = DefaultDatatableButton.GetDefaultActionFunc(), text = "My Default Button", key = "e" }; m_plugin = new ButtonsDatatablePlugin(); }