/* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ "use strict"; // Test that the custom rect highlighter positions the rectangle relative to the // viewport of the context node we pass to it. const TEST_URL = URL_ROOT + "doc_inspector_highlighter_rect.html"; add_task(function* () { let {inspector, testActor} = yield openInspectorForURL(TEST_URL); let front = inspector.inspector; let highlighter = yield front.getHighlighterByType("RectHighlighter"); info("Showing the rect highlighter in the context of the iframe"); // Get the reference to a context node inside the iframe let childBody = yield getNodeFrontInFrame("body", "iframe", inspector); yield highlighter.show(childBody, { rect: {x: 50, y: 50, width: 100, height: 100} }); let style = yield testActor.getHighlighterNodeAttribute("highlighted-rect", "style", highlighter); // The parent body has margin=50px and border=10px // The parent iframe also has margin=50px and border=10px // = 50 + 10 + 50 + 10 = 120px // The rect is aat x=50 and y=50, so left and top should be 170px is(style, "left:170px;top:170px;width:100px;height:100px;", "The highlighter is correctly positioned"); yield highlighter.hide(); yield highlighter.finalize(); });