13af6ab5fSopenharmony_ci/*
23af6ab5fSopenharmony_ci * Copyright (c) 2023-2024 Huawei Device Co., Ltd.
33af6ab5fSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
43af6ab5fSopenharmony_ci * you may not use this file except in compliance with the License.
53af6ab5fSopenharmony_ci * You may obtain a copy of the License at
63af6ab5fSopenharmony_ci *
73af6ab5fSopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0
83af6ab5fSopenharmony_ci *
93af6ab5fSopenharmony_ci * Unless required by applicable law or agreed to in writing, software
103af6ab5fSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
113af6ab5fSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
123af6ab5fSopenharmony_ci * See the License for the specific language governing permissions and
133af6ab5fSopenharmony_ci * limitations under the License.
143af6ab5fSopenharmony_ci */
153af6ab5fSopenharmony_ci
163af6ab5fSopenharmony_cienum E1 {
173af6ab5fSopenharmony_ci  e1_item1,
183af6ab5fSopenharmony_ci  e1_item2 = 7,
193af6ab5fSopenharmony_ci  e1_item3,
203af6ab5fSopenharmony_ci  e1_item4 = 1
213af6ab5fSopenharmony_ci}
223af6ab5fSopenharmony_ci
233af6ab5fSopenharmony_ci//let cons = new Console;
243af6ab5fSopenharmony_ci
253af6ab5fSopenharmony_cifunction main() {
263af6ab5fSopenharmony_ci
273af6ab5fSopenharmony_ci  assert(E1.e1_item1.toString() == "0");
283af6ab5fSopenharmony_ci  assert(E1.e1_item1.valueOf() == 0);
293af6ab5fSopenharmony_ci  assert(E1.e1_item2.toString() == "7");
303af6ab5fSopenharmony_ci  assert(E1.e1_item2.valueOf() == 7);
313af6ab5fSopenharmony_ci  assert(E1.e1_item3.toString() == "8");
323af6ab5fSopenharmony_ci  assert(E1.e1_item3.valueOf() == 8);
333af6ab5fSopenharmony_ci
343af6ab5fSopenharmony_ci // cons.print("First element of 'E1': '" + E1.e1_item1.toString() + "' = " + E1.e1_item1.ordinal()  + 
353af6ab5fSopenharmony_ci //   ", second: '" + E1.e1_item2.toString() + "' = " + E1.e1_item2.ordinal() + " and third: '" + 
363af6ab5fSopenharmony_ci //   E1.e1_item3.toString() + "' = " + E1.e1_item3.ordinal() + ".\n")
373af6ab5fSopenharmony_ci
383af6ab5fSopenharmony_ci  try {
393af6ab5fSopenharmony_ci
403af6ab5fSopenharmony_ci    let test1 : E1 = E1.getValueOf("e1_item1");
413af6ab5fSopenharmony_ci    let test2 : E1 = E1.getValueOf("e1_item2");
423af6ab5fSopenharmony_ci    let test3 : E1 = E1.getValueOf("e1_item3");
433af6ab5fSopenharmony_ci
443af6ab5fSopenharmony_ci    assert(test1.valueOf() == 0);
453af6ab5fSopenharmony_ci    assert(test1.getName() == "e1_item1");
463af6ab5fSopenharmony_ci    assert(test2.valueOf() == 7);
473af6ab5fSopenharmony_ci    assert(test2.getName() == "e1_item2");
483af6ab5fSopenharmony_ci    assert(test3.valueOf() == 8);
493af6ab5fSopenharmony_ci    assert(test3.getName() == "e1_item3");
503af6ab5fSopenharmony_ci
513af6ab5fSopenharmony_ci    //cons.print("First element of 'E1': '" + test1.toString() + "' = " + test1.ordinal() +
523af6ab5fSopenharmony_ci    //  ", second: '" + test2.toString() + "' = " + test2.ordinal() + " and third: '"  + test3.toString() + "' = " + test3.ordinal()  + ".\n")
533af6ab5fSopenharmony_ci  }
543af6ab5fSopenharmony_ci  catch (e) {
553af6ab5fSopenharmony_ci    //cons.print("Exception happened")
563af6ab5fSopenharmony_ci  }
573af6ab5fSopenharmony_ci}
58