public HybridSetTest() { _Enumerable = Substitute.For <IEnumerable <string> >(); _LetterSimpleSetSubstitute = Substitute.For <ILetterSimpleSet <string> >(); _LetterSimpleSetFactory = Substitute.For <ILetterSimpleSetFactory>(); _LetterSimpleSetFactory.GetDefault <string>().Returns(_LetterSimpleSetSubstitute); _LetterSimpleSetFactory.GetDefault <string>(Arg.Any <string>()).Returns(_LetterSimpleSetSubstitute); _LetterSimpleSetFactory.GetDefault <string>(Arg.Any <IEnumerable <string> >()).Returns(arg => { _GetDefaultParameter = ((IEnumerable <string>)arg[0]).ToList(); return(_LetterSimpleSetSubstitute); }); bool res; _LetterSimpleSetSubstitute.Add(Arg.Any <string>(), out res).Returns(_LetterSimpleSetSubstitute); _Factory = LetterSimpleSetFactoryBuilder.Factory; LetterSimpleSetFactoryBuilder.Factory = _LetterSimpleSetFactory; }
internal ListSet(ILetterSimpleSetFactory factory, HashSet <T> items, int maxItem) { _Factory = factory; var count = items.Count; if (count >= maxItem) { throw new ArgumentOutOfRangeException($"items count ({count}) >= Max ({maxItem})"); } _Items = new object[maxItem]; int index = 0; foreach (T item in items) { _Items[index++] = item; } _Count = count; }
internal SingleSet(ILetterSimpleSetFactory factory, T item) : this(factory) { Add(item); }
internal SingleSet(ILetterSimpleSetFactory factory) { _Factory = factory; }
internal ListSet(ILetterSimpleSetFactory factory, T item, int maxItem) : this(factory, maxItem) { _Items[0] = item; _Count = 1; }
internal ListSet(ILetterSimpleSetFactory factory, int maxItem) { _Factory = factory; _Items = new object[maxItem]; }
public SimpleHashSet(ILetterSimpleSetFactory factory) { _Factory = factory; }
public SimpleHashSet(ILetterSimpleSetFactory factory, IEnumerable <T> collection) : base(collection) { _Factory = factory; }