X-Git-Url: https://adrianiainlam.tk/git/?a=blobdiff_plain;f=auto_tests%2Ftests%2Fannotations.js;h=d0a2f7ffbfecc57f12858a6b649cdfd1fc732fe7;hb=be7543ac9a51a8d8a21fc2b3971eac27ba186d51;hp=76a56d2ff99d566cbdc1e5214f8afd54b3d59335;hpb=20bb4e9d1e3da5bedaee7584a9e91aefd9e3a6d4;p=dygraphs.git diff --git a/auto_tests/tests/annotations.js b/auto_tests/tests/annotations.js index 76a56d2..d0a2f7f 100644 --- a/auto_tests/tests/annotations.js +++ b/auto_tests/tests/annotations.js @@ -240,3 +240,33 @@ AnnotationsTestCase.prototype.testAnnotationsStacked = function() { assertEquals(annEls[0].offsetLeft, annEls[1].offsetLeft); assert(annEls[1].offsetTop < annEls[0].offsetTop - 10); }; + + +// Test the .ready() method, which is most often used with setAnnotations(). +AnnotationsTestCase.prototype.testReady = function() { + var data = 'X,Y1,Y2\n' + + '0,1,2\n' + + '1,2,3\n'; + var mockXhr = Util.overrideXMLHttpRequest(data); + + var graph = document.getElementById("graph"); + var g = new Dygraph(graph, "data.csv", { + width: 480, + height: 320 + }); + + var ready_calls = 0; + g.ready(function() { ready_calls++; }); + + assertEquals(0, ready_calls); + mockXhr.respond(); + assertEquals(1, ready_calls); + + // Make sure that ready isn't called on redraws. + g.updateOptions({}); + assertEquals(1, ready_calls); + + // Or data changes. + g.updateOptions({file: data}); + assertEquals(1, ready_calls); +};