def generateFuncUsageByLineContentGo(lineContent): # get func parts: (caller, method, args, returnParams) = g.getGoFuncDeclarationPartsByLineContent(lineContent) returnParamsSplitedList = g.splitArgs(returnParams) color.red("returnParamsSplitedList") print(returnParamsSplitedList) # split args argsSplitedList = g.splitArgs(args) # get vars commas str (_, varsCommasStr, _) = g.getVarBlockByStructureListOfNameTypeName(argsSplitedList) # get return params comma string (_, returnParamsCommasStr, _) = g.getVarBlockByStructureListOfNameTypeName(returnParamsSplitedList) callerVarName = g.getCallerVarName(caller) funcCall = g.innerTestFuncPartGoTestPrepare_callTestableFunc(callerVarName, method, returnParamsCommasStr, varsCommasStr) # get var block and add before funcCall (varBlock, _, _) = getVarBlock(caller, args, returnParams) # func usage total funcUsageTotal = "/*{}*/\n{}".format(varBlock, funcCall) return funcUsageTotal
def test_testName(self): color.blue("test here baby") result = generateTestFileNameForGoTest.splitArgs("par1 int, par2 string") expected = [{'var': 'par1', 'varType': 'int'}, {'var': 'par2', 'varType': 'string'}] # assert_that(result == expected) assertMy.equals(result, expected)
def getVarBlock(caller, args, returnParams): # split args (varBlockInnerArgs, argsVarsCommas, argsVarsList) = g.splitAndFullPrepare(args) # split return params (varBlockInnerReturnParams, returnParamsVarsCommas, returnParamsList) = g.splitAndFullPrepare(returnParams) returnParamsSplitedList = g.splitArgs(returnParams) # generate total var block # which consists of: # caller var # inner args vars # return args vars varBlockTmpl = """var ( \t{} {} {} )""" varBlock =varBlockTmpl.format(caller, varBlockInnerArgs, varBlockInnerReturnParams) print("argsVarsCommas") print(argsVarsCommas) return (varBlock, argsVarsCommas, returnParamsVarsCommas)