1/* 2 * Copyright (c) 2021-2025 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16/*--- 17desc: 11 Enumeration 18name: 11.enumeration/11.2.enumeration_string_values 19tags: [] 20---*/ 21 22type fooLambda = (arg: string) => Promise<string> 23 24enum Enum1 { 25 big_string = "mqpfcmvzctncgcjdjhxcghwcgnrxvxtuxnifrlumwpoukpezhupzbavqxkdwqkfviobuhjcnlajrjiarvboeatxpwuvbqwnbsngvxaux \ 26 gtyustiddvloyzddxuhafybdxkhovuswyzwtlzdvwwywilbqerbcvgfhbzowtvrmzagszlptlooopxdyrrzlpvjpgcnoldubdnhytftejlk \ 27 xiolxnojsoxmqwmxnttwaseebvtaqdtlizrxenpgxaipgmkvxmzakqsekqsypyccmgnwtvmltvepyeqjarfwgyxovoblgowqmwxcqjfoedttg \ 28 uueabuuabnmigvwqikokrwtkxsejrabhavwhnziitxdpqtiqrdlnqjvlazmhdlqhpswzroaialeytejnnfayafnhqguhbkpkjfcshggxlpudwapvet \ 29 nxzvtdfjdqdowivactmssjqkplmbmuzglhzqjsyzyagnpyiqsbghalglvdrmxzrnrwaknwbefebesrghmdqjoizgytevuxhgwlzpqaykgewzeyhylmiwznl \ 30 dnxlumkdlsuinwyjfzhhhcmfpojbzkyckwisrjcwrahhgouuqbxcnhdmjivcfckkaijrdlqrnripxhaiobvntvvnjvyzsrytbmlceiebgcqnawrnjgyurkohz \ 31 fpypbihbrjwqllxcwixqqhwoxkwwnmwrzxjryzkypxbpfuyutmluhgaqokkhryekpqnjxtftclaqkkjyhhnynpvdebjczvljykeylvaoarczedlerefjdajwbzy \ 32 ialonxdjbxpyjlujsocdmyeashsjfyirxqfegrzqrddazqjoxdmicesucznmetesyydytvnbzimbjzgooxitkkyknabncpilukmseddnimutiusxwwfrnvymcc \ 33 xnqgapdlfdwmhjnznidumclvsslzjrqaiaczecvndsezechbeverbuzzmlecvtgqsfniavsstwqclmmyp \ 34 mqpfcmvzctncgcjdjhxcghwcgnrxvxtuxnifrlumwpoukpezhupzbavqxkdwqkfviobuhjcnlajrjiarvboeatxpwuvbqwnbsngvxaux \ 35 gtyustiddvloyzddxuhafybdxkhovuswyzwtlzdvwwywilbqerbcvgfhbzowtvrmzagszlptlooopxdyrrzlpvjpgcnoldubdnhytftejlk \ 36 xiolxnojsoxmqwmxnttwaseebvtaqdtlizrxenpgxaipgmkvxmzakqsekqsypyccmgnwtvmltvepyeqjarfwgyxovoblgowqmwxcqjfoedttg \ 37 uueabuuabnmigvwqikokrwtkxsejrabhavwhnziitxdpqtiqrdlnqjvlazmhdlqhpswzroaialeytejnnfayafnhqguhbkpkjfcshggxlpudwapvet \ 38 nxzvtdfjdqdowivactmssjqkplmbmuzglhzqjsyzyagnpyiqsbghalglvdrmxzrnrwaknwbefebesrghmdqjoizgytevuxhgwlzpqaykgewzeyhylmiwznl \ 39 dnxlumkdlsuinwyjfzhhhcmfpojbzkyckwisrjcwrahhgouuqbxcnhdmjivcfckkaijrdlqrnripxhaiobvntvvnjvyzsrytbmlceiebgcqnawrnjgyurkohz \ 40 fpypbihbrjwqllxcwixqqhwoxkwwnmwrzxjryzkypxbpfuyutmluhgaqokkhryekpqnjxtftclaqkkjyhhnynpvdebjczvljykeylvaoarczedlerefjdajwbzy \ 41 ialonxdjbxpyjlujsocdmyeashsjfyirxqfegrzqrddazqjoxdmicesucznmetesyydytvnbzimbjzgooxitkkyknabncpilukmseddnimutiusxwwfrnvymcc \ 42 xnqgapdlfdwmhjnznidumclvsslzjrqaiaczecvndsezechbeverbuzzmlecvtgqsfniavsstwqclmmyp" 43} 44 45function getString(arg: string): string { 46 return arg; 47} 48 49function main(): void { 50 let expected_big_string = "mqpfcmvzctncgcjdjhxcghwcgnrxvxtuxnifrlumwpoukpezhupzbavqxkdwqkfviobuhjcnlajrjiarvboeatxpwuvbqwnbsngvxaux \ 51 gtyustiddvloyzddxuhafybdxkhovuswyzwtlzdvwwywilbqerbcvgfhbzowtvrmzagszlptlooopxdyrrzlpvjpgcnoldubdnhytftejlk \ 52 xiolxnojsoxmqwmxnttwaseebvtaqdtlizrxenpgxaipgmkvxmzakqsekqsypyccmgnwtvmltvepyeqjarfwgyxovoblgowqmwxcqjfoedttg \ 53 uueabuuabnmigvwqikokrwtkxsejrabhavwhnziitxdpqtiqrdlnqjvlazmhdlqhpswzroaialeytejnnfayafnhqguhbkpkjfcshggxlpudwapvet \ 54 nxzvtdfjdqdowivactmssjqkplmbmuzglhzqjsyzyagnpyiqsbghalglvdrmxzrnrwaknwbefebesrghmdqjoizgytevuxhgwlzpqaykgewzeyhylmiwznl \ 55 dnxlumkdlsuinwyjfzhhhcmfpojbzkyckwisrjcwrahhgouuqbxcnhdmjivcfckkaijrdlqrnripxhaiobvntvvnjvyzsrytbmlceiebgcqnawrnjgyurkohz \ 56 fpypbihbrjwqllxcwixqqhwoxkwwnmwrzxjryzkypxbpfuyutmluhgaqokkhryekpqnjxtftclaqkkjyhhnynpvdebjczvljykeylvaoarczedlerefjdajwbzy \ 57 ialonxdjbxpyjlujsocdmyeashsjfyirxqfegrzqrddazqjoxdmicesucznmetesyydytvnbzimbjzgooxitkkyknabncpilukmseddnimutiusxwwfrnvymcc \ 58 xnqgapdlfdwmhjnznidumclvsslzjrqaiaczecvndsezechbeverbuzzmlecvtgqsfniavsstwqclmmyp \ 59 mqpfcmvzctncgcjdjhxcghwcgnrxvxtuxnifrlumwpoukpezhupzbavqxkdwqkfviobuhjcnlajrjiarvboeatxpwuvbqwnbsngvxaux \ 60 gtyustiddvloyzddxuhafybdxkhovuswyzwtlzdvwwywilbqerbcvgfhbzowtvrmzagszlptlooopxdyrrzlpvjpgcnoldubdnhytftejlk \ 61 xiolxnojsoxmqwmxnttwaseebvtaqdtlizrxenpgxaipgmkvxmzakqsekqsypyccmgnwtvmltvepyeqjarfwgyxovoblgowqmwxcqjfoedttg \ 62 uueabuuabnmigvwqikokrwtkxsejrabhavwhnziitxdpqtiqrdlnqjvlazmhdlqhpswzroaialeytejnnfayafnhqguhbkpkjfcshggxlpudwapvet \ 63 nxzvtdfjdqdowivactmssjqkplmbmuzglhzqjsyzyagnpyiqsbghalglvdrmxzrnrwaknwbefebesrghmdqjoizgytevuxhgwlzpqaykgewzeyhylmiwznl \ 64 dnxlumkdlsuinwyjfzhhhcmfpojbzkyckwisrjcwrahhgouuqbxcnhdmjivcfckkaijrdlqrnripxhaiobvntvvnjvyzsrytbmlceiebgcqnawrnjgyurkohz \ 65 fpypbihbrjwqllxcwixqqhwoxkwwnmwrzxjryzkypxbpfuyutmluhgaqokkhryekpqnjxtftclaqkkjyhhnynpvdebjczvljykeylvaoarczedlerefjdajwbzy \ 66 ialonxdjbxpyjlujsocdmyeashsjfyirxqfegrzqrddazqjoxdmicesucznmetesyydytvnbzimbjzgooxitkkyknabncpilukmseddnimutiusxwwfrnvymcc \ 67 xnqgapdlfdwmhjnznidumclvsslzjrqaiaczecvndsezechbeverbuzzmlecvtgqsfniavsstwqclmmyp"; 68 69 let stringPromise: fooLambda = async (arg: string): Promise<string> => { 70 arg = Enum1.big_string.toString(); 71 return Promise.resolve<string>(getString(arg)); 72 }; 73 74 let big_string_from_enum: string = await stringPromise(); 75 76 assertEQ(expected_big_string, big_string_from_enum) 77} 78