events = [];
g.updateOptions({series: {Y1: {color: 'blue'}}});
assertEquals([
- "clearChart",
"predraw",
- "clearChart", // why is clearChart called twice?
+ "clearChart",
"willDrawChart",
"didDrawChart"
], events);
assertEquals([
"dataWillUpdate",
"dataDidUpdate",
- "clearChart",
"predraw",
- "clearChart", // why is clearChart called twice?
+ "clearChart",
"willDrawChart",
"didDrawChart"
], events);
};
+
+pluginsTestCase.prototype.testDestroyCalledInOrder = function() {
+ var destructions = [];
+ var makePlugin = function(name) {
+ return {
+ activate: function(g) { return {} },
+ destroy: function() {
+ destructions.push(name);
+ }
+ };
+ };
+
+ var graph = document.getElementById("graph");
+ var g = new Dygraph(graph, this.data, {
+ plugins: [makePlugin('p'), makePlugin('q')]
+ });
+
+ assertEquals([], destructions);
+ g.destroy();
+ assertEquals(['q', 'p'], destructions);
+};