From 966c4f1fad0215f49e308721a839db24c49752f5 Mon Sep 17 00:00:00 2001 From: Yaroslav Bolyukin Date: Thu, 08 Dec 2022 00:44:29 +0000 Subject: [PATCH] test: std argument names --- --- /dev/null +++ b/tests/suite/std_param_names.jsonnet @@ -0,0 +1,129 @@ +local assertNames(fun, params) = assert test.paramNames(std[fun]) == params: "Wrong params for std.%s, expected %s, got %s" % [fun, params, test.paramNames(std[fun])]; true; + +local names = { + id: ['x'], + isString: ['v'], + isNumber: ['v'], + isBoolean: ['v'], + isObject: ['v'], + isArray: ['v'], + isFunction: ['v'], + toString: ['a'], + substr: ['str', 'from', 'len'], + startsWith: ['a', 'b'], + endsWith: ['a', 'b'], + lstripChars: ['str', 'chars'], + rstripChars: ['str', 'chars'], + stripChars: ['str', 'chars'], + stringChars: ['str'], + parseInt: ['str'], + parseOctal: ['str'], + parseHex: ['str'], + split: ['str', 'c'], + splitLimit: ['str', 'c', 'maxsplits'], + splitLimitR: ['str', 'c', 'maxsplits'], + strReplace: ['str', 'from', 'to'], + asciiUpper: ['str'], + asciiLower: ['str'], + range: ['from', 'to'], + repeat: ['what', 'count'], + slice: ['indexable', 'index', 'end', 'step'], + member: ['arr', 'x'], + count: ['arr', 'x'], + mod: ['a', 'b'], + map: ['func', 'arr'], + mapWithIndex: ['func', 'arr'], + mapWithKey: ['func', 'obj'], + flatMap: ['func', 'arr'], + join: ['sep', 'arr'], + lines: ['arr'], + deepJoin: ['arr'], + format: ['str', 'vals'], + foldr: ['func', 'arr', 'init'], + foldl: ['func', 'arr', 'init'], + filterMap: ['filter_func', 'map_func', 'arr'], + assertEqual: ['a', 'b'], + abs: ['n'], + sign: ['n'], + max: ['a', 'b'], + min: ['a', 'b'], + clamp: ['x', 'minVal', 'maxVal'], + flattenArrays: ['arrs'], + manifestIni: ['ini'], + manifestToml: ['value'], + manifestTomlEx: ['value', 'indent'], + escapeStringJson: ['str_'], + escapeStringPython: ['str'], + escapeStringBash: ['str_'], + escapeStringDollars: ['str_'], + escapeStringXML: ['str_'], + manifestJson: ['value'], + manifestJsonMinified: ['value'], + manifestJsonEx: ['value', 'indent', 'newline', 'key_val_sep'], + manifestYamlDoc: ['value', 'indent_array_in_object', 'quote_keys'], + manifestYamlStream: ['value', 'indent_array_in_object', 'c_document_end', 'quote_keys'], + manifestPython: ['v'], + manifestPythonVars: ['conf'], + manifestXmlJsonml: ['value'], + base64: ['input'], + base64DecodeBytes: ['str'], + base64Decode: ['str'], + reverse: ['arr'], + sort: ['arr', 'keyF'], + uniq: ['arr', 'keyF'], + set: ['arr', 'keyF'], + setMember: ['x', 'arr', 'keyF'], + setUnion: ['a', 'b', 'keyF'], + setInter: ['a', 'b', 'keyF'], + setDiff: ['a', 'b', 'keyF'], + mergePatch: ['target', 'patch'], + get: ['o', 'f', 'default', 'inc_hidden'], + objectFields: ['o'], + objectFieldsAll: ['o'], + objectHas: ['o', 'f'], + objectHasAll: ['o', 'f'], + objectValues: ['o'], + objectValuesAll: ['o'], + equals: ['a', 'b'], + resolvePath: ['f', 'r'], + prune: ['a'], + findSubstr: ['pat', 'str'], + find: ['value', 'arr'], + all: ['arr'], + any: ['arr'], + + makeArray: ['sz', 'func'], + pow: ['x', 'n'], + floor: ['x'], + ceil: ['x'], + sqrt: ['x'], + sin: ['x'], + cos: ['x'], + tan: ['x'], + asin: ['x'], + acos: ['x'], + atan: ['x'], + type: ['x'], + filter: ['func', 'arr'], + objectHasEx: ['obj', 'fname', 'hidden'], + length: ['x'], + objectFieldsEx: ['obj', 'hidden'], + codepoint: ['str'], + char: ['n'], + log: ['x'], + exp: ['x'], + mantissa: ['x'], + exponent: ['x'], + modulo: ['x', 'y'], + extVar: ['x'], + primitiveEquals: ['x', 'y'], + native: ['x'], + md5: ['s'], + trace: ['str', 'rest'], + parseJson: ['str'], + parseYaml: ['str'], + encodeUTF8: ['str'], + decodeUTF8: ['arr'], +}; + +std.all(std.map(function(key) assertNames(key, names[key]), std.objectFields(names))) -- gitstuff