public override bool Pre(CModel <T> _arg1) { return(_arg1 != null && // must have called allocate first _arg1.Items.Any() && // must have added at least 1 item to model _arg1.Items.Count == _arg1.Items.Capacity); // model size must equal capacity (forces wrap-around) }
public Gen <Command <ICircularBuffer <T>, CModel <T> > > Next(CModel <T> obj0) { return (Gen.Elements(new Command <ICircularBuffer <T>, CModel <T> >[] { new Allocate(BufferFactory), new EnqueueNoWrapAround(Generator), new EnqueueWithWrapAround(Generator), new Dequeue(), new Size(), new Clear() })); }
public override Property Post(ICircularBuffer <T> _arg2, CModel <T> _arg3) { var cbTail = _arg2.ToArray().Last(); var modelTail = _arg3.Items.Last(); return (cbTail.Equals(modelTail) .ToProperty() .Label($"After enqueue expected Actual.Last()[{cbTail}] == Model.Last()[{modelTail}]")); }
public override Property Post(ICircularBuffer <T> _arg2, CModel <T> _arg3) { return ((_arg2.Count == _arg3.Items.Count).ToProperty() .Label($"Expected {_arg3.Items.Count}, got {_arg2.Count}")); }
public override bool Pre(CModel <T> _arg1) { return(_arg1 != null); }
public override CModel <T> RunModel(CModel <T> obj0) { obj0.Items.Clear(); return(obj0); }
public override CModel <T> RunModel(CModel <T> obj0) { return(obj0); }
public override Property Post(ICircularBuffer <T> _arg2, CModel <T> _arg3) { return(_arg2.Skip(1).SequenceEqual(_arg3.Items.Skip(1)).ToProperty()); }
public override bool Pre(CModel <T> _arg1) { return(_arg1 != null && _arg1.Items.Any()); }
public override CModel <T> RunModel(CModel <T> obj0) { obj0 = new CModel <T>(obj0.Items.Skip(1).ToList(), obj0.Capacity); return(obj0); }
public override CModel <T> RunModel(CModel <T> obj0) { obj0 = new CModel <T>(obj0.Items.Skip(1).Concat(new[] { _data.Value }).ToList(), obj0.Capacity); return(obj0); }
public override bool Pre(CModel <T> _arg1) { // ensure no wrap-around return(_arg1 != null && _arg1.Items.Count < _arg1.Items.Capacity); }
public override CModel <T> RunModel(CModel <T> obj0) { obj0 = new CModel <T>(new List <T>(), _listSize.Value); return(obj0); }