static FunctionCQSMessageGenerator CreateGenerator() { var functionAbi = new FunctionABI("BaseStats", constant: true) { InputParameters = new[] { new ParameterABI("uint256", "_number") }, OutputParameters = new[] { new ParameterABI("uint256") } }; return(new FunctionCQSMessageGenerator(functionAbi, "DefaultNamespace", "FunctionOutput", CodeGenLanguage.CSharp)); }
public void GeneratesExpectedFileContent() { var expectedContent = ExpectedContentRepository.Get("CSharp", "FunctionCQSMessage01.csharp.txt"); var functionAbi = new FunctionABI("BaseStats", constant: true) { InputParameters = new[] { new ParameterABI("uint256", "_number") }, OutputParameters = new[] { new ParameterABI("uint256") } }; var generator = new FunctionCQSMessageGenerator(functionAbi, "DefaultNamespace", "FunctionOutput"); var fileContent = generator.GenerateFileContent(); Assert.Equal(expectedContent, fileContent); }
public static string GetFunctionTypeNameBasedOnOverloads(this FunctionABI functionAbi) { var functionsWithSameName = functionAbi.ContractAbi.GetAllFunctionsWithSameName(functionAbi.Name); if (functionsWithSameName.Count == 1) { return(functionAbi.Name); } var orderedList = functionsWithSameName.OrderBy(x => x.InputParameters.Length).ToArray(); for (var i = 0; i < orderedList.Count(); i++) { if (orderedList[i] == functionAbi) { if (i > 0) { return(functionAbi.Name + i.ToString()); } } } //should never get here.. return(functionAbi.Name); }