/// <summary> /// 确保数据符合给定的规则 /// </summary> /// <param name="validate"></param> /// <returns></returns> public virtual WebTable EnsureData(Func <AssertContext <DataTable>, bool> validate) { AssertContext <DataTable> context = new AssertContext <DataTable>(); context.Command += "Table"; DataTable table = GetPageData(); context.Data = table; var result = validate(context); if (!result) { Assert.Fail(context.Message); } TrackAssertion(context.Command, context.Parameters.ToArray()); return(this); }
private static AssertContext ExpectNextBy(AssertContext context, string message) { var _startIndex = (context?.Index ?? -1) + 1; var _messages = ATL.GetMessages(); var _index = -1; for (int i = _startIndex; i < _messages.Count; i++) { if (_messages[i] == message) { _index = i; break; } } if (_index == -1) { var _failMessage = $"Not found message '{message}'{(context == null ? null : $" next by '{context.Message}'")}.";
public AttributeCheck(AssertContext assertContext) { _assertContext = assertContext; }
public NameCheck(AssertContext assertContext) { _assertContext = assertContext; }
public ChildrenNumberCheck(AssertContext assertContext) { _assertContext = assertContext; }
public TextCheck(AssertContext assertContext) { _assertContext = assertContext; }