public static string ConvertToScript(JsonTestCase testcase) { var sw = new StringWriter(); sw.WriteLine("(--- Script generated from Json test case"); sw.WriteLine("Json test case: {0}", testcase.Title); sw.WriteLine("Inputs: {0}", testcase.Inputs.Join()); sw.WriteLine("Final state: {0}", testcase.FinalState.Replace("\n", ";")); sw.WriteLine("Target level: {0}", testcase.TargetLevel); sw.WriteLine("Random seed: {0}", testcase.RandomSeed); sw.WriteLine("---)"); sw.WriteLine("debug"); sw.WriteLine("verbose_logging"); sw.WriteLine(testcase.Script.Replace("\n", "\r\n")); sw.WriteLine("(eof)"); return(sw.ToString()); }
public static void SetupSingle(string script) { var tokens = JArray.Parse(script); var inputs = (tokens[1] as JArray) .Select(t => _inputlookup.SafeLookup(t.Value <string>())) .ToList(); var testcase = new JsonTestCase() { Title = "", Script = tokens[0].Value <string>(), Inputs = inputs, FinalState = tokens[2].Value <string>(), TargetLevel = tokens.Count > 3 ? tokens[3].Value <int>() : 0, RandomSeed = tokens.Count > 4 ? tokens[4].Value <double>() : 0, }; _classtestcases = new List <JsonTestCase> { testcase }; }
// populate object list from what Json gives us static void PopulateClass() { var jsondata = JsonConvert.DeserializeObject <IList <IList <object> > >(_data); _classtestcases = new List <JsonTestCase>(); foreach (var item in jsondata) { var tokens = (item[1] as JArray).Children().ToList(); var inputs = (tokens[1] as JArray) .Select(t => _inputlookup.SafeLookup(t.Value <string>())) .ToList(); var testcase = new JsonTestCase() { Title = item[0] as string, Script = tokens[0].Value <string>(), Inputs = inputs, FinalState = tokens[2].Value <string>(), TargetLevel = tokens.Count > 3 ? tokens[3].Value <int>() : 0, RandomSeed = tokens.Count > 4 ? tokens[4].Value <double>() : 0, }; _classtestcases.Add(testcase); } }