public void BelowMinimumLength2_ThrowsInvalidBencodeExceptionAsync(string bencode, IBencodeParser bparser) { var parser = new BListParser(bparser); Func <Task> action = async() => await parser.ParseStringAsync(bencode); action.Should().Throw <InvalidBencodeException <BList> >().WithMessage("*reached end of stream*"); }
public void InvalidFirstChar_ThrowsInvalidBencodeExceptionAsync(string bencode, IBencodeParser bparser) { var parser = new BListParser(bparser); Func <Task> action = async() => await parser.ParseStringAsync(bencode); action.Should().Throw <InvalidBencodeException <BList> >().WithMessage("*Unexpected character*"); }
public void BelowMinimumLength2_ThrowsInvalidBencodeException(string bencode, IBencodeParser bparser) { var parser = new BListParser(bparser); Action action = () => parser.ParseString(bencode); action.Should().Throw <InvalidBencodeException <BList> >().WithMessage("*Invalid length*"); }
public void InvalidFirstChar_ThrowsInvalidBencodeException(string bencode, IBencodeParser bparser) { var parser = new BListParser(bparser); Action action = () => parser.ParseString(bencode); action.Should().Throw <InvalidBencodeException <BList> >().WithMessage("*Unexpected character*"); }
public void InvalidFirstChar_ThrowsInvalidBencodeException(string bencode, IBencodeParser bparser) { var parser = new BListParser(bparser); Action action = () => parser.ParseString(bencode); action.ShouldThrow <InvalidBencodeException <BList> >(); }
public async Task CanParseEmptyListAsync(string bencode, IBencodeParser bparser) { var parser = new BListParser(bparser); var blist = await parser.ParseStringAsync(bencode); blist.Count.Should().Be(0); await bparser.DidNotReceive().ParseAsync(Arg.Any <PipeBencodeReader>()); }
public void CanParseEmptyList(string bencode, IBencodeParser bparser) { var parser = new BListParser(bparser); var blist = parser.ParseString(bencode); blist.Count.Should().Be(0); bparser.DidNotReceive().Parse(Arg.Any <BencodeReader>()); }
public void BelowMinimumLength2_WhenStreamLengthNotSupported_ThrowsInvalidBencodeException(string bencode, IBencodeParser bparser) { var stream = new LengthNotSupportedStream(bencode); var parser = new BListParser(bparser); Action action = () => parser.Parse(stream); action.Should().Throw <InvalidBencodeException <BList> >().WithMessage("*Unexpected character*"); }
public void MissingEndChar_ThrowsInvalidBencodeExceptionAsync(string bencode, IBencodeParser bparser, IBObject something) { // Arrange bparser.ParseAsync(Arg.Any <PipeBencodeReader>()) .Returns(something) .AndSkipsAheadAsync(bencode.Length - 1); // Act var parser = new BListParser(bparser); Func <Task> action = async() => await parser.ParseStringAsync(bencode); // Assert action.Should().Throw <InvalidBencodeException <BList> >().WithMessage("*Missing end character of object*"); }
public void MissingEndChar_ThrowsInvalidBencodeException(string bencode, IBencodeParser bparser) { // Arrange var bstring = new BString("test"); SetupBencodeParser(bparser, bencode, bstring, hasEndChar: false); // Act var parser = new BListParser(bparser); Action action = () => parser.ParseString(bencode); // Assert action.ShouldThrow <InvalidBencodeException <BList> >(); }
public void CanParseSimple(string bencode, IBencodeParser bparser) { // Arrange var bstring = new BString("test"); SetupBencodeParser(bparser, bencode, bstring, hasEndChar: true); // Act var parser = new BListParser(bparser); var blist = parser.ParseString(bencode); // Assert blist.Count.Should().Be(1); blist[0].Should().BeOfType <BString>(); blist[0].Should().BeSameAs(bstring); bparser.Received(1).Parse(Arg.Any <BencodeStream>()); }
public async Task CanParseSimpleAsync(string bencode, IBencodeParser bparser) { // Arrange var bstring = new BString("test"); bparser.ParseAsync(Arg.Any <PipeBencodeReader>()) .Returns(bstring) .AndSkipsAheadAsync(bencode.Length - 2); // Act var parser = new BListParser(bparser); var blist = await parser.ParseStringAsync(bencode); // Assert blist.Count.Should().Be(1); blist[0].Should().BeOfType <BString>(); blist[0].Should().BeSameAs(bstring); await bparser.Received(1).ParseAsync(Arg.Any <PipeBencodeReader>()); }