private static Duplicate?FirstDuplicate(INameSource source, int cycles) { var results = new Dictionary <string, int>(); foreach (var cycle in Enumerable.Range(0, cycles)) { var name = source.Next(); if (results.ContainsKey(name)) { return(new Duplicate { Value = name, FirstCycle = results[name], LastCycle = cycle }); } results.Add(name, cycle); } return(null); }
public string Next() { return(_prefix + _source.Next()); }
public void Has_Expected_Length() { var name = _nameSource.Next(); name.Length.ShouldBe(Prefix.Length + Digits); }
public string Next() { return(_source.Next() + _suffix); }