1fb726d48Sopenharmony_ci/*
2fb726d48Sopenharmony_ci * Copyright (C) 2022 Huawei Device Co., Ltd.
3fb726d48Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
4fb726d48Sopenharmony_ci * you may not use this file except in compliance with the License.
5fb726d48Sopenharmony_ci * You may obtain a copy of the License at
6fb726d48Sopenharmony_ci *
7fb726d48Sopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
8fb726d48Sopenharmony_ci *
9fb726d48Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
10fb726d48Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
11fb726d48Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12fb726d48Sopenharmony_ci * See the License for the specific language governing permissions and
13fb726d48Sopenharmony_ci * limitations under the License.
14fb726d48Sopenharmony_ci */
15fb726d48Sopenharmony_ci
16fb726d48Sopenharmony_ciimport { LitSlicer, LitSlicerTrack } from '../../../src/base-ui/slicer/lit-slicer';
17fb726d48Sopenharmony_ci
18fb726d48Sopenharmony_cidescribe('slicer Test', () => {
19fb726d48Sopenharmony_ci  it('slicerTest01', function () {
20fb726d48Sopenharmony_ci    let litSlicer = new LitSlicer();
21fb726d48Sopenharmony_ci    expect(litSlicer).not.toBeUndefined();
22fb726d48Sopenharmony_ci    expect(litSlicer).not.toBeNull();
23fb726d48Sopenharmony_ci  });
24fb726d48Sopenharmony_ci  it('slicerTest02', function () {
25fb726d48Sopenharmony_ci    let litSlicerTrack = new LitSlicerTrack();
26fb726d48Sopenharmony_ci    expect(litSlicerTrack).not.toBeUndefined();
27fb726d48Sopenharmony_ci    expect(litSlicerTrack).not.toBeNull();
28fb726d48Sopenharmony_ci  });
29fb726d48Sopenharmony_ci  it('slicerTest03', function () {
30fb726d48Sopenharmony_ci    let litSlicerTrack = new LitSlicerTrack();
31fb726d48Sopenharmony_ci    expect(litSlicerTrack.rangeLeft).toBe(200);
32fb726d48Sopenharmony_ci  });
33fb726d48Sopenharmony_ci  it('slicerTest04', function () {
34fb726d48Sopenharmony_ci    let litSlicerTrack = new LitSlicerTrack();
35fb726d48Sopenharmony_ci    litSlicerTrack.rangeLeft = true;
36fb726d48Sopenharmony_ci    expect(litSlicerTrack.rangeLeft).not.toBeTruthy();
37fb726d48Sopenharmony_ci  });
38fb726d48Sopenharmony_ci  it('slicerTest05', function () {
39fb726d48Sopenharmony_ci    let litSlicerTrack = new LitSlicerTrack();
40fb726d48Sopenharmony_ci    expect(litSlicerTrack.rangeRight).toBe(300);
41fb726d48Sopenharmony_ci  });
42fb726d48Sopenharmony_ci  it('slicerTest09', function () {
43fb726d48Sopenharmony_ci    let litSlicerTrack = new LitSlicerTrack();
44fb726d48Sopenharmony_ci    litSlicerTrack.rangeRight = false;
45fb726d48Sopenharmony_ci    expect(litSlicerTrack.rangeRight).toBeFalsy();
46fb726d48Sopenharmony_ci  });
47fb726d48Sopenharmony_ci  it('slicerTest06', function () {
48fb726d48Sopenharmony_ci    let litSlicer = new LitSlicer();
49fb726d48Sopenharmony_ci    expect(litSlicer.attributeChangedCallback()).toBeUndefined();
50fb726d48Sopenharmony_ci  });
51fb726d48Sopenharmony_ci  it('slicerTest07', function () {
52fb726d48Sopenharmony_ci    let litSlicerTrack = new LitSlicerTrack();
53fb726d48Sopenharmony_ci    expect(litSlicerTrack.adoptedCallback()).toBeUndefined();
54fb726d48Sopenharmony_ci  });
55fb726d48Sopenharmony_ci  it('slicerTest08', function () {
56fb726d48Sopenharmony_ci    let litSlicerTrack = new LitSlicerTrack();
57fb726d48Sopenharmony_ci    expect(litSlicerTrack.attributeChangedCallback()).toBeUndefined();
58fb726d48Sopenharmony_ci  });
59fb726d48Sopenharmony_ci  it('slicerTest10', function () {
60fb726d48Sopenharmony_ci    let litSlicer = new LitSlicer();
61fb726d48Sopenharmony_ci    litSlicer.direction = 'h';
62fb726d48Sopenharmony_ci    expect(litSlicer.connectedCallback()).toBeUndefined();
63fb726d48Sopenharmony_ci  });
64fb726d48Sopenharmony_ci  it('slicerTest11', function () {
65fb726d48Sopenharmony_ci    let litSlicer = new LitSlicer();
66fb726d48Sopenharmony_ci    litSlicer.direction = 'v';
67fb726d48Sopenharmony_ci    expect(litSlicer.direction).toBeUndefined();
68fb726d48Sopenharmony_ci  });
69fb726d48Sopenharmony_ci  it('slicerTest12', function () {
70fb726d48Sopenharmony_ci    let litSlicer = new LitSlicer();
71fb726d48Sopenharmony_ci    litSlicer.style = 'v';
72fb726d48Sopenharmony_ci    expect(litSlicer.style).toBeUndefined();
73fb726d48Sopenharmony_ci  });
74fb726d48Sopenharmony_ci
75fb726d48Sopenharmony_ci  it('slicerTest13', function () {
76fb726d48Sopenharmony_ci    let litSlicer = new LitSlicer();
77fb726d48Sopenharmony_ci    litSlicer.style = 'v';
78fb726d48Sopenharmony_ci    document.body.innerHTML = `
79fb726d48Sopenharmony_ci        <lit-slicer-track id="slicer_2"></lit-slicer-track>
80fb726d48Sopenharmony_ci        <lit-slicer-track id="slicer"></lit-slicer-track>
81fb726d48Sopenharmony_ci        `;
82fb726d48Sopenharmony_ci    let slice = document.getElementById('slicer') as LitSlicerTrack;
83fb726d48Sopenharmony_ci    let line = slice.shadowRoot?.querySelector('#root') as HTMLDivElement;
84fb726d48Sopenharmony_ci    let mouseOutEvent: MouseEvent = new MouseEvent('mousedown', <MouseEventInit>{ movementX: 1, movementY: 2 });
85fb726d48Sopenharmony_ci
86fb726d48Sopenharmony_ci    line.dispatchEvent(mouseOutEvent);
87fb726d48Sopenharmony_ci    let onmousemove: MouseEvent = new MouseEvent('mousemove', <MouseEventInit>{ movementX: 1, movementY: 2 });
88fb726d48Sopenharmony_ci    document.dispatchEvent(onmousemove);
89fb726d48Sopenharmony_ci    let onmouseleave: MouseEvent = new MouseEvent('mouseleave', <MouseEventInit>{ movementX: 1, movementY: 2 });
90fb726d48Sopenharmony_ci    document.dispatchEvent(onmouseleave);
91fb726d48Sopenharmony_ci    let onmouseup: MouseEvent = new MouseEvent('mouseup', <MouseEventInit>{
92fb726d48Sopenharmony_ci      movementX: 1,
93fb726d48Sopenharmony_ci      movementY: 2,
94fb726d48Sopenharmony_ci    });
95fb726d48Sopenharmony_ci    document.dispatchEvent(onmouseup);
96fb726d48Sopenharmony_ci    expect(litSlicer.style).toBeUndefined();
97fb726d48Sopenharmony_ci  });
98fb726d48Sopenharmony_ci});
99