public void transaction_must_be_specified() { var frame = new BasicFrame("BEGIN"); var client = Substitute.For <IStompClient>(); var sut = new BeginHandler(); Action actual = () => sut.Process(client, frame); actual.ShouldThrow <BadRequestException>(); }
public void abort_if_transaction_was_specified() { var frame = new BasicFrame("BEGIN"); frame.Headers["transaction"] = "aa"; var client = Substitute.For <IStompClient>(); var sut = new BeginHandler(); sut.Process(client, frame); client.Received().BeginTransaction("aa"); }
public void may_not_begin_an_already_created_transaction() { var frame = new BasicFrame("BEGIN"); frame.Headers["transaction"] = "aa"; var client = Substitute.For <IStompClient>(); client.When(x => x.BeginTransaction("aa")) .Do(x => { throw new InvalidOperationException("Transaction already exist"); }); var sut = new BeginHandler(); Action actual = () => sut.Process(client, frame); actual.ShouldThrow <InvalidOperationException>(); }