/* * Copyright (c) 2021 Huawei Device 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. */ /* * @tc.name:module * @tc.desc:test module * @tc.type: FUNC * @tc.require: issueI5NO8G */ import { Car } from './B.js'; // Test direct Export & use after import import { Star } from './C.js'; // Test indirect Export & use after import import * as ns from './A.js'; import { D as ClassD} from './D.js'; import {tmp, f} from './exportas.js' let A = Car; var myCar = { name: "HWCar_Test", type: "HW_Test", price: "CNY:XXW_Test" } var infoA = A.carInfo.apply(myCar); let C = Star; var myStar = { name: "Polaris_Test", type: "fixedStar_Test", color: "Yellow_Test" } var infoC = Star.starColor.apply(myStar); if (infoA != "HWCar_Test:HW_Test:CNY:XXW_Test" ) { print("Direct Export Fail"); } else if (infoC != "Polaris_Test:fixedStar_Test:Yellow_Test") { print("Indirect Export Fail"); } else { print("Pass!!"); } class Test { constructor(a) { this.a = a } } var test = new Test(ns.a) print(test.a) var classTestD = new ClassD() print(classTestD.d) print("export as ... case test : " + tmp); f();