protected CallerContext SetTestContext( int subseq = -1, [System.Runtime.CompilerServices.CallerMemberName] string caller = "") { var m = this.GetType().GetMember(caller); if (m.Length != 1) { throw new InvalidOperationException("Unable to resolve single member from caller name"); } LastContext = new CallerContext { Test = this, Name = caller, Member = m[0], TestOrder = TestOrderer.GetTestOrder(m[0]), TestGroup = TestOrderer.GetTestGroup(m[0]), Subsequence = subseq, State = State, }; if (Clients?.Acme != null) { Clients.Acme.BeforeAcmeSign = BeforeAcmeSign; Clients.Acme.BeforeHttpSend = BeforeAcmeSend; Clients.Acme.AfterHttpSend = AfterAcmeSend; } return(LastContext); }