未验证 提交 b6388518 编写于 作者: O openharmony_ci 提交者: Gitee

!7640 XTS Arkui FlexAlignItems-Center 代码提交

Merge pull request !7640 from 张海霖/zhl_06
/*
* Copyright (c) 2023 iSoftStone Information Technology (Group) Co.,Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
@Entry
@Component
struct FlexAlignSelf_Center {
private content: string = "FlexAlignSelf_Center Page";
onPageShow() {
console.info('FlexAlignSelf_Center page show called');
}
onBuildDone() {
console.info('FlexAlignSelf_Center page build done called');
}
build() {
Column() {
Column() {
Text('FlexTest12').fontSize(9).fontColor(0xCCCCCC).width('90%')
Flex({
direction: FlexDirection.Row,
alignItems: ItemAlign.Center,
wrap: FlexWrap.NoWrap,
}) {
Text('1').width(150).height(50).backgroundColor(0xF5DEB3).alignSelf(ItemAlign.End).key('textAlignSelf01')
Text('2').width(150).height(100).backgroundColor(0xD2B48C).key('textAlignSelf02')
Text('3').width(150).height(150).backgroundColor(0xF5DEB3).key('textAlignSelf03')
}
.key('flexAlignSelf')
.height(200)
.width(500)
.backgroundColor(0xAFEEEE)
}.width('100%').margin({ top: 5 })
}.width('100%')
}
}
/*
* Copyright (c) 2023 iSoftStone Information Technology (Group) Co.,Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { MessageManager,Callback } from '../../../../common/MessageManager';
@Entry
@Component
struct FlexBase_Center {
@State testHeight: number = 150
@State testWidth: number = 450
messageManager:MessageManager = new MessageManager()
private content: string = "FlexBase_Center Page";
onPageShow() {
console.info('FlexBase_Center onPageShow');
globalThis.value = {
name:'messageManager',message:this.messageManager
}
let callback:Callback = (message:any) => {
console.log('message = ' + message.name + "--" + message.value);
if (message.name == 'height') {
this.testHeight = message.value;
}
if (message.name == 'width') {
this.testWidth = message.value;
}
}
this.messageManager.registerCallback(callback);
}
onBuildDone() {
console.info('FlexBase_Center page build done called');
}
build() {
Column() {
Column() {
Text('FlexBase_1').fontSize(9).fontColor(0xCCCCCC).width('90%')
Flex({
direction: FlexDirection.Row,
alignItems: ItemAlign.Center,
wrap: FlexWrap.NoWrap,
}) {
Text('1').width(150).height(50).backgroundColor(0xF5DEB3).key('textFlex01')
Text('2').width(150).height(100).backgroundColor(0xD2B48C).key('textFlex02')
Text('3').width(150).height(150).backgroundColor(0xF5DEB3).key('textFlex03')
}
.key('flex01')
.height(this.testHeight)
.width(this.testWidth)
.backgroundColor(0xAFEEEE)
}.width('100%').margin({ top: 5 })
}.width('100%')
}
}
/*
* Copyright (c) 2023 iSoftStone Information Technology (Group) Co.,Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { MessageManager,Callback } from '../../../../common/MessageManager';
@Entry
@Component
struct FlexExceed_Center {
@State testPadding: number = 0
@State testMargin: number = 0
messageManager:MessageManager = new MessageManager()
private content: string = "FlexExceed_Center Page";
onPageShow() {
console.info('FlexBase_Center onPageShow');
globalThis.value = {
name:'messageManager',message:this.messageManager
}
let callback:Callback = (message:any) => {
console.log('message = ' + message.name + "--" + message.value);
if (message.name == 'padding') {
this.testPadding = message.value;
}
if (message.name == 'margin') {
this.testMargin = message.value;
}
}
this.messageManager.registerCallback(callback);
}
onBuildDone() {
console.info('FlexExceed_Center page build done called');
}
build() {
Column() {
Column() {
Text('FlexExceed_1').fontSize(9).fontColor(0xCCCCCC).width('90%')
Flex({
direction: FlexDirection.Row,
alignItems: ItemAlign.Center,
wrap: FlexWrap.NoWrap,
}) {
Text('1').width(150).height(50).backgroundColor(0xF5DEB3).key('textExceed01')
Text('2').width(150).height(100).backgroundColor(0xD2B48C).key('textExceed02')
Text('3').width(150).height(150).backgroundColor(0xF5DEB3).key('textExceed03')
}
.key('flexExceed01')
.height(200)
.width(500)
.margin(this.testMargin)
.padding(this.testPadding)
.backgroundColor(0xAFEEEE)
}.width('100%').margin({ top: 5 }).alignItems(HorizontalAlign.Start)
}.width('100%')
}
}
/*
* Copyright (c) 2023 iSoftStone Information Technology (Group) Co.,Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { MessageManager,Callback } from '../../../../common/MessageManager';
@Entry
@Component
struct FlexHeightModify_Center {
@State testHeight: number = 50
messageManager:MessageManager = new MessageManager()
private content: string = "FlexHeightModify_Center Page";
onPageShow() {
console.info('FlexHeightModify_Center onPageShow');
globalThis.value = {
name:'messageManager',message:this.messageManager
}
let callback:Callback = (message:any) => {
console.log('message = ' + message.name + "--" + message.value);
if (message.name == 'height') {
this.testHeight = message.value;
}
}
this.messageManager.registerCallback(callback);
}
onBuildDone() {
console.info('FlexHeightModify_Center page build done called');
}
build() {
Column() {
Column() {
Text('FlexHeightModify').fontSize(9).fontColor(0xCCCCCC).width('90%')
Flex({
direction: FlexDirection.Row,
alignItems: ItemAlign.Center,
wrap: FlexWrap.NoWrap,
}) {
Text('1').width(150).height(this.testHeight).backgroundColor(0xF5DEB3).key('textHeightModify01')
Text('2').width(150).height(100).backgroundColor(0xD2B48C).key('textHeightModify02')
Text('3').width(150).height(150).backgroundColor(0xF5DEB3).key('textHeightModify03')
}
.key('flexHeightModify')
.height(200)
.width(500)
.backgroundColor(0xAFEEEE)
}.width('100%').margin({ top: 5 })
}.width('100%')
}
}
/*
* Copyright (c) 2023 iSoftStone Information Technology (Group) Co.,Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
@Entry
@Component
struct FlexMargin_Center {
private content: string = "FlexMargin_Center Page";
onPageShow() {
console.info('FlexMargin_Center page show called');
}
onBuildDone() {
console.info('FlexMargin_Center page build done called');
}
build() {
Column() {
Column() {
Text('FlexTest05').fontSize(9).fontColor(0xCCCCCC).width('90%')
Flex({
direction: FlexDirection.Row,
alignItems: ItemAlign.Center,
wrap: FlexWrap.NoWrap,
}) {
Text('1').width(150).height(50).backgroundColor(0xF5DEB3).key('textFlexMargin01')
Text('2').width(150).height(100).backgroundColor(0xD2B48C).key('textFlexMargin02')
Text('3').width(150).height(150).backgroundColor(0xF5DEB3).key('textFlexMargin03')
}
.key('flexMargin')
.height(200)
.width(500)
.margin(10)
.backgroundColor(0xAFEEEE)
}.width('100%').margin({ top: 5 }).alignItems(HorizontalAlign.Start)
}.width('100%')
}
}
/*
* Copyright (c) 2023 iSoftStone Information Technology (Group) Co.,Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
@Entry
@Component
struct FlexOffset_Center {
private content: string = "FlexOffset_Center Page";
onPageShow() {
console.info('FlexOffset_Center page show called');
}
onBuildDone() {
console.info('FlexOffset_Center page build done called');
}
build() {
Column() {
Column() {
Text('FlexTest09').fontSize(9).fontColor(0xCCCCCC).width('90%')
Flex({
direction: FlexDirection.Row,
alignItems: ItemAlign.Center,
wrap: FlexWrap.NoWrap,
}) {
Text('1').width(150).height(50).backgroundColor(0xF5DEB3).offset({ x: 15, y: 30 }).key('textOffset01')
Text('2').width(150).height(100).backgroundColor(0xD2B48C).key('textOffset02')
Text('3').width(150).height(150).backgroundColor(0xF5DEB3).key('textOffset03')
}
.key('flexOffset')
.height(200)
.width(500)
.backgroundColor(0xAFEEEE)
}.width('100%').margin({ top: 5 })
}.width('100%')
}
}
/*
* Copyright (c) 2023 iSoftStone Information Technology (Group) Co.,Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { MessageManager,Callback } from '../../../../common/MessageManager';
@Entry
@Component
struct FlexPadding_Center {
@State testPadding: number = 0
messageManager:MessageManager = new MessageManager()
private content: string = "FlexPadding_Center Page";
onPageShow() {
console.info('FlexPadding_Center onPageShow');
globalThis.value = {
name:'messageManager',message:this.messageManager
}
let callback:Callback = (message:any) => {
console.log('message = ' + message.name + "--" + message.value);
if (message.name == 'padding') {
this.testPadding = message.value;
}
}
this.messageManager.registerCallback(callback);
}
onBuildDone() {
console.info('FlexPadding_Center page build done called');
}
build() {
Column() {
Column() {
Text('FlexPadding_1').fontSize(9).fontColor(0xCCCCCC).width('90%')
Flex({
direction: FlexDirection.Row,
alignItems: ItemAlign.Center,
wrap: FlexWrap.NoWrap,
}) {
Text('1').width(150).height(50).backgroundColor(0xF5DEB3).key('textFlexPadding01')
Text('2').width(150).height(100).backgroundColor(0xD2B48C).key('textFlexPadding02')
Text('3').width(150).height(150).backgroundColor(0xF5DEB3).key('textFlexPadding03')
}
.key('flexPadding01')
.height(200)
.width(500)
.padding(this.testPadding)
.backgroundColor(0xAFEEEE)
}.width('100%').margin({ top: 5 }).alignItems(HorizontalAlign.Start)
}.width('100%')
}
}
/*
* Copyright (c) 2023 iSoftStone Information Technology (Group) Co.,Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { MessageManager,Callback } from '../../../../common/MessageManager';
@Entry
@Component
struct FlexTextMargin_Center {
@State testTextMargin: number = 0
messageManager:MessageManager = new MessageManager()
private content: string = "FlexTextMargin_Center Page";
onPageShow() {
console.info('FlexBase_Center onPageShow');
globalThis.value = {
name:'messageManager',message:this.messageManager
}
let callback:Callback = (message:any) => {
console.log('message = ' + message.name + "--" + message.value);
if (message.name == 'margin') {
this.testTextMargin = message.value;
}
}
this.messageManager.registerCallback(callback);
}
onBuildDone() {
console.info('FlexTextMargin_Center page build done called');
}
build() {
Column() {
Column() {
Text('FlexTextMargin_1').fontSize(9).fontColor(0xCCCCCC).width('90%')
Flex({
direction: FlexDirection.Row,
alignItems: ItemAlign.Center,
wrap: FlexWrap.NoWrap,
}) {
Text('1').width(150).height(50).backgroundColor(0xF5DEB3).margin(this.testTextMargin).key('textMargin01')
Text('2').width(150).height(100).backgroundColor(0xD2B48C).key('textMargin02')
Text('3').width(150).height(150).backgroundColor(0xF5DEB3).key('textMargin03')
}
.key('flexTextMargin01')
.height(200)
.width(500)
.backgroundColor(0xAFEEEE)
}.width('100%').alignItems(HorizontalAlign.Start)
}.width('100%')
}
}
/*
* Copyright (c) 2023 iSoftStone Information Technology (Group) Co.,Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { MessageManager,Callback } from '../../../../common/MessageManager';
@Entry
@Component
struct FlexVisibility_Center {
@State testVisibility: number = Visibility.Visible
messageManager:MessageManager = new MessageManager()
private content: string = "FlexVisibility_Center Page";
onPageShow() {
console.info('FlexBase_Center onPageShow');
globalThis.value = {
name:'messageManager',message:this.messageManager
}
let callback:Callback = (message:any) => {
console.log('message = ' + message.name + "--" + message.value);
if (message.name == 'visibility') {
this.testVisibility = message.value;
}
}
this.messageManager.registerCallback(callback);
}
onBuildDone() {
console.info('FlexVisibility_Center page build done called');
}
build() {
Column() {
Column() {
Text('FlexTest10').fontSize(9).fontColor(0xCCCCCC).width('90%')
Flex({
direction: FlexDirection.Row,
alignItems: ItemAlign.Center,
wrap: FlexWrap.NoWrap,
}) {
Text('1').width(150).height(50).backgroundColor(0xF5DEB3).visibility(this.testVisibility).key('textVisible01')
Text('2').width(150).height(100).backgroundColor(0xD2B48C).key('textVisible02')
Text('3').width(150).height(150).backgroundColor(0xF5DEB3).key('textVisible03')
}
.key('flexVisible')
.height(200)
.width(500)
.backgroundColor(0xAFEEEE)
}.width('100%').margin({ top: 5 })
}.width('100%')
}
}
/*
* Copyright (c) 2023 iSoftStone Information Technology (Group) Co.,Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from "@ohos/hypium";
import router from '@system.router';
import CommonFunc from "../../../../MainAbility/common/Common";
import { MessageManager,Callback } from '../../../../MainAbility/common/MessageManager';
export default function flexAlignSelf_CenterJsunit() {
describe('flexItemAlignCenterTest', function () {
beforeEach(async function (done) {
let options = {
uri: 'MainAbility/pages/Flex/alignItems/ItemAlign_Center/FlexAlignSelf',
}
try {
router.clear();
await CommonFunc.sleep(1000);
let pages = router.getState();
console.info("get FlexSecond state success " + JSON.stringify(pages));
if (!("FlexSecond" == pages.name)) {
console.info("get FlexSecond state success " + JSON.stringify(pages.name));
let result = await router.push(options)
console.info("push FlexSecond page success " + JSON.stringify(result));
}
} catch (err) {
console.error("push FlexSecond page error " + JSON.stringify(err));
}
await CommonFunc.sleep(2000);
done()
});
afterEach(async function () {
await CommonFunc.sleep(1000);
console.info("FlexSecond after each called");
});
/**
* @tc.number SUB_ACE_FLEXALIGNITEMS_CENTER_1300
* @tc.name testFlexItemAlignCenterSetAlignSelf
* @tc.desc The first subcomponent set ItemAlign.End attribute.
*/
it('testFlexItemAlignCenterSetAlignSelf', 0, async function (done) {
console.info('new testFlexItemAlignCenterSetAlignSelf START');
let strJson1 = getInspectorByKey('flexAlignSelf');
let obj1 = JSON.parse(strJson1);
let strJson2 = getInspectorByKey('textAlignSelf01');
let obj2 = JSON.parse(strJson2);
let alignSelf01 = CommonFunc.getComponentRect('textAlignSelf01');
let alignSelf02 = CommonFunc.getComponentRect('textAlignSelf02');
let alignSelf03 = CommonFunc.getComponentRect('textAlignSelf03');
let flexAlignSelf01 = CommonFunc.getComponentRect('flexAlignSelf');
expect(alignSelf01.bottom).assertEqual(flexAlignSelf01.bottom)
expect(Math.round(alignSelf01.bottom - alignSelf01.top)).assertEqual(vp2px(50))
expect(Math.round(alignSelf01.right - alignSelf01.left)).assertEqual(vp2px(150))
expect(Math.round(alignSelf02.bottom - alignSelf02.top)).assertEqual(vp2px(100))
expect(Math.round(alignSelf02.right - alignSelf02.left)).assertEqual(vp2px(150))
expect(Math.round(alignSelf03.bottom - alignSelf03.top)).assertEqual(vp2px(150))
expect(Math.round(alignSelf03.right - alignSelf03.left)).assertEqual(vp2px(150))
expect(alignSelf02.top - flexAlignSelf01.top).assertEqual(flexAlignSelf01.bottom - alignSelf02.bottom)
expect(alignSelf03.top - flexAlignSelf01.top).assertEqual(flexAlignSelf01.bottom - alignSelf03.bottom)
expect(obj1.$attrs.constructor.direction).assertEqual('FlexDirection.Row')
expect(obj1.$attrs.constructor.alignItems).assertEqual('ItemAlign.Center')
expect(obj2.$attrs.alignSelf).assertEqual("ItemAlign.End");
expect(Math.round(alignSelf03.right - alignSelf03.left)).assertEqual(vp2px(150))
expect(Math.round(alignSelf02.right - alignSelf02.left)).assertEqual(vp2px(150))
expect(Math.round(flexAlignSelf01.right - alignSelf03.right)).assertEqual(vp2px(50))
console.info('new testFlexItemAlignCenterSetAlignSelf END');
done();
});
})
}
/*
* Copyright (c) 2023 iSoftStone Information Technology (Group) Co.,Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from "@ohos/hypium";
import router from '@system.router';
import CommonFunc from "../../../../MainAbility/common/Common";
import { MessageManager,Callback } from '../../../../MainAbility/common/MessageManager';
export default function flexBase_CenterJsunit() {
describe('flexItemAlignCenterTest', function () {
beforeEach(async function (done) {
let options = {
uri: 'MainAbility/pages/Flex/alignItems/ItemAlign_Center/FlexBase',
}
try {
router.clear();
await CommonFunc.sleep(1000);
let pages = router.getState();
console.info("get FlexBase state success " + JSON.stringify(pages));
if (!("FlexBase" == pages.name)) {
console.info("get FlexBase state success " + JSON.stringify(pages.name));
let result = await router.push(options)
console.info("push FlexBase page success " + JSON.stringify(result));
}
} catch (err) {
console.error("push FlexBase page error " + JSON.stringify(err));
}
await CommonFunc.sleep(2000);
done()
});
afterEach(async function () {
await CommonFunc.sleep(1000);
console.info("FlexBase after each called");
});
/**
* @tc.number SUB_ACE_FLEXALIGNITEMS_CENTER_0100
* @tc.name testFlexItemAlignCenter
* @tc.desc The subcomponent is inside the parent component.
*/
it('testFlexItemAlignCenter', 0, async function (done) {
console.info('new testFlexItemAlignCenter START');
globalThis.value.message.notify({name:'height', value:200});
globalThis.value.message.notify({name:'width', value:500});
await CommonFunc.sleep(2000);
let strJson1 = getInspectorByKey('flex01');
let obj1 = JSON.parse(strJson1);
let textFlex01 = CommonFunc.getComponentRect('textFlex01');
let textFlex02 = CommonFunc.getComponentRect('textFlex02');
let textFlex03 = CommonFunc.getComponentRect('textFlex03');
let flex01 = CommonFunc.getComponentRect('flex01');
expect(textFlex01.left).assertEqual(flex01.left)
expect(textFlex01.right).assertEqual(textFlex02.left)
expect(textFlex02.right).assertEqual(textFlex03.left)
expect(Math.round(flex01.right - textFlex03.right)).assertEqual(vp2px(50))
expect(textFlex01.top - flex01.top).assertEqual(flex01.bottom - textFlex01.bottom)
expect(textFlex02.top - flex01.top).assertEqual(flex01.bottom - textFlex02.bottom)
expect(textFlex03.top - flex01.top).assertEqual(flex01.bottom - textFlex03.bottom)
expect(Math.round(textFlex01.bottom - textFlex01.top)).assertEqual(vp2px(50))
expect(Math.round(textFlex02.bottom - textFlex02.top)).assertEqual(vp2px(100))
expect(Math.round(textFlex03.bottom - textFlex03.top)).assertEqual(vp2px(150))
expect(Math.round(textFlex01.right - textFlex01.left)).assertEqual(vp2px(150))
expect(Math.round(textFlex02.right - textFlex02.left)).assertEqual(vp2px(150))
expect(Math.round(textFlex03.right - textFlex03.left)).assertEqual(vp2px(150))
expect(obj1.$attrs.constructor.direction).assertEqual('FlexDirection.Row')
expect(obj1.$attrs.constructor.alignItems).assertEqual('ItemAlign.Center')
console.info('new testFlexItemAlignCenter END');
done();
});
/**
* @tc.number SUB_ACE_FLEXALIGNITEMS_CENTER_0200
* @tc.name testFlexItemAlignCenterExceed
* @tc.desc The subcomponent exceeds the parent component.
*/
it('testFlexItemAlignCenterExceed', 0, async function (done) {
console.info('new testFlexItemAlignCenterExceed START');
globalThis.value.message.notify({name:'height', value:140});
globalThis.value.message.notify({name:'width', value:420});
await CommonFunc.sleep(3000);
let strJson1 = getInspectorByKey('flex01');
let obj1 = JSON.parse(strJson1);
let textFlex01 = CommonFunc.getComponentRect('textFlex01');
let textFlex02 = CommonFunc.getComponentRect('textFlex02');
let textFlex03 = CommonFunc.getComponentRect('textFlex03');
let flex01 = CommonFunc.getComponentRect('flex01');
expect(textFlex01.left).assertEqual(flex01.left)
expect(textFlex01.right).assertEqual(textFlex02.left)
expect(textFlex02.right).assertEqual(textFlex03.left)
expect(textFlex03.top).assertLess(flex01.top)
expect(textFlex03.bottom).assertLarger(flex01.bottom)
expect(textFlex03.right).assertEqual(flex01.right)
expect(textFlex01.top - flex01.top).assertEqual(flex01.bottom - textFlex01.bottom)
expect(textFlex02.top - flex01.top).assertEqual(flex01.bottom - textFlex02.bottom)
expect(Math.round(textFlex01.bottom - textFlex01.top)).assertEqual(vp2px(50))
expect(Math.round(textFlex02.bottom - textFlex02.top)).assertEqual(vp2px(100))
expect(Math.round(textFlex03.bottom - textFlex03.top)).assertEqual(vp2px(150))
expect(Math.round(textFlex01.right - textFlex01.left)).assertEqual(vp2px(140))
expect(Math.round(textFlex02.right - textFlex02.left)).assertEqual(vp2px(140))
expect(Math.round(textFlex03.right - textFlex03.left)).assertEqual(vp2px(140))
expect(obj1.$attrs.constructor.direction).assertEqual('FlexDirection.Row')
expect(obj1.$attrs.constructor.alignItems).assertEqual('ItemAlign.Center')
console.info('new testFlexItemAlignCenterExceed END');
done();
});
})
}
/*
* Copyright (c) 2023 iSoftStone Information Technology (Group) Co.,Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from "@ohos/hypium";
import router from '@system.router';
import CommonFunc from "../../../../MainAbility/common/Common";
import { MessageManager,Callback } from '../../../../MainAbility/common/MessageManager';
export default function flexExceed_CenterJsunit() {
describe('flexItemAlignCenterTest', function () {
beforeEach(async function (done) {
let options = {
uri: 'MainAbility/pages/Flex/alignItems/ItemAlign_Center/FlexExceed',
}
try {
router.clear();
await CommonFunc.sleep(1000);
let pages = router.getState();
console.info("get FlexExceed state success " + JSON.stringify(pages));
if (!("FlexExceed" == pages.name)) {
console.info("get FlexExceed state success " + JSON.stringify(pages.name));
let result = await router.push(options)
console.info("push FlexExceed page success " + JSON.stringify(result));
}
} catch (err) {
console.error("push FlexExceed page error " + JSON.stringify(err));
}
await CommonFunc.sleep(2000);
done()
});
afterEach(async function () {
await CommonFunc.sleep(1000);
console.info("FlexExceed after each called");
});
/**
* @tc.number SUB_ACE_FLEXALIGNITEMS_CENTER_0600
* @tc.name testFlexItemAlignCenterSetMarPad
* @tc.desc Subcomponent inside when parent component set margin and padding.
*/
it('testFlexItemAlignCenterSetMarPad', 0, async function (done) {
console.info('new testFlexItemAlignCenterSetMarPad START');
globalThis.value.message.notify({name:'padding', value:10})
globalThis.value.message.notify({name:'margin', value:10})
await CommonFunc.sleep(2000);
let strJson1 = getInspectorByKey('flexExceed01');
let obj1 = JSON.parse(strJson1);
let textExceed01 = CommonFunc.getComponentRect('textExceed01');
let textExceed02 = CommonFunc.getComponentRect('textExceed02');
let textExceed03 = CommonFunc.getComponentRect('textExceed03');
let flexExceed01 = CommonFunc.getComponentRect('flexExceed01');
expect(Math.round(textExceed01.left - flexExceed01.left)).assertEqual(vp2px(10))
expect(textExceed03.right).assertLess(flexExceed01.right)
expect(textExceed01.top - flexExceed01.top).assertEqual(flexExceed01.bottom - textExceed01.bottom)
expect(textExceed02.top - flexExceed01.top).assertEqual(flexExceed01.bottom - textExceed02.bottom)
expect(textExceed03.top - flexExceed01.top).assertEqual(flexExceed01.bottom - textExceed03.bottom)
expect(Math.round(textExceed01.bottom - textExceed01.top)).assertEqual(vp2px(50))
expect(Math.round(textExceed02.bottom - textExceed02.top)).assertEqual(vp2px(100))
expect(Math.round(textExceed03.bottom - textExceed03.top)).assertEqual(vp2px(150))
expect(Math.round(textExceed01.right - textExceed01.left)).assertEqual(vp2px(150))
expect(Math.round(textExceed02.right - textExceed02.left)).assertEqual(vp2px(150))
expect(Math.round(textExceed03.right - textExceed03.left)).assertEqual(vp2px(150))
expect(obj1.$attrs.constructor.direction).assertEqual('FlexDirection.Row')
expect(obj1.$attrs.constructor.alignItems).assertEqual('ItemAlign.Center')
console.info('new testFlexItemAlignCenterSetMarPad END');
done();
});
/**
* @tc.number SUB_ACE_FLEXALIGNITEMS_CENTER_0700
* @tc.name testFlexItemAlignCenterSetMarPadExceed
* @tc.desc Subcomponent outside when parent component set margin and padding.
*/
it('testFlexItemAlignCenterSetMarPadExceed', 0, async function (done) {
console.info('new testFlexItemAlignCenterSetMarPadExceed START');
globalThis.value.message.notify({name:'padding', value:30});
globalThis.value.message.notify({name:'margin', value:30});
await CommonFunc.sleep(2000);
let strJson1 = getInspectorByKey('flexExceed01');
let obj1 = JSON.parse(strJson1);
let textExceed01 = CommonFunc.getComponentRect('textExceed01');
let textExceed02 = CommonFunc.getComponentRect('textExceed02');
let textExceed03 = CommonFunc.getComponentRect('textExceed03');
let flexExceed01 = CommonFunc.getComponentRect('flexExceed01');
expect(Math.round(textExceed01.left - flexExceed01.left)).assertEqual(vp2px(30))
expect(textExceed03.right).assertLess(flexExceed01.right)
expect(textExceed01.top - flexExceed01.top).assertEqual(flexExceed01.bottom - textExceed01.bottom)
expect(textExceed02.top - flexExceed01.top).assertEqual(flexExceed01.bottom - textExceed02.bottom)
expect(textExceed03.top - flexExceed01.top).assertEqual(flexExceed01.bottom - textExceed03.bottom)
expect(Math.round(textExceed01.bottom - textExceed01.top)).assertEqual(vp2px(50))
expect(Math.round(textExceed02.bottom - textExceed02.top)).assertEqual(vp2px(100))
expect(Math.round(textExceed03.bottom - textExceed03.top)).assertEqual(vp2px(150))
expect(Math.round(textExceed01.right - textExceed01.left)).assertEqual(vp2px(440/3))
expect(Math.round(textExceed02.right - textExceed02.left)).assertEqual(vp2px(440/3))
expect(Math.round(textExceed03.right - textExceed03.left)).assertEqual(vp2px(440/3))
expect(obj1.$attrs.constructor.direction).assertEqual('FlexDirection.Row')
expect(obj1.$attrs.constructor.alignItems).assertEqual('ItemAlign.Center')
console.info('new testFlexItemAlignCenterSetMarPadExceed END');
done();
});
})
}
/*
* Copyright (c) 2023 iSoftStone Information Technology (Group) Co.,Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from "@ohos/hypium";
import router from '@system.router';
import CommonFunc from "../../../../MainAbility/common/Common";
import { MessageManager,Callback } from '../../../../MainAbility/common/MessageManager';
export default function flexHeightModify_CenterJsunit() {
describe('flexItemAlignCenterTest', function () {
beforeEach(async function (done) {
let options = {
uri: 'MainAbility/pages/Flex/alignItems/ItemAlign_Center/FlexHeightModify',
}
try {
router.clear();
await CommonFunc.sleep(1000);
let pages = router.getState();
console.info("get FlexHeightModify state success " + JSON.stringify(pages));
if (!("FlexHeightModify" == pages.name)) {
console.info("get FlexHeightModify state success " + JSON.stringify(pages.name));
let result = await router.push(options)
console.info("push FlexHeightModify page success " + JSON.stringify(result));
}
} catch (err) {
console.error("push FlexHeightModify page error " + JSON.stringify(err));
}
await CommonFunc.sleep(2000);
done()
});
afterEach(async function () {
await CommonFunc.sleep(1000);
console.info("FlexHeightModify after each called");
});
/**
* @tc.number SUB_ACE_FLEXALIGNITEMS_CENTER_0800
* @tc.name testFlexItemAlignCenterDefaultSize
* @tc.desc Modify the first subcomponent's height.
*/
it('testFlexItemAlignCenterDefaultSize', 0, async function (done) {
console.info('new testFlexItemAlignCenterDefaultSize START');
let strJson1 = getInspectorByKey('flexHeightModify');
let obj1 = JSON.parse(strJson1);
let textHeightModify01 = CommonFunc.getComponentRect('textHeightModify01');
let textHeightModify02 = CommonFunc.getComponentRect('textHeightModify02');
let textHeightModify03 = CommonFunc.getComponentRect('textHeightModify03');
let flexHeightModify = CommonFunc.getComponentRect('flexHeightModify');
expect(textHeightModify01.left).assertEqual(flexHeightModify.left)
expect(textHeightModify02.left).assertEqual(textHeightModify01.right)
expect(textHeightModify01.top - flexHeightModify.top).assertEqual(flexHeightModify.bottom - textHeightModify01.bottom)
expect(textHeightModify02.top - flexHeightModify.top).assertEqual(flexHeightModify.bottom - textHeightModify02.bottom)
expect(textHeightModify03.top - flexHeightModify.top).assertEqual(flexHeightModify.bottom - textHeightModify03.bottom)
expect(Math.round((textHeightModify01.top - flexHeightModify.top)*10)/10).assertEqual(Math.round(vp2px(75)*10)/10)
expect(Math.round(textHeightModify01.bottom - textHeightModify01.top)).assertEqual(vp2px(50))
expect(Math.round(textHeightModify02.bottom - textHeightModify02.top)).assertEqual(vp2px(100))
expect(Math.round(textHeightModify03.bottom - textHeightModify03.top)).assertEqual(vp2px(150))
expect(Math.round(textHeightModify01.right - textHeightModify01.left)).assertEqual(vp2px(150))
expect(Math.round(textHeightModify02.right - textHeightModify02.left)).assertEqual(vp2px(150))
expect(Math.round(textHeightModify03.right - textHeightModify03.left)).assertEqual(vp2px(150))
expect(obj1.$attrs.constructor.direction).assertEqual('FlexDirection.Row')
expect(obj1.$attrs.constructor.alignItems).assertEqual('ItemAlign.Center')
console.info('new testFlexItemAlignCenterDefaultSize END');
done();
});
/**
* @tc.number SUB_ACE_FLEXALIGNITEMS_CENTER_0900
* @tc.name testFlexItemAlignCenterHeightModify
* @tc.desc Modify the first subcomponent's height.
*/
it('testFlexItemAlignCenterHeightModify', 0, async function (done) {
console.info('new testFlexItemAlignCenterHeightModify START');
globalThis.value.message.notify({name:'height', value:80});
await CommonFunc.sleep(2000);
let strJson1 = getInspectorByKey('flexHeightModify');
let obj1 = JSON.parse(strJson1);
let textHeightModify01 = CommonFunc.getComponentRect('textHeightModify01');
let textHeightModify02 = CommonFunc.getComponentRect('textHeightModify02');
let textHeightModify03 = CommonFunc.getComponentRect('textHeightModify03');
let flexHeightModify = CommonFunc.getComponentRect('flexHeightModify');
expect(textHeightModify01.left).assertEqual(flexHeightModify.left)
expect(textHeightModify02.left).assertEqual(textHeightModify01.right)
expect(textHeightModify01.top - flexHeightModify.top).assertEqual(flexHeightModify.bottom - textHeightModify01.bottom)
expect(textHeightModify02.top - flexHeightModify.top).assertEqual(flexHeightModify.bottom - textHeightModify02.bottom)
expect(textHeightModify03.top - flexHeightModify.top).assertEqual(flexHeightModify.bottom - textHeightModify03.bottom)
expect(Math.round(textHeightModify01.top - flexHeightModify.top)).assertEqual(vp2px(60))
expect(Math.round(textHeightModify01.bottom - textHeightModify01.top)).assertEqual(vp2px(80))
expect(Math.round(textHeightModify02.bottom - textHeightModify02.top)).assertEqual(vp2px(100))
expect(Math.round(textHeightModify03.bottom - textHeightModify03.top)).assertEqual(vp2px(150))
expect(Math.round(textHeightModify01.right - textHeightModify01.left)).assertEqual(vp2px(150))
expect(Math.round(textHeightModify02.right - textHeightModify02.left)).assertEqual(vp2px(150))
expect(Math.round(textHeightModify03.right - textHeightModify03.left)).assertEqual(vp2px(150))
expect(obj1.$attrs.constructor.direction).assertEqual('FlexDirection.Row')
expect(obj1.$attrs.constructor.alignItems).assertEqual('ItemAlign.Center')
console.info('new testFlexItemAlignCenterHeightModify END');
done();
});
})
}
/*
* Copyright (c) 2023 iSoftStone Information Technology (Group) Co.,Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from "@ohos/hypium";
import router from '@system.router';
import CommonFunc from "../../../../MainAbility/common/Common";
export default function flexMargin_CenterJsunit() {
describe('flexItemAlignCenterTest', function () {
beforeEach(async function (done) {
let options = {
uri: 'MainAbility/pages/Flex/alignItems/ItemAlign_Center/FlexMargin',
}
try {
router.clear();
await CommonFunc.sleep(1000);
let pages = router.getState();
console.info("get FlexMargin state success " + JSON.stringify(pages));
if (!("FlexMargin" == pages.name)) {
console.info("get FlexMargin state success " + JSON.stringify(pages.name));
let result = await router.push(options)
console.info("push FlexMargin page success " + JSON.stringify(result));
}
} catch (err) {
console.error("push FlexMargin page error " + JSON.stringify(err));
}
await CommonFunc.sleep(2000);
done()
});
afterEach(async function () {
await CommonFunc.sleep(1000);
console.info("FlexMargin after each called");
});
/**
* @tc.number SUB_ACE_FLEXALIGNITEMS_CENTER_0500
* @tc.name testItemAlignCenterParentSetMargin
* @tc.desc Parent component set margin attribute.
*/
it('testItemAlignCenterParentSetMargin', 0, async function (done) {
console.info('new testItemAlignCenterParentSetMargin START');
let strJson1 = getInspectorByKey('flexMargin');
let obj1 = JSON.parse(strJson1);
let textFlexMargin01 = CommonFunc.getComponentRect('textFlexMargin01');
let textFlexMargin02 = CommonFunc.getComponentRect('textFlexMargin02');
let textFlexMargin03 = CommonFunc.getComponentRect('textFlexMargin03');
let flexMargin = CommonFunc.getComponentRect('flexMargin');
expect(textFlexMargin01.left).assertEqual(flexMargin.left)
expect(textFlexMargin01.right).assertEqual(textFlexMargin02.left)
expect(textFlexMargin02.right).assertEqual(textFlexMargin03.left)
expect(Math.round(flexMargin.right - textFlexMargin03.right)).assertEqual(vp2px(50))
expect(textFlexMargin01.top - flexMargin.top).assertEqual(flexMargin.bottom - textFlexMargin01.bottom)
expect(textFlexMargin02.top - flexMargin.top).assertEqual(flexMargin.bottom - textFlexMargin02.bottom)
expect(textFlexMargin03.top - flexMargin.top).assertEqual(flexMargin.bottom - textFlexMargin03.bottom)
expect(Math.round(textFlexMargin01.bottom - textFlexMargin01.top)).assertEqual(vp2px(50))
expect(Math.round(textFlexMargin02.bottom - textFlexMargin02.top)).assertEqual(vp2px(100))
expect(Math.round(textFlexMargin03.bottom - textFlexMargin03.top)).assertEqual(vp2px(150))
expect(Math.round(textFlexMargin01.right - textFlexMargin01.left)).assertEqual(vp2px(150))
expect(Math.round(textFlexMargin02.right - textFlexMargin02.left)).assertEqual(vp2px(150))
expect(Math.round(textFlexMargin03.right - textFlexMargin03.left)).assertEqual(vp2px(150))
expect(obj1.$attrs.constructor.direction).assertEqual('FlexDirection.Row')
expect(obj1.$attrs.constructor.alignItems).assertEqual('ItemAlign.Center')
console.info('new testItemAlignCenterParentSetMargin END');
done();
});
})
}
/*
* Copyright (c) 2023 iSoftStone Information Technology (Group) Co.,Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from "@ohos/hypium";
import router from '@system.router';
import CommonFunc from "../../../../MainAbility/common/Common";
export default function flexOffset_CenterJsunit() {
describe('flexItemAlignCenterTest', function () {
beforeEach(async function (done) {
let options = {
uri: 'MainAbility/pages/Flex/alignItems/ItemAlign_Center/FlexOffset',
}
try {
router.clear();
await CommonFunc.sleep(1000);
let pages = router.getState();
console.info("get flexOffsetTest state success " + JSON.stringify(pages));
if (!("flexOffsetTest" == pages.name)) {
console.info("get flexOffsetTest state success " + JSON.stringify(pages.name));
let result = await router.push(options)
console.info("push flexOffsetTest page success " + JSON.stringify(result));
}
} catch (err) {
console.error("push flexOffsetTest page error " + JSON.stringify(err));
}
await CommonFunc.sleep(2000);
done()
});
afterEach(async function () {
await CommonFunc.sleep(1000);
console.info("flexOffsetTest after each called");
});
/**
* @tc.number SUB_ACE_FLEXALIGNITEMS_CENTER_1000
* @tc.name testFlexItemAlignCenterSetOffset
* @tc.desc First subcomponent set offset attribute.
*/
it('testFlexItemAlignCenterSetOffset', 0, async function (done) {
console.info('new testFlexItemAlignCenterSetOffset START');
let strJson1 = getInspectorByKey('flexOffset');
let obj1 = JSON.parse(strJson1);
let textOffset01 = CommonFunc.getComponentRect('textOffset01');
let textOffset02 = CommonFunc.getComponentRect('textOffset02');
let textOffset03 = CommonFunc.getComponentRect('textOffset03');
let flexOffset = CommonFunc.getComponentRect('flexOffset');
expect(Math.round((textOffset01.right - textOffset02.left)*10)/10).assertEqual(Math.round(vp2px(15)*10)/10)
expect(Math.round((textOffset01.top - flexOffset.top)*10)/10).assertEqual(Math.round(vp2px(105)*10)/10)
expect(Math.round((textOffset01.left - flexOffset.left)*10)/10).assertEqual(Math.round(vp2px(15)*10)/10)
expect(Math.round((flexOffset.bottom - textOffset01.bottom)*10)/10).assertEqual(Math.round(vp2px(45)*10)/10)
expect(textOffset02.top - flexOffset.top).assertEqual(flexOffset.bottom - textOffset02.bottom)
expect(textOffset03.top - flexOffset.top).assertEqual(flexOffset.bottom - textOffset03.bottom)
expect(Math.round(textOffset01.bottom - textOffset01.top)).assertEqual(vp2px(50))
expect(Math.round(textOffset02.bottom - textOffset02.top)).assertEqual(vp2px(100))
expect(Math.round(textOffset03.bottom - textOffset03.top)).assertEqual(vp2px(150))
expect(Math.round(textOffset01.right - textOffset01.left)).assertEqual(vp2px(150))
expect(Math.round(textOffset02.right - textOffset02.left)).assertEqual(vp2px(150))
expect(Math.round(textOffset03.right - textOffset03.left)).assertEqual(vp2px(150))
expect(obj1.$attrs.constructor.direction).assertEqual('FlexDirection.Row')
expect(obj1.$attrs.constructor.alignItems).assertEqual('ItemAlign.Center')
console.info('new testFlexItemAlignCenterSetOffset END');
done();
});
})
}
/*
* Copyright (c) 2023 iSoftStone Information Technology (Group) Co.,Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { MessageManager,Callback } from '../../../../MainAbility/common/MessageManager';
import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from "@ohos/hypium";
import router from '@system.router';
import CommonFunc from "../../../../MainAbility/common/Common";
export default function flexPadding_CenterJsunit() {
describe('flexItemAlignCenterTest', function () {
beforeEach(async function (done) {
let options = {
uri: 'MainAbility/pages/Flex/alignItems/ItemAlign_Center/FlexPadding',
}
try {
router.clear();
await CommonFunc.sleep(1000);
let pages = router.getState();
console.info("get FlexPadding state success " + JSON.stringify(pages));
if (!("FlexPadding" == pages.name)) {
console.info("get FlexPadding state success " + JSON.stringify(pages.name));
let result = await router.push(options)
console.info("push FlexPadding page success " + JSON.stringify(result));
}
} catch (err) {
console.error("push FlexPadding page error " + JSON.stringify(err));
}
await CommonFunc.sleep(2000);
done()
});
afterEach(async function () {
await CommonFunc.sleep(1000);
console.info("FlexPadding after each called");
});
/**
* @tc.number SUB_ACE_FLEXALIGNITEMS_CENTER_0300
* @tc.name testFlexItemAlignCenterParentSetPadding
* @tc.desc Parent component set paddding,subcomponent does not exceed the parent component.
*/
it('testFlexItemAlignCenterParentSetPadding', 0, async function (done) {
console.info('new testFlexItemAlignCenterParentSetPadding START');
globalThis.value.message.notify({name:'padding', value:10});
await CommonFunc.sleep(2000);
let strJson1 = getInspectorByKey('flexPadding01');
let obj1 = JSON.parse(strJson1);
let textFlexPadding01 = CommonFunc.getComponentRect('textFlexPadding01');
let textFlexPadding02 = CommonFunc.getComponentRect('textFlexPadding02');
let textFlexPadding03 = CommonFunc.getComponentRect('textFlexPadding03');
let flexPadding01 = CommonFunc.getComponentRect('flexPadding01');
expect(Math.round(textFlexPadding01.left - flexPadding01.left)).assertEqual(vp2px(10))
expect(Math.round(flexPadding01.right - textFlexPadding03.right)).assertEqual(vp2px(40))
expect(textFlexPadding01.top - flexPadding01.top).assertEqual(flexPadding01.bottom - textFlexPadding01.bottom)
expect(textFlexPadding02.top - flexPadding01.top).assertEqual(flexPadding01.bottom - textFlexPadding02.bottom)
expect(textFlexPadding03.top - flexPadding01.top).assertEqual(flexPadding01.bottom - textFlexPadding03.bottom)
expect(Math.round(textFlexPadding01.bottom - textFlexPadding01.top)).assertEqual(vp2px(50))
expect(Math.round(textFlexPadding02.bottom - textFlexPadding02.top)).assertEqual(vp2px(100))
expect(Math.round(textFlexPadding03.bottom - textFlexPadding03.top)).assertEqual(vp2px(150))
expect(Math.round(textFlexPadding01.right - textFlexPadding01.left)).assertEqual(vp2px(150))
expect(Math.round(textFlexPadding02.right - textFlexPadding02.left)).assertEqual(vp2px(150))
expect(Math.round(textFlexPadding03.right - textFlexPadding03.left)).assertEqual(vp2px(150))
expect(obj1.$attrs.constructor.direction).assertEqual('FlexDirection.Row')
expect(obj1.$attrs.constructor.alignItems).assertEqual('ItemAlign.Center')
console.info('new testFlexItemAlignCenterParentSetPadding END');
done();
});
/**
* @tc.number SUB_ACE_FLEXALIGNITEMS_CENTER_0400
* @tc.name testFlexItemAlignCenterParentSetPaddingExceed
* @tc.desc Parent component set paddding,subcomponent exceedS the parent component.
*/
it('testFlexItemAlignCenterParentSetPaddingExceed', 0, async function (done) {
console.info('new testFlexItemAlignCenterParentSetPaddingExceed START');
globalThis.value.message.notify({name:'padding', value:30});
await CommonFunc.sleep(2000);
let strJson1 = getInspectorByKey('flexPadding01');
let obj1 = JSON.parse(strJson1);
let textFlexPadding01 = CommonFunc.getComponentRect('textFlexPadding01');
let textFlexPadding02 = CommonFunc.getComponentRect('textFlexPadding02');
let textFlexPadding03 = CommonFunc.getComponentRect('textFlexPadding03');
let flexPadding01 = CommonFunc.getComponentRect('flexPadding01');
expect(Math.round(textFlexPadding01.left - flexPadding01.left)).assertEqual(vp2px(30))
expect(Math.round(flexPadding01.right - textFlexPadding03.right)).assertEqual(vp2px(30))
expect(textFlexPadding01.top - flexPadding01.top).assertEqual(flexPadding01.bottom - textFlexPadding01.bottom)
expect(textFlexPadding02.top - flexPadding01.top).assertEqual(flexPadding01.bottom - textFlexPadding02.bottom)
expect(textFlexPadding03.top - flexPadding01.top).assertEqual(flexPadding01.bottom - textFlexPadding03.bottom)
expect(Math.round(textFlexPadding01.bottom - textFlexPadding01.top)).assertEqual(vp2px(50))
expect(Math.round(textFlexPadding02.bottom - textFlexPadding02.top)).assertEqual(vp2px(100))
expect(Math.round(textFlexPadding03.bottom - textFlexPadding03.top)).assertEqual(vp2px(150))
expect(Math.round(textFlexPadding01.right - textFlexPadding01.left)).assertEqual(vp2px(440/3))
expect(Math.round(textFlexPadding02.right - textFlexPadding02.left)).assertEqual(vp2px(440/3))
expect(Math.round(textFlexPadding03.right - textFlexPadding03.left)).assertEqual(vp2px(440/3))
expect(obj1.$attrs.constructor.direction).assertEqual('FlexDirection.Row')
expect(obj1.$attrs.constructor.alignItems).assertEqual('ItemAlign.Center')
console.info('new testFlexItemAlignCenterParentSetPaddingExceed END');
done();
});
})
}
/*
* Copyright (c) 2023 iSoftStone Information Technology (Group) Co.,Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from "@ohos/hypium";
import router from '@system.router';
import CommonFunc from "../../../../MainAbility/common/Common";
import { MessageManager,Callback } from '../../../../MainAbility/common/MessageManager';
export default function flexTextMargin_CenterJsunit() {
describe('flexItemAlignCenterTest', function () {
beforeEach(async function (done) {
let options = {
uri: 'MainAbility/pages/Flex/alignItems/ItemAlign_Center/FlexTextMargin',
}
try {
router.clear();
await CommonFunc.sleep(1000);
let pages = router.getState();
console.info("get FlexTextMargin state success " + JSON.stringify(pages));
if (!("FlexTextMargin" == pages.name)) {
console.info("get FlexTextMargin state success " + JSON.stringify(pages.name));
let result = await router.push(options)
console.info("push FlexTextMargin page success " + JSON.stringify(result));
}
} catch (err) {
console.error("push FlexTextMargin page error " + JSON.stringify(err));
}
await CommonFunc.sleep(2000);
done()
});
afterEach(async function () {
await CommonFunc.sleep(1000);
console.info("FlexTextMargin after each called");
});
/**
* @tc.number SUB_ACE_FLEXALIGNITEMS_CENTER_1400
* @tc.name testFlexItemAlignCenterSubSetMargin
* @tc.desc Subcomponents set margin within the scope of the parent component.
*/
it('testFlexItemAlignCenterSubSetMargin', 0, async function (done) {
console.info('new testFlexItemAlignCenterSubSetMargin START');
globalThis.value.message.notify({name:'margin', value:10});
await CommonFunc.sleep(2000);
let strJson1 = getInspectorByKey('flexTextMargin01');
let obj1 = JSON.parse(strJson1);
let textMargin01 = CommonFunc.getComponentRect('textMargin01');
let textMargin02 = CommonFunc.getComponentRect('textMargin02');
let textMargin03 = CommonFunc.getComponentRect('textMargin03');
let flexTextMargin01 = CommonFunc.getComponentRect('flexTextMargin01');
expect(Math.round(textMargin01.left - flexTextMargin01.left)).assertEqual(vp2px(10))
expect(Math.round(textMargin02.left - textMargin01.right)).assertEqual(vp2px(10))
expect(textMargin03.left).assertEqual(textMargin02.right)
expect(Math.round(flexTextMargin01.right - textMargin03.right)).assertEqual(vp2px(30))
expect(textMargin01.top - flexTextMargin01.top).assertEqual(flexTextMargin01.bottom - textMargin01.bottom)
expect(textMargin02.top - flexTextMargin01.top).assertEqual(flexTextMargin01.bottom - textMargin02.bottom)
expect(textMargin03.top - flexTextMargin01.top).assertEqual(flexTextMargin01.bottom - textMargin03.bottom)
expect(Math.round(textMargin01.bottom - textMargin01.top)).assertEqual(vp2px(50))
expect(Math.round(textMargin02.bottom - textMargin02.top)).assertEqual(vp2px(100))
expect(Math.round(textMargin03.bottom - textMargin03.top)).assertEqual(vp2px(150))
expect(Math.round(textMargin01.right - textMargin01.left)).assertEqual(vp2px(150))
expect(Math.round(textMargin02.right - textMargin02.left)).assertEqual(vp2px(150))
expect(Math.round(textMargin03.right - textMargin03.left)).assertEqual(vp2px(150))
expect(obj1.$attrs.constructor.direction).assertEqual('FlexDirection.Row')
expect(obj1.$attrs.constructor.alignItems).assertEqual('ItemAlign.Center')
console.info('new testFlexItemAlignCenterSubSetMargin END');
done();
});
/**
* @tc.number SUB_ACE_FLEXALIGNITEMS_CENTER_1500
* @tc.name testFlexItemAlignCenterSubSetMarginExceed
* @tc.desc Subcomponents set margin outside the scope of the parent component.
*/
it('testFlexItemAlignCenterSubSetMarginExceed', 0, async function (done) {
console.info('new testFlexItemAlignCenterSubSetMarginExceed START');
globalThis.value.message.notify({name:'margin', value:30});
await CommonFunc.sleep(2000);
let strJson1 = getInspectorByKey('flexTextMargin01');
let obj1 = JSON.parse(strJson1);
let textMargin01 = CommonFunc.getComponentRect('textMargin01');
let textMargin02 = CommonFunc.getComponentRect('textMargin02');
let textMargin03 = CommonFunc.getComponentRect('textMargin03');
let flexTextMargin01 = CommonFunc.getComponentRect('flexTextMargin01');
expect(Math.round(textMargin01.left - flexTextMargin01.left)).assertEqual(vp2px(30))
expect(Math.round(textMargin02.left - textMargin01.right)).assertEqual(vp2px(30))
expect(textMargin03.left).assertEqual(textMargin02.right)
expect(textMargin03.right).assertEqual(flexTextMargin01.right)
expect(textMargin01.top - flexTextMargin01.top).assertEqual(flexTextMargin01.bottom - textMargin01.bottom)
expect(textMargin02.top - flexTextMargin01.top).assertEqual(flexTextMargin01.bottom - textMargin02.bottom)
expect(textMargin03.top - flexTextMargin01.top).assertEqual(flexTextMargin01.bottom - textMargin03.bottom)
expect(Math.round(textMargin01.bottom - textMargin01.top)).assertEqual(vp2px(50))
expect(Math.round(textMargin02.bottom - textMargin02.top)).assertEqual(vp2px(100))
expect(Math.round(textMargin03.bottom - textMargin03.top)).assertEqual(vp2px(150))
expect(Math.round(textMargin01.right - textMargin01.left)).assertEqual(vp2px(440/3))
expect(Math.round(textMargin02.right - textMargin02.left)).assertEqual(vp2px(440/3))
expect(Math.round(textMargin03.right - textMargin03.left)).assertEqual(vp2px(440/3))
expect(obj1.$attrs.constructor.direction).assertEqual('FlexDirection.Row')
expect(obj1.$attrs.constructor.alignItems).assertEqual('ItemAlign.Center')
console.info('new testFlexItemAlignCenterSubSetMarginExceed END');
done();
});
})
}
/*
* Copyright (c) 2023 iSoftStone Information Technology (Group) Co.,Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { describe, beforeAll, beforeEach, afterEach, afterAll, it, expect } from "@ohos/hypium";
import router from '@system.router';
import CommonFunc from "../../../../MainAbility/common/Common";
import { MessageManager,Callback } from '../../../../MainAbility/common/MessageManager';
export default function flexVisibility_CenterJsunit() {
describe('flexItemAlignCenterTest', function () {
beforeEach(async function (done) {
let options = {
uri: 'MainAbility/pages/Flex/alignItems/ItemAlign_Center/FlexVisibility',
}
try {
router.clear();
await CommonFunc.sleep(1000);
let pages = router.getState();
console.info("get FlexVisibility state success " + JSON.stringify(pages));
if (!("FlexVisibility" == pages.name)) {
console.info("get FlexVisibility state success " + JSON.stringify(pages.name));
let result = await router.push(options)
console.info("push FlexVisibility page success " + JSON.stringify(result));
}
} catch (err) {
console.error("push FlexVisibility page error " + JSON.stringify(err));
}
await CommonFunc.sleep(2000);
done()
});
afterEach(async function () {
await CommonFunc.sleep(1000);
console.info("FlexVisibility after each called");
});
/**
* @tc.number SUB_ACE_FLEXALIGNITEMS_CENTER_1100
* @tc.name testFlexItemAlignCenterSubSetVisibilityNone
* @tc.desc The first subcomponent set Visibility.None attribute.
*/
it('testFlexItemAlignCenterSubSetVisibilityNone', 0, async function (done) {
console.info('new testFlexItemAlignCenterSubSetVisibilityNone START');
try {
globalThis.value.message.notify({name:'visibility', value:Visibility.None});
await CommonFunc.sleep(2000);
let strJson1 = getInspectorByKey('flexVisible');
let obj1 = JSON.parse(strJson1);
let strJson2 = getInspectorByKey('textVisible01');
let obj2 = JSON.parse(strJson2);
expect(obj2.$attrs.visibility).assertEqual("Visibility.None");
let textVisible01 = CommonFunc.getComponentRect('textVisible01');
let textVisible02 = CommonFunc.getComponentRect('textVisible02');
let textVisible03 = CommonFunc.getComponentRect('textVisible03');
let flexVisible = CommonFunc.getComponentRect('flexVisible');
expect(textVisible01.left).assertEqual(textVisible01.right)
expect(textVisible01.left).assertEqual(flexVisible.left)
expect(Math.round(textVisible02.bottom - textVisible02.top)).assertEqual(vp2px(100))
expect(Math.round(textVisible03.bottom - textVisible03.top)).assertEqual(vp2px(150))
expect(Math.round(textVisible02.right - textVisible02.left)).assertEqual(vp2px(150))
expect(Math.round(textVisible03.right - textVisible03.left)).assertEqual(vp2px(150))
expect(Math.round(flexVisible.right - textVisible03.right)).assertEqual(vp2px(200))
expect(textVisible02.top - flexVisible.top).assertEqual(flexVisible.bottom - textVisible02.bottom)
expect(textVisible03.top - flexVisible.top).assertEqual(flexVisible.bottom - textVisible03.bottom)
expect(obj1.$attrs.constructor.direction).assertEqual('FlexDirection.Row')
expect(obj1.$attrs.constructor.alignItems).assertEqual('ItemAlign.Center')
} catch (err) {
console.error('[testFlexItemAlignBaselineSubSetVisibilityNone] failed');
expect().assertFail();
}
console.info('new testFlexItemAlignCenterSubSetVisibilityNone END');
done();
});
/**
* @tc.number SUB_ACE_FLEXALIGNITEMS_CENTER_1200
* @tc.name testFlexItemAlignCenterSubSetVisibilityHidden
* @tc.desc The first subcomponent set Visibility.Hidden attribute.
*/
it('testFlexItemAlignCenterSubSetVisibilityHidden', 0, async function (done) {
console.info('new testFlexItemAlignCenterSubSetVisibilityHidden START');
try {
globalThis.value.message.notify({name:'visibility', value:Visibility.Hidden});
await CommonFunc.sleep(2000);
let strJson1 = getInspectorByKey('flexVisible');
let obj1 = JSON.parse(strJson1);
let strJson2 = getInspectorByKey('textVisible01');
let obj2 = JSON.parse(strJson2);
expect(obj2.$attrs.visibility).assertEqual("Visibility.Hidden");
let textVisible01 = CommonFunc.getComponentRect('textVisible01');
let textVisible02 = CommonFunc.getComponentRect('textVisible02');
let textVisible03 = CommonFunc.getComponentRect('textVisible03');
let flexVisible = CommonFunc.getComponentRect('flexVisible');
expect(Math.round(textVisible01.bottom - textVisible01.top)).assertEqual(vp2px(50))
expect(Math.round(textVisible01.right - textVisible01.left)).assertEqual(vp2px(150))
expect(Math.round(textVisible02.bottom - textVisible02.top)).assertEqual(vp2px(100))
expect(Math.round(textVisible02.right - textVisible02.left)).assertEqual(vp2px(150))
expect(Math.round(textVisible03.bottom - textVisible03.top)).assertEqual(vp2px(150))
expect(Math.round(textVisible03.right - textVisible03.left)).assertEqual(vp2px(150))
expect(Math.round(flexVisible.right - textVisible03.right)).assertEqual(vp2px(50))
expect(textVisible01.top - flexVisible.top).assertEqual(flexVisible.bottom - textVisible01.bottom)
expect(textVisible02.top - flexVisible.top).assertEqual(flexVisible.bottom - textVisible02.bottom)
expect(textVisible03.top - flexVisible.top).assertEqual(flexVisible.bottom - textVisible03.bottom)
expect(obj1.$attrs.constructor.direction).assertEqual('FlexDirection.Row')
expect(obj1.$attrs.constructor.alignItems).assertEqual('ItemAlign.Center')
} catch (err) {
console.error('[testFlexItemAlignBaselineSubSetVisibilityHidden] failed');
expect().assertFail();
}
console.info('new testFlexItemAlignCenterSubSetVisibilityHidden END');
done();
});
})
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册