UNPKG

chrome-devtools-frontend

Version:
57 lines (53 loc) 2.33 kB
// Copyright 2020 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. import { getElementWithinComponent, renderElementIntoDOM, } from '../../../testing/DOMHelpers.js'; import * as IconButton from '../icon_button/icon_button.js'; import * as RenderCoordinator from '../render_coordinator/render_coordinator.js'; import * as MarkdownView from './markdown_view.js'; describe('MarkdownImage', () => { const imageSource = 'Images/lighthouse_logo.svg'; before(async () => { MarkdownView.MarkdownImagesMap.markdownImages.set('test-icon', { src: new URL('../../../Images/review.svg', import.meta.url).toString(), width: '20px', height: '20px', isIcon: true, }); MarkdownView.MarkdownImagesMap.markdownImages.set('test-image', { src: new URL(`../../../${imageSource}`, import.meta.url).toString(), width: '100px', height: '100px', isIcon: false, }); }); it('renders icon correctly', async () => { const component = new MarkdownView.MarkdownImage.MarkdownImage(); component.data = {key: 'test-icon', title: 'Test icon'}; renderElementIntoDOM(component); await RenderCoordinator.done(); assert.isNotNull(component.shadowRoot); const iconComponent = getElementWithinComponent(component, 'devtools-icon', IconButton.Icon.Icon); assert.isNotNull(iconComponent); const boundingClient = iconComponent.getBoundingClientRect(); assert.strictEqual(boundingClient.width, 20); assert.strictEqual(boundingClient.height, 20); }); it('renders image correctly', () => { const component = new MarkdownView.MarkdownImage.MarkdownImage(); const markdownImageTitle = 'Test image'; const markdownImageKey = 'test-image'; component.data = {key: markdownImageKey, title: markdownImageTitle}; renderElementIntoDOM(component); assert.isNotNull(component.shadowRoot); const imageComponent = getElementWithinComponent(component, 'img', HTMLImageElement); assert.isNotNull(imageComponent); assert.include(imageComponent.src, imageSource); assert.strictEqual(imageComponent.alt, markdownImageTitle); assert.strictEqual(imageComponent.width, 100); assert.strictEqual(imageComponent.height, 100); }); });