1/* 2 * Copyright (C) 2022 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16import { LitMainMenuItem } from '../../../src/base-ui/menu/LitMainMenuItem'; 17 18describe('litMainMenuItem Test', () => { 19 it('litMainMenuItem01', () => { 20 let litMainMenuItem = new LitMainMenuItem(); 21 expect(litMainMenuItem).not.toBeUndefined(); 22 expect(litMainMenuItem).not.toBeNull(); 23 }); 24 25 it('litMainMenuItem02', () => { 26 let litMainMenuItem = new LitMainMenuItem(); 27 expect(litMainMenuItem.title).toEqual(''); 28 }); 29 30 it('litMainMenuItem03', () => { 31 let litMainMenuItem = new LitMainMenuItem(); 32 litMainMenuItem.title = 'test'; 33 expect(litMainMenuItem.title).toEqual('test'); 34 }); 35 36 it('litMainMenuItem04', () => { 37 document.body.innerHTML = `<lit-main-menu-item file></lit-main-menu-item> 38 `; 39 let litMainMenuItem = new LitMainMenuItem(); 40 litMainMenuItem.title = 'test02'; 41 expect(litMainMenuItem.title).toEqual('test02'); 42 }); 43 44 it('litMainMenuItem05', () => { 45 document.body.innerHTML = `<lit-main-menu-item></lit-main-menu-item> 46 `; 47 let litMainMenuItem = new LitMainMenuItem(); 48 litMainMenuItem.title = 'test03'; 49 expect(litMainMenuItem.title).toEqual('test03'); 50 }); 51 52 it('litMainMenuItem06', () => { 53 document.body.innerHTML = `<lit-main-menu-item></lit-main-menu-item> 54 `; 55 let litMainMenuItem = new LitMainMenuItem(); 56 expect(litMainMenuItem.isFile()).toBeFalsy(); 57 }); 58 59 it('litMainMenuItem07', () => { 60 document.body.innerHTML = `<lit-main-menu-item></lit-main-menu-item> 61 `; 62 let litMainMenuItem = new LitMainMenuItem(); 63 litMainMenuItem.disabled = true; 64 expect(litMainMenuItem.disabled).toBeTruthy(); 65 }); 66 67 it('litMainMenuItem08', () => { 68 document.body.innerHTML = `<lit-main-menu-item></lit-main-menu-item> 69 `; 70 let litMainMenuItem = new LitMainMenuItem(); 71 litMainMenuItem.disabled = false; 72 expect(litMainMenuItem.disabled).toBeFalsy(); 73 }); 74 75 it('litMainMenuItem10', () => { 76 let litMainMenuItem = new LitMainMenuItem(); 77 litMainMenuItem.back = true; 78 expect(litMainMenuItem.back).toBeTruthy(); 79 }); 80 it('litMainMenuItem11', () => { 81 let litMainMenuItem = new LitMainMenuItem(); 82 litMainMenuItem.back = false; 83 expect(litMainMenuItem.back).toBeFalsy(); 84 }); 85 86 it('litMainMenuItem12', () => { 87 const onclick = jest.fn(); 88 let menuItem = (document.body.innerHTML = ` 89 <lit-main-menu-item id='menu'></lit-main-menu-item> 90 `); 91 const menu = document.getElementById('menu'); 92 expect(onclick).not.toBeCalled(); 93 menu!.onclick = onclick; 94 menu!.click(); 95 expect(onclick).toBeCalled(); 96 expect(onclick).toHaveBeenCalledTimes(1); 97 }); 98}); 99