/* * Copyright (c) 2023 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. */ import assert = require('assert'); class Person { protected name: string; protected constructor(theName: string) { this.name = theName; } } class Employee extends Person { private department: string; constructor(name: string, department: string) { super(name); this.department = department; } public getElevatorPitch(): string { return `Hello, my name is ${this.name} and I work in ${this.department}.`; } } let howard = new Employee('Howard', 'Sales'); assert(howard.getElevatorPitch() === 'Hello, my name is Howard and I work in Sales.', 'success');