public void GenerateSuffixSearchTestCases(int count) { var vocabulary = NonsenseGeneration.GetVocabulary(); var words = NonsenseGeneration.GetRandomNeighbourWordGroups(vocabulary, count).ToArray(); var idsAndWords = new KeyValuePair <int, string> [words.Length]; for (int i = 0; i < words.Length; i++) { idsAndWords[i] = new KeyValuePair <int, string>(i, words[i]); } using (var output = File.CreateText(string.Format("SuffixSearchTestCases{0}.txt", count))) { WriteArrayDeclaration(count.ToString(), words, output); foreach (var keyValuePair in idsAndWords) { var word = keyValuePair.Value; foreach (var query in GetAllSubstrings(word)) { string query1 = query; var actual = idsAndWords .Where(idWordPair => idWordPair.Value.Contains(query1)) .Select(idWordPair => idWordPair.Key); string array = string.Join(",", actual.Select(id => id.ToString())); output.WriteLine("[TestCase(\"{0}\", new[] {{{1}}})]", query, array); } } } }
public void GenerateParallelAddTestCases(int count) { var vocabulary = NonsenseGeneration.GetVocabulary(); var phrases = new string[40]; var random = new Random(); for (int i = 0; i < count; i++) { var words = NonsenseGeneration.GetRandomWords(vocabulary, 30, random); phrases[i] = string.Join(string.Empty, words); } using (var output = File.CreateText(string.Format("ParallelAddTestCases{0}.txt", count))) { WriteArrayDeclaration(count.ToString(), phrases, output); } }