Пример #1
0
        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);
        }
Пример #2
0
 public string Next()
 {
     return(_prefix + _source.Next());
 }
Пример #3
0
        public void Has_Expected_Length()
        {
            var name = _nameSource.Next();

            name.Length.ShouldBe(Prefix.Length + Digits);
        }
Пример #4
0
 public string Next()
 {
     return(_source.Next() + _suffix);
 }