public static async Task CheckResult(Search.Post.SearchResult result, string inputTag) { if (result.fileUrl != null) { string resFile = await CheckUrl(result.fileUrl); string resPreview = await CheckUrl(result.previewUrl); string resPost = await CheckUrl(result.postUrl); Assert.True(resPost == null, resPost); Assert.True(resFile == null, resFile); Assert.True(resPreview == null, resPreview); Assert.NotEqual(0, result.height); Assert.NotEqual(0, result.width); if (result.previewHeight != null) { Assert.NotEqual(0, result.previewHeight); Assert.NotEqual(0, result.previewWidth); } } Assert.InRange(result.rating, Search.Post.Rating.Safe, Search.Post.Rating.Explicit); Assert.Contains(inputTag, result.tags); Assert.NotEqual(0, result.id); if (result.size.HasValue) { Assert.NotEqual(0, result.size.Value); } }
public static async Task CheckGetRandom(ABooru booru, string s1) { Search.Post.SearchResult result = await booru.GetRandomPostAsync(s1); Search.Post.SearchResult result2; int i = 0; do { result2 = await booru.GetRandomPostAsync(s1); i++; } while (result.id == result2.id && i < 5); Assert.NotEqual(result.id, result2.id); await CheckResult(result, s1); }
public async Task GetById(Type t) { var booru = await General.CreateBooru(t); if (!booru.HasPostByIdAPI()) { await Assert.ThrowsAsync <Search.FeatureUnavailable>(async delegate() { await booru.GetPostByIdAsync(0); }); } else { Search.Post.SearchResult result1 = await General.GetRandomPost(booru); var result2 = await booru.GetPostByIdAsync(result1.id); Assert.Equal(result1.id, result2.id); } }