public async Task Given_An_ActivityEndpoint_And_ActivityRequestParameters_Should_Invoke_GetString_Once() { // Arrange // Act await _sut.ActivityRequest(ActivityEndpoint.LatestActivity, new ActivityRequestParameters()); // Assert await _wikiaHttpClient.Received(1).GetString(Arg.Any <string>(), Arg.Any <Dictionary <string, string> >()); }
public async Task Given_Ids_List_RelatedArticlesRequestParameters_Should_Invoke_GetString_Once() { // Arrange _wikiaHttpClient.GetString(Arg.Any <string>(), Arg.Any <Dictionary <string, string> >()).Returns(@"{ ""items"": { ""50"": [ { ""url"": ""/wiki/Super_Junior_Confrontation"", ""title"": ""Super Junior Confrontation"", ""id"": 23338, ""imgUrl"": ""https://vignette.wikia.nocookie.net/yugioh/images/2/21/SuperJuniorConfrontation-DR04-NA-C-UE.png/revision/latest/window-crop/width/200/x-offset/0/y-offset/58/window-width/400/window-height/200?cb=20080530031342"", ""imgOriginalDimensions"": { ""width"": ""400"", ""height"": ""580"" }, ""text"": ""Super Junior Confrontation スーパージュニア対(たい)決(けつ)! English Super Junior Confrontation French..."" }, { ""url"": ""/wiki/Topologic_Trisbaena"", ""title"": ""Topologic Trisbaena"", ""id"": 681182, ""imgUrl"": ""https://vignette.wikia.nocookie.net/yugioh/images/2/2b/TopologicTrisbaena-FLOD-EN-ScR-1E.png/revision/latest/window-crop/width/200/x-offset/0/y-offset/70/window-width/479/window-height/240?cb=20180504165822"", ""imgOriginalDimensions"": { ""width"": ""479"", ""height"": ""700"" }, ""text"": ""Check translation Check translation"" }, { ""url"": ""/wiki/Witchcrafter_Draping"", ""title"": ""Witchcrafter Draping"", ""id"": 702109, ""imgUrl"": ""https://vignette.wikia.nocookie.net/yugioh/images/4/47/WitchcrafterDraping-INCH-EN-1E-OP.png/revision/latest/window-crop/width/200/x-offset/0/y-offset/66/window-width/450/window-height/225?cb=20190315154155"", ""imgOriginalDimensions"": { ""width"": ""450"", ""height"": ""656"" }, ""text"": ""The English lore given is not official. Check translation"" } ] }, ""basepath"": ""https://yugioh.fandom.com"" }"); // Act await _sut.Articles(50); // Assert await _wikiaHttpClient.Received(1).GetString(Arg.Any <string>(), Arg.Any <Dictionary <string, string> >()); }
public async Task Should_Invoke_GetString_Method_Once() { // Arrange _wikiaHttpClient.GetString(Arg.Any <string>()).Returns(@"{ ""data"": { ""appleTouchIcon"": { ""url"": ""https://vignette.wikia.nocookie.net/yugioh/images/b/bc/Wiki.png/revision/latest?cb=20070302001228"", ""size"": ""153x153"" }, ""articlePath"": ""/wiki/"", ""basePath"": ""https://yugioh.fandom.com"", ""dbName"": ""yugioh"", ""favicon"": ""https://vignette.wikia.nocookie.net/yugioh/images/6/64/Favicon.ico/revision/latest?cb=20090626015303"", ""id"": 410, ""isClosed"": false, ""htmlTitle"": { ""separator"": "" | "", ""parts"": [ ""Yu-Gi-Oh!"", ""FANDOM powered by Wikia"" ] }, ""language"": { ""content"": ""en"", ""contentDir"": ""ltr"" }, ""scriptPath"": """", ""siteName"": ""Yu-Gi-Oh!"", ""specialRobotPolicy"": null, ""surrogateKey"": ""wiki-410"", ""tracking"": { ""vertical"": ""games"", ""comscore"": { ""c7Value"": ""wikiacsid_games"" }, ""netzathleten"": { ""enabled"": true, ""url"": ""//tag.md-nx.com/nx/438359d5-7944-441e-8720-1ab8a1f65560/loader.js"" }, ""quantcast"": { ""labels"": ""Genre.action,Genre.adventure,Genre.anime,Genre.comic,Genre.fantasy,Media.movies,Media.tv,Media.comics,Media.cards"" } }, ""cacheBuster"": 8340058340012, ""cdnRootUrl"": ""https://slot1-images.wikia.nocookie.net"", ""contentNamespaces"": [ 0, 100, 102, 104, 106, 108, 112, 114, 116, 118, 120, 122, 124, 126, ""128"", ""130"", ""131"" ], ""defaultSkin"": ""oasis"", ""disableAnonymousEditing"": true, ""disableAnonymousUploadForMercury"": false, ""disableMobileSectionEditor"": false, ""discussionColorOverride"": """", ""enableCommunityData"": true, ""enableDiscussions"": true, ""enableDiscussionsImageUpload"": true, ""enableFandomAppSmartBanner"": true, ""enableLightweightContributions"": true, ""enableNewAuth"": true, ""fandomAppSmartBannerText"": null, ""homepage"": ""http://www.wikia.com/fandom"", ""isCoppaWiki"": true, ""isDarkTheme"": false, ""localNav"": [ { ""text"": ""Top Content"", ""href"": ""#"", ""children"": [ { ""text"": ""Most Visited"", ""href"": ""#"", ""children"": [ { ""text"": ""Duel Power"", ""href"": ""/wiki/Duel_Power"" }, { ""text"": ""Rising Rampage"", ""href"": ""/wiki/Rising_Rampage"" }, { ""text"": ""Dark Neostorm"", ""href"": ""/wiki/Dark_Neostorm"" }, { ""text"": ""Yu-Gi-Oh! VRAINS - Episode 095"", ""href"": ""/wiki/Yu-Gi-Oh!_VRAINS_-_Episode_095"" }, { ""text"": ""Arcana Force"", ""href"": ""/wiki/Arcana_Force"" }, { ""text"": ""The Infinity Chasers"", ""href"": ""/wiki/The_Infinity_Chasers"" }, { ""text"": ""Structure Deck R: Lord of Magician"", ""href"": ""/wiki/Structure_Deck_R:_Lord_of_Magician"" } ] }, { ""text"": ""Newly Changed"", ""href"": ""#"", ""children"": [ { ""text"": ""Divine Dragon Ragnarok"", ""href"": ""/wiki/Divine_Dragon_Ragnarok"" }, { ""text"": ""Armor Exe"", ""href"": ""/wiki/Armor_Exe"" }, { ""text"": ""Ancient Sorcerer"", ""href"": ""/wiki/Ancient_Sorcerer"" }, { ""text"": ""Amores of Prophecy"", ""href"": ""/wiki/Amores_of_Prophecy"" }, { ""text"": ""Millennium-Eyes Illusionist"", ""href"": ""/wiki/Millennium-Eyes_Illusionist"" }, { ""text"": ""Illusionist Faceless Magician"", ""href"": ""/wiki/Illusionist_Faceless_Magician"" }, { ""text"": ""LVP1-JP036"", ""href"": ""/wiki/LVP1-JP036"" } ] }, { ""text"": ""Random"", ""href"": ""/wiki/Special:Random"", ""children"": [ { ""text"": ""Random Page"", ""href"": ""/wiki/Special:Random"" }, { ""text"": ""Gallery"", ""href"": ""/wiki/Special:Random/Card_Gallery"" }, { ""text"": ""Rulings"", ""href"": ""/wiki/Special:Random/Card_Rulings"" }, { ""text"": ""Errata"", ""href"": ""/wiki/Special:Random/Card_Errata"" }, { ""text"": ""Tips"", ""href"": ""/wiki/Special:Random/Card_Tips"" }, { ""text"": ""Appearances"", ""href"": ""/wiki/Special:Random/Card_Appearances"" }, { ""text"": ""Trivia"", ""href"": ""/wiki/Special:Random/Card_Trivia"" } ] } ] }, { ""text"": ""Characters"", ""href"": ""/wiki/Category:Characters"", ""children"": [ { ""text"": ""VRAINS"", ""href"": ""/wiki/Category:Yu-Gi-Oh!_VRAINS_characters"", ""children"": [ { ""text"": ""Anime"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_VRAINS_anime_characters"" } ] }, { ""text"": ""ARC-V"", ""href"": ""/wiki/Category:Yu-Gi-Oh!_ARC-V_characters"", ""children"": [ { ""text"": ""Anime"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_ARC-V_anime_characters"" }, { ""text"": ""Manga"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_ARC-V_manga_characters"" } ] }, { ""text"": ""ZEXAL"", ""href"": ""/wiki/Category:Yu-Gi-Oh!_ZEXAL_characters"", ""children"": [ { ""text"": ""Anime"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_ZEXAL_anime_characters"" }, { ""text"": ""Manga"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_ZEXAL_manga_characters"" }, { ""text"": ""D Team"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_D_Team_ZEXAL_characters"" } ] }, { ""text"": ""5D's"", ""href"": ""/wiki/Category:Yu-Gi-Oh!_5D%27s_characters"", ""children"": [ { ""text"": ""Anime"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_5D%27s_anime_characters"" }, { ""text"": ""Manga"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_5D%27s_manga_characters"" } ] }, { ""text"": ""GX"", ""href"": ""/wiki/Category:Yu-Gi-Oh!_GX_characters"", ""children"": [ { ""text"": ""Anime"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_GX_anime_characters"" }, { ""text"": ""Manga"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_GX_manga_characters"" } ] }, { ""text"": ""Yu-Gi-Oh!"", ""href"": ""/wiki/Category:Yu-Gi-Oh!_characters"", ""children"": [ { ""text"": ""Second anime"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_anime_characters"" }, { ""text"": ""First anime"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_first_series_anime_characters"" }, { ""text"": ""Manga"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_manga_characters"" } ] } ] }, { ""text"": ""Card Gallery"", ""href"": ""/wiki/Category:Card_Gallery"", ""children"": [ { ""text"": ""Sets by language"", ""href"": ""/wiki/Category:Set_Card_Galleries"", ""children"": [ { ""text"": ""Japanese Set Card Gallery"", ""href"": ""/wiki/Category:Japanese_Set_Card_Galleries"" }, { ""text"": ""English Set Card Gallery"", ""href"": ""/wiki/Category:English_Set_Card_Galleries"" }, { ""text"": ""French Set Card Gallery"", ""href"": ""/wiki/Category:French_Set_Card_Galleries"" }, { ""text"": ""German Set Card Gallery"", ""href"": ""/wiki/Category:German_Set_Card_Galleries"" }, { ""text"": ""Italian Set Card Gallery"", ""href"": ""/wiki/Category:Italian_Set_Card_Galleries"" }, { ""text"": ""Portuguese Set Card Gallery"", ""href"": ""/wiki/Category:Portuguese_Set_Card_Galleries"" }, { ""text"": ""Spanish Set Card Gallery"", ""href"": ""/wiki/Category:Spanish_Set_Card_Galleries"" }, { ""text"": ""Korean Set Card Gallery"", ""href"": ""/wiki/Category:Korean_Set_Card_Galleries"" } ] }, { ""text"": ""Sets by type"", ""href"": ""/wiki/Category:Set_Card_Galleries"", ""children"": [ { ""text"": ""Unlimited Edition Set Card Gallery"", ""href"": ""/wiki/Category:Unlimited_Edition_Set_Card_Galleries"" }, { ""text"": ""1st Edition Set Card Gallery"", ""href"": ""/wiki/Category:1st_Edition_Set_Card_Galleries"" }, { ""text"": ""Limited Edition Set Card Gallery"", ""href"": ""/wiki/Category:Limited_Edition_Set_Card_Galleries"" }, { ""text"": ""Yu-Gi-Oh! GX Chapter Card Gallery"", ""href"": ""/wiki/Category:Yu-Gi-Oh!_GX_Chapter_Card_Galleries"" }, { ""text"": ""Yu-Gi-Oh! 5D's Episode Card Gallery"", ""href"": ""/wiki/Category:Yu-Gi-Oh!_5D%27s_Episode_Card_Galleries"" }, { ""text"": ""Yu-Gi-Oh! ZEXAL Episode Card Gallery"", ""href"": ""/wiki/Category:Yu-Gi-Oh!_ZEXAL_Episode_Card_Galleries"" }, { ""text"": ""Yu-Gi-Oh! ARC-V Episode Card Gallery"", ""href"": ""/wiki/Category:Yu-Gi-Oh!_ARC-V_Episode_Card_Galleries"" } ] } ] }, { ""text"": ""Community"", ""href"": ""#"", ""children"": [ { ""text"": ""Current Events"", ""href"": ""/wiki/Yu-Gi-Oh!:Current_events"" }, { ""text"": ""Policies"", ""href"": ""/wiki/Category:Policy"" }, { ""text"": ""Forum"", ""href"": ""/wiki/Forum:Index"", ""children"": [ { ""text"": ""Yu-Gi-Oh! Ruling Queries"", ""href"": ""/wiki/Forum:Yu-Gi-Oh!_Ruling_Queries"" }, { ""text"": ""Yu-Gi-Oh! Deck Help"", ""href"": ""/wiki/Forum:Yu-Gi-Oh!_Deck_Help"" }, { ""text"": ""Yu-Gi-Oh! Lists Discussion"", ""href"": ""/wiki/Forum:Yu-Gi-Oh!_Lists_Discussion"" }, { ""text"": ""General Yu-Gi-Oh! Discussion"", ""href"": ""/wiki/Forum:General_Yu-Gi-Oh!_Discussion"" }, { ""text"": ""Duel Terminal"", ""href"": ""/wiki/Forum:Duel_Terminal"" }, { ""text"": ""Help desk"", ""href"": ""/wiki/Forum:Help_desk"" }, { ""text"": ""Yu-Gi-Oh! Wiki Community Discussion"", ""href"": ""/wiki/Forum:Yu-Gi-Oh!_Wiki_Community_Discussion"" }, { ""text"": ""Weekly Deck Competition"", ""href"": ""/wiki/Forum:Weekly_Deck_Competition"" } ] }, { ""text"": ""Recent Changes"", ""href"": ""/wiki/Special:RecentChanges"" }, { ""text"": ""Help"", ""href"": ""/wiki/Help:Contents"" } ] } ], ""mainPageTitle"": ""Yu-Gi-Oh!_Wikia"", ""namespaces"": { ""0"": """", ""1"": ""Talk"", ""2"": ""User"", ""3"": ""User_talk"", ""4"": ""Yu-Gi-Oh!"", ""5"": ""Yu-Gi-Oh!_talk"", ""6"": ""File"", ""7"": ""File_talk"", ""8"": ""MediaWiki"", ""9"": ""MediaWiki_talk"", ""10"": ""Template"", ""11"": ""Template_talk"", ""12"": ""Help"", ""13"": ""Help_talk"", ""14"": ""Category"", ""15"": ""Category_talk"", ""100"": ""Card_Gallery"", ""101"": ""Card_Gallery_talk"", ""102"": ""Card_Rulings"", ""103"": ""Card_Rulings_talk"", ""104"": ""Card_Errata"", ""105"": ""Card_Errata_talk"", ""106"": ""Card_Tips"", ""107"": ""Card_Tips_talk"", ""108"": ""Card_Trivia"", ""109"": ""Card_Trivia_talk"", ""110"": ""Forum"", ""111"": ""Forum_talk"", ""112"": ""Card_Appearances"", ""113"": ""Card_Appearances_talk"", ""114"": ""Portal"", ""115"": ""Portal_talk"", ""116"": ""Card_Lores"", ""117"": ""Card_Lores_talk"", ""118"": ""Card_Artworks"", ""119"": ""Card_Artworks_talk"", ""120"": ""Card_Names"", ""121"": ""Card_Names_talk"", ""122"": ""Set_Card_Lists"", ""123"": ""Set_Card_Lists_talk"", ""124"": ""Set_Card_Galleries"", ""125"": ""Set_Card_Galleries_talk"", ""126"": ""Set_Card_Ratios"", ""127"": ""Set_Card_Ratios_talk"", ""128"": ""Card_Sets"", ""129"": ""Card_Sets_talk"", ""130"": ""Transcript"", ""131"": ""Transcript_talk"", ""302"": ""Property"", ""303"": ""Property_talk"", ""304"": ""Type"", ""305"": ""Type_talk"", ""306"": ""Form"", ""307"": ""Form_talk"", ""308"": ""Concept"", ""309"": ""Concept_talk"", ""370"": ""Filter"", ""371"": ""Filter_talk"", ""828"": ""Module"", ""829"": ""Module_talk"", ""1200"": ""Message_Wall"", ""1201"": ""Thread"", ""1202"": ""Message_Wall_Greeting"", ""2000"": ""Board"", ""2001"": ""Board_Thread"", ""2002"": ""Topic"", ""-2"": ""Media"", ""-1"": ""Special"" }, ""qualarooUrl"": ""//s3.amazonaws.com/ki.js/52510/gQT.js"", ""recommendedVideoPlaylist"": """", ""recommendedVideoRelatedMediaId"": ""WNcPjgNz"", ""siteMessage"": ""Yu-Gi-Oh!"", ""theme"": { ""color-body"": ""#3b0902"", ""color-body-middle"": ""#3b0902"", ""color-page"": ""#ffffff"", ""color-buttons"": ""#fec356"", ""color-community-header"": ""#fec356"", ""color-links"": ""#0148c2"", ""color-header"": ""#fec024"", ""background-image"": ""https://images2.wikia.nocookie.net/__cb20130314221841/yugioh/images/5/50/Wiki-background"", ""background-image-width"": ""1920"", ""background-image-height"": ""805"", ""background-dynamic"": ""true"", ""page-opacity"": ""100"" }, ""twitterAccount"": ""@getfandom"", ""wikiCategories"": [ ""anime"" ], ""vertical"": ""games"", ""image"": ""https://vignette.wikia.nocookie.net/yugioh/images/b/bc/Wikia-Visualization-Main%2Cyugioh.png/revision/latest/window-crop/width/500/x-offset/0/y-offset/0/window-width/321/window-height/320?cb=20161102140946"", ""disableHTTPSDowngrade"": false } }"); // Act await _sut.WikiVariables(); // Assert await _wikiaHttpClient.Received(1).GetString(Arg.Any <string>()); }
public async Task Given_An_ActivityEndpoint_And_ActivityRequestParameters_Should_Invoke_GetString_Once() { // Arrange _wikiaHttpClient.GetString(Arg.Any <string>(), Arg.Any <Dictionary <string, string> >()).Returns(@"{ ""items"": [ { ""article"": 342, ""user"": 1426382, ""revisionId"": 4196090, ""timestamp"": 1554048731 } ], ""basepath"": ""https://yugioh.fandom.com"" }"); // Act await _sut.ActivityRequest(ActivityEndpoint.LatestActivity, new ActivityRequestParameters()); // Assert await _wikiaHttpClient.Received(1).GetString(Arg.Any <string>(), Arg.Any <Dictionary <string, string> >()); }
public async Task Should_Invoke_GetString_Method_Once() { // Arrange _wikiaHttpClient.GetString(Arg.Any <string>()).Returns(@"{ ""navigation"": { ""wikia"": [ { ""text"": ""On the Wiki"", ""href"": ""#"", ""children"": [ { ""text"": ""Wiki Activity"", ""href"": ""/wiki/Special:WikiActivity"" }, { ""text"": ""Page"", ""href"": ""/wiki/Special:Random"" }, { ""text"": ""Videos"", ""href"": ""/wiki/Special:Videos"" }, { ""text"": ""Photos"", ""href"": ""/wiki/Special:NewFiles"" }, { ""text"": ""Discussions"", ""href"": ""/d/f"" } ] } ], ""wiki"": [ { ""text"": ""Top Content"", ""href"": ""#"", ""children"": [ { ""text"": ""Most Visited"", ""href"": ""#"", ""children"": [ { ""text"": ""Duel Power"", ""href"": ""/wiki/Duel_Power"" }, { ""text"": ""Rising Rampage"", ""href"": ""/wiki/Rising_Rampage"" }, { ""text"": ""Dark Neostorm"", ""href"": ""/wiki/Dark_Neostorm"" }, { ""text"": ""Yu-Gi-Oh! VRAINS - Episode 095"", ""href"": ""/wiki/Yu-Gi-Oh!_VRAINS_-_Episode_095"" }, { ""text"": ""Arcana Force"", ""href"": ""/wiki/Arcana_Force"" }, { ""text"": ""The Infinity Chasers"", ""href"": ""/wiki/The_Infinity_Chasers"" }, { ""text"": ""Structure Deck R: Lord of Magician"", ""href"": ""/wiki/Structure_Deck_R:_Lord_of_Magician"" } ] }, { ""text"": ""Newly Changed"", ""href"": ""#"", ""children"": [ { ""text"": ""Divine Dragon Ragnarok"", ""href"": ""/wiki/Divine_Dragon_Ragnarok"" }, { ""text"": ""Armor Exe"", ""href"": ""/wiki/Armor_Exe"" }, { ""text"": ""Ancient Sorcerer"", ""href"": ""/wiki/Ancient_Sorcerer"" }, { ""text"": ""Amores of Prophecy"", ""href"": ""/wiki/Amores_of_Prophecy"" }, { ""text"": ""Millennium-Eyes Illusionist"", ""href"": ""/wiki/Millennium-Eyes_Illusionist"" }, { ""text"": ""Illusionist Faceless Magician"", ""href"": ""/wiki/Illusionist_Faceless_Magician"" }, { ""text"": ""LVP1-JP036"", ""href"": ""/wiki/LVP1-JP036"" } ] }, { ""text"": ""Random"", ""href"": ""/wiki/Special:Random"", ""children"": [ { ""text"": ""Random Page"", ""href"": ""/wiki/Special:Random"" }, { ""text"": ""Gallery"", ""href"": ""/wiki/Special:Random/Card_Gallery"" }, { ""text"": ""Rulings"", ""href"": ""/wiki/Special:Random/Card_Rulings"" }, { ""text"": ""Errata"", ""href"": ""/wiki/Special:Random/Card_Errata"" }, { ""text"": ""Tips"", ""href"": ""/wiki/Special:Random/Card_Tips"" }, { ""text"": ""Appearances"", ""href"": ""/wiki/Special:Random/Card_Appearances"" }, { ""text"": ""Trivia"", ""href"": ""/wiki/Special:Random/Card_Trivia"" } ] } ] }, { ""text"": ""Characters"", ""href"": ""/wiki/Category:Characters"", ""children"": [ { ""text"": ""VRAINS"", ""href"": ""/wiki/Category:Yu-Gi-Oh!_VRAINS_characters"", ""children"": [ { ""text"": ""Anime"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_VRAINS_anime_characters"" } ] }, { ""text"": ""ARC-V"", ""href"": ""/wiki/Category:Yu-Gi-Oh!_ARC-V_characters"", ""children"": [ { ""text"": ""Anime"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_ARC-V_anime_characters"" }, { ""text"": ""Manga"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_ARC-V_manga_characters"" } ] }, { ""text"": ""ZEXAL"", ""href"": ""/wiki/Category:Yu-Gi-Oh!_ZEXAL_characters"", ""children"": [ { ""text"": ""Anime"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_ZEXAL_anime_characters"" }, { ""text"": ""Manga"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_ZEXAL_manga_characters"" }, { ""text"": ""D Team"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_D_Team_ZEXAL_characters"" } ] }, { ""text"": ""5D's"", ""href"": ""/wiki/Category:Yu-Gi-Oh!_5D%27s_characters"", ""children"": [ { ""text"": ""Anime"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_5D%27s_anime_characters"" }, { ""text"": ""Manga"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_5D%27s_manga_characters"" } ] }, { ""text"": ""GX"", ""href"": ""/wiki/Category:Yu-Gi-Oh!_GX_characters"", ""children"": [ { ""text"": ""Anime"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_GX_anime_characters"" }, { ""text"": ""Manga"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_GX_manga_characters"" } ] }, { ""text"": ""Yu-Gi-Oh!"", ""href"": ""/wiki/Category:Yu-Gi-Oh!_characters"", ""children"": [ { ""text"": ""Second anime"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_anime_characters"" }, { ""text"": ""First anime"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_first_series_anime_characters"" }, { ""text"": ""Manga"", ""href"": ""/wiki/Portal:Yu-Gi-Oh!_manga_characters"" } ] } ] }, { ""text"": ""Card Gallery"", ""href"": ""/wiki/Category:Card_Gallery"", ""children"": [ { ""text"": ""Sets by language"", ""href"": ""/wiki/Category:Set_Card_Galleries"", ""children"": [ { ""text"": ""Japanese Set Card Gallery"", ""href"": ""/wiki/Category:Japanese_Set_Card_Galleries"" }, { ""text"": ""English Set Card Gallery"", ""href"": ""/wiki/Category:English_Set_Card_Galleries"" }, { ""text"": ""French Set Card Gallery"", ""href"": ""/wiki/Category:French_Set_Card_Galleries"" }, { ""text"": ""German Set Card Gallery"", ""href"": ""/wiki/Category:German_Set_Card_Galleries"" }, { ""text"": ""Italian Set Card Gallery"", ""href"": ""/wiki/Category:Italian_Set_Card_Galleries"" }, { ""text"": ""Portuguese Set Card Gallery"", ""href"": ""/wiki/Category:Portuguese_Set_Card_Galleries"" }, { ""text"": ""Spanish Set Card Gallery"", ""href"": ""/wiki/Category:Spanish_Set_Card_Galleries"" }, { ""text"": ""Korean Set Card Gallery"", ""href"": ""/wiki/Category:Korean_Set_Card_Galleries"" } ] }, { ""text"": ""Sets by type"", ""href"": ""/wiki/Category:Set_Card_Galleries"", ""children"": [ { ""text"": ""Unlimited Edition Set Card Gallery"", ""href"": ""/wiki/Category:Unlimited_Edition_Set_Card_Galleries"" }, { ""text"": ""1st Edition Set Card Gallery"", ""href"": ""/wiki/Category:1st_Edition_Set_Card_Galleries"" }, { ""text"": ""Limited Edition Set Card Gallery"", ""href"": ""/wiki/Category:Limited_Edition_Set_Card_Galleries"" }, { ""text"": ""Yu-Gi-Oh! GX Chapter Card Gallery"", ""href"": ""/wiki/Category:Yu-Gi-Oh!_GX_Chapter_Card_Galleries"" }, { ""text"": ""Yu-Gi-Oh! 5D's Episode Card Gallery"", ""href"": ""/wiki/Category:Yu-Gi-Oh!_5D%27s_Episode_Card_Galleries"" }, { ""text"": ""Yu-Gi-Oh! ZEXAL Episode Card Gallery"", ""href"": ""/wiki/Category:Yu-Gi-Oh!_ZEXAL_Episode_Card_Galleries"" }, { ""text"": ""Yu-Gi-Oh! ARC-V Episode Card Gallery"", ""href"": ""/wiki/Category:Yu-Gi-Oh!_ARC-V_Episode_Card_Galleries"" } ] } ] }, { ""text"": ""Community"", ""href"": ""#"", ""children"": [ { ""text"": ""Current Events"", ""href"": ""/wiki/Yu-Gi-Oh!:Current_events"" }, { ""text"": ""Policies"", ""href"": ""/wiki/Category:Policy"" }, { ""text"": ""Forum"", ""href"": ""/wiki/Forum:Index"", ""children"": [ { ""text"": ""Yu-Gi-Oh! Ruling Queries"", ""href"": ""/wiki/Forum:Yu-Gi-Oh!_Ruling_Queries"" }, { ""text"": ""Yu-Gi-Oh! Deck Help"", ""href"": ""/wiki/Forum:Yu-Gi-Oh!_Deck_Help"" }, { ""text"": ""Yu-Gi-Oh! Lists Discussion"", ""href"": ""/wiki/Forum:Yu-Gi-Oh!_Lists_Discussion"" }, { ""text"": ""General Yu-Gi-Oh! Discussion"", ""href"": ""/wiki/Forum:General_Yu-Gi-Oh!_Discussion"" }, { ""text"": ""Duel Terminal"", ""href"": ""/wiki/Forum:Duel_Terminal"" }, { ""text"": ""Help desk"", ""href"": ""/wiki/Forum:Help_desk"" }, { ""text"": ""Yu-Gi-Oh! Wiki Community Discussion"", ""href"": ""/wiki/Forum:Yu-Gi-Oh!_Wiki_Community_Discussion"" }, { ""text"": ""Weekly Deck Competition"", ""href"": ""/wiki/Forum:Weekly_Deck_Competition"" } ] }, { ""text"": ""Recent Changes"", ""href"": ""/wiki/Special:RecentChanges"" }, { ""text"": ""Help"", ""href"": ""/wiki/Help:Contents"" } ] } ] } }"); // Act await _sut.NavigationLinks(); // Assert await _wikiaHttpClient.Received(1).GetString(Arg.Any <string>()); }
public async Task Given_A_Query_Should_Invoke_GetString_Once() { // Arrange const string query = "jinzo"; _wikiaHttpClient.GetString(Arg.Any <string>(), Arg.Any <Dictionary <string, string> >()).Returns(@"{ ""total"": 1335, ""batches"": 54, ""currentBatch"": ""1"", ""next"": 26, ""items"": [ { ""id"": 149, ""title"": ""Jinzo"", ""url"": ""https://yugioh.fandom.com/wiki/Jinzo"", ""ns"": 0, ""quality"": 98, ""snippet"": ""This article is about the card. For the character, see <span class=\""searchmatch\"">Jinzo</span> (character). For the archetype, see <span class=\""searchmatch\"">Jinzo</span> (archetype). The Arabic, Croatian, Danish, Greek, Thai andTurkish names given are not official. (card names…"" }, { ""id"": 142661, ""title"": ""Jinzo (archetype)"", ""url"": ""http://yugioh.fandom.com/wiki/Jinzo_(archetype)"", ""ns"": 0, ""quality"": 96, ""snippet"": ""<span class=\""searchmatch\"">Jinzo</span> 人造人間 「じんぞうにんげん 」 (Jinzōningen ) Translation Android Other names Chinese 人造人 Translation: Android French <span class=\""searchmatch\"">Jinzo</span> German <span class=\""searchmatch\"">Jinzo</span> Italian <span class=\""searchmatch\"">Jinzo</span> Korean…"" }, { ""id"": 56659, ""title"": ""Jinzo (character)"", ""url"": ""http://yugioh.wikia.com/wiki/Jinzo_(character)"", ""ns"": 0, ""quality"": 98, ""snippet"": ""<span class=\""searchmatch\"">Jinzo</span> Corresponding card <span class=\""searchmatch\"">Jinzo</span> English name <span class=\""searchmatch\"">Jinzo</span> Japanese translated Android - Psycho Shocker Japanese name 人(じん)造(ぞう)人(にん)間(げん) -サイコ・ショッカー 人造人間…"" }, { ""id"": 402128, ""title"": ""Jinzo Art"", ""url"": ""http://yugioh.wikia.com/wiki/Jinzo_Art"", ""ns"": 0, ""quality"": 11, ""snippet"": ""<span class=\""searchmatch\"">Jinzo</span> Art, or <span class=\""searchmatch\"">Jinzo</span> Legacy, known as Psycho Art (サイコ流 Saiko Ryū) in the Japanese version, is a term used in the Yu-Gi-Oh! GX anime. It denotes…"" }, { ""id"": 71747, ""title"": ""Jinzo - Returner"", ""url"": ""http://yugioh.wikia.com/wiki/Jinzo_-_Returner"", ""ns"": 0, ""quality"": 89, ""snippet"": ""<span class=\""searchmatch\"">Jinzo</span> - Returner 人(じん)造(ぞう)人(にん)間(げん)-サイコ・リターナー English <span class=\""searchmatch\"">Jinzo</span> - Returner Chinese 人造人-念力归来者 Check translation French Résurrecteur <span class=\""searchmatch\"">Jinzo</span> Check…"" }, { ""id"": 72705, ""title"": ""Jinzo - Lord"", ""url"": ""http://yugioh.wikia.com/wiki/Jinzo_-_Lord"", ""ns"": 0, ""quality"": 94, ""snippet"": ""<span class=\""searchmatch\"">Jinzo</span> - Lord 人(じん)造(ぞう)人(にん)間(げん)-サイコ・ロード English <span class=\""searchmatch\"">Jinzo</span> - Lord Chinese 人造人-念力王者 Check translation French Seigneur <span class=\""searchmatch\"">Jinzo</span> Check translation German…"" }, { ""id"": 485423, ""title"": ""Jinzo - Jector"", ""url"": ""http://yugioh.wikia.com/wiki/Jinzo_-_Jector"", ""ns"": 0, ""quality"": 95, ""snippet"": ""<span class=\""searchmatch\"">Jinzo</span> - Jector 人(じん)造(ぞう)人(にん)間(げん)-サイコ・ジャッカー English <span class=\""searchmatch\"">Jinzo</span> - Jector French Injecteur <span class=\""searchmatch\"">Jinzo</span> Check translation German <span class=\""searchmatch\"">Jinzo</span> - Jektor Check translation…"" }, { ""id"": 516531, ""title"": ""Jinzo (later anime)"", ""url"": ""http://yugioh.wikia.com/wiki/Jinzo_(later_anime)"", ""ns"": 0, ""quality"": 87, ""snippet"": ""Main card page: \""<span class=\""searchmatch\"">Jinzo</span>\"" <span class=\""searchmatch\"">Jinzo</span> Japanese: 人造人間-サイコ・ショッカー Romaji: Jinzōningen - Saiko Shokkā Translated: Android - Psycho Shocker Anime cards (Galleries…"" }, { ""id"": 504105, ""title"": ""Jinzo (anime)"", ""url"": ""http://yugioh.wikia.com/wiki/Jinzo_(anime)"", ""ns"": 0, ""quality"": 90, ""snippet"": ""Main card page: \""<span class=\""searchmatch\"">Jinzo</span>\"" <span class=\""searchmatch\"">Jinzo</span> Japanese: 人造人間-サイコ・ショッカー Romaji: Jinzōningen - Saiko Shokkā Translated: Android - Psycho Shocker ja dub Anime cards…"" }, { ""id"": 6636, ""title"": ""Jinzo 7"", ""url"": ""http://yugioh.wikia.com/wiki/Jinzo_7"", ""ns"": 0, ""quality"": 93, ""snippet"": ""<span class=\""searchmatch\"">Jinzo</span> #7 人(じん)造(ぞう)人(にん)間(げん)7号(ごう) English <span class=\""searchmatch\"">Jinzo</span> #7 Chinese 人造人7號 Check translation French <span class=\""searchmatch\"">Jinzo</span> N°7 Check translation German <span class=\""searchmatch\"">Jinzo</span> #7 Check…"" }, { ""id"": 58482, ""title"": ""Jinzo (DDM)"", ""url"": ""http://yugioh.wikia.com/wiki/Jinzo_(DDM)"", ""ns"": 0, ""quality"": 48, ""snippet"": ""Main card page: \""<span class=\""searchmatch\"">Jinzo</span>\"" <span class=\""searchmatch\"">Jinzo</span> Japanese: 人造人間-サイコ・ショッカー Romaji: Jinzōningen - Saiko Shokkā Translated: Android - Psycho Shocker Dungeon Dice Monsters…"" }, { ""id"": 475724, ""title"": ""Jinzo (manga)"", ""url"": ""http://yugioh.wikia.com/wiki/Jinzo_(manga)"", ""ns"": 0, ""quality"": 86, ""snippet"": ""Main card page: \""<span class=\""searchmatch\"">Jinzo</span>\"" <span class=\""searchmatch\"">Jinzo</span> Japanese: 人造人間-サイコ・ショッカー Romaji: Jinzōningen - Saiko Shokkā Translated: Android - Psycho Shocker ja color en ja Manga…"" }, { ""id"": 590258, ""title"": ""Jinzo (DBT)"", ""url"": ""http://yugioh.wikia.com/wiki/Jinzo_(DBT)"", ""ns"": 0, ""quality"": 79, ""snippet"": ""Main card page: \""<span class=\""searchmatch\"">Jinzo</span>\"" <span class=\""searchmatch\"">Jinzo</span> Japanese: 人造人間-サイコ・ショッカー Romaji: Jinzōningen - Saiko Shokkā Translated: Android - Psycho Shocker #751: Gear Golem…"" }, { ""id"": 269088, ""title"": ""List of \""Jinzo\"" cards"", ""url"": ""http://yugioh.wikia.com/wiki/List_of_%22Jinzo%22_cards"", ""ns"": 0, ""quality"": 90, ""snippet"": ""Contents[show] This is a list of \""<span class=\""searchmatch\"">Jinzo</span>\"" cards. \""<span class=\""searchmatch\"">Jinzo</span>\"" is an archetype in the OCG/TCG, and a series in the anime. For a list of support cards…"" }, { ""id"": 159518, ""title"": ""Jinzo - Lord (character)"", ""url"": ""http://yugioh.wikia.com/wiki/Jinzo_-_Lord_(character)"", ""ns"": 0, ""quality"": 91, ""snippet"": ""<span class=\""searchmatch\"">Jinzo</span> - Lord, known as Android - Psycho Lord in the Japanese version, is a character version of the card, \""<span class=\""searchmatch\"">Jinzo</span> - Lord\"" and an upgraded version…"" }, { ""id"": 681777, ""title"": ""Jinzo (Tag Force)"", ""url"": ""http://yugioh.wikia.com/wiki/Jinzo_(Tag_Force)"", ""ns"": 0, ""quality"": 96, ""snippet"": ""<span class=\""searchmatch\"">Jinzo</span> Corresponding card <span class=\""searchmatch\"">Jinzo</span> English name <span class=\""searchmatch\"">Jinzo</span> Japanese translated Android - Psycho Shocker Japanese name 人(じん)造(ぞう)人(にん)間(げん) -サイコ・ショッカー 人造人間…"" }, { ""id"": 473848, ""title"": ""Jinzo (Duel Arena)"", ""url"": ""http://yugioh.wikia.com/wiki/Jinzo_(Duel_Arena)"", ""ns"": 0, ""quality"": 98, ""snippet"": ""<span class=\""searchmatch\"">Jinzo</span> Corresponding card <span class=\""searchmatch\"">Jinzo</span> English name <span class=\""searchmatch\"">Jinzo</span> Gender Male Duel Arena Decree of the <span class=\""searchmatch\"">Jinzo</span> Video game debut Yu-Gi-Oh! Duel Arena PC appearances Yu…"" }, { ""id"": 517640, ""title"": ""Jinzo - Returner (anime)"", ""url"": ""http://yugioh.wikia.com/wiki/Jinzo_-_Returner_(anime)"", ""ns"": 0, ""quality"": 84, ""snippet"": ""Main card page: \""<span class=\""searchmatch\"">Jinzo</span> - Returner\"" <span class=\""searchmatch\"">Jinzo</span> - Returner Japanese: 人造人間-サイコ・リターナー Romaji: Jinzōningen - Saiko Ritānā Translated: Android - Psycho Returner…"" }, { ""id"": 517639, ""title"": ""Jinzo - Lord (anime)"", ""url"": ""http://yugioh.wikia.com/wiki/Jinzo_-_Lord_(anime)"", ""ns"": 0, ""quality"": 89, ""snippet"": ""Main card page: \""<span class=\""searchmatch\"">Jinzo</span> - Lord\"" <span class=\""searchmatch\"">Jinzo</span> - Lord Japanese: 人造人間-サイコ・ロード Romaji: Jinzōningen - Saiko Rōdo Translated: Android - Psycho Lord Anime cards…"" }, { ""id"": 433572, ""title"": ""Jinzo - Lord (BAM)"", ""url"": ""http://yugioh.wikia.com/wiki/Jinzo_-_Lord_(BAM)"", ""ns"": 0, ""quality"": 50, ""snippet"": ""Main card page: \""<span class=\""searchmatch\"">Jinzo</span> - Lord\"" <span class=\""searchmatch\"">Jinzo</span> - Lord Yu-Gi-Oh! BAM cards Attribute DARK Type Machine / Effect Level 11 Power/Life Points 3000 / 500 SPECIAL…"" }, { ""id"": 447061, ""title"": ""Jinzo 7 (FMR)"", ""url"": ""http://yugioh.wikia.com/wiki/Jinzo_7_(FMR)"", ""ns"": 0, ""quality"": 37, ""snippet"": ""Main card page: \""<span class=\""searchmatch\"">Jinzo</span> 7\"" <span class=\""searchmatch\"">Jinzo</span> #7 人造人間7号 Japanese: 人造人間7号 Romaji: Jinzōningen Nana-gō Translated: Android No.7 #421: Cyber Commander #423: Dice…"" }, { ""id"": 438468, ""title"": ""Jinzo 7 (DOR)"", ""url"": ""http://yugioh.wikia.com/wiki/Jinzo_7_(DOR)"", ""ns"": 0, ""quality"": 42, ""snippet"": ""Main card page: \""<span class=\""searchmatch\"">Jinzo</span> 7\"" <span class=\""searchmatch\"">Jinzo</span> #7 人(じん)造(ぞう)人(にん)間(げん)7号(ごう) Japanese: 人造人間7号 Romaji: Jinzōningen Nana-gō Translated: Android No.7 #496: Cyber…"" }, { ""id"": 588590, ""title"": ""Jinzo 7 (DBT)"", ""url"": ""http://yugioh.wikia.com/wiki/Jinzo_7_(DBT)"", ""ns"": 0, ""quality"": 70, ""snippet"": ""Main card page: \""<span class=\""searchmatch\"">Jinzo</span> 7\"" <span class=\""searchmatch\"">Jinzo</span> #7 Japanese: 人造人間7号 Romaji: Jinzōningen Nana-gō Translated: Android No.7 #421: Cyber Commander #423: Dice Armadillo…"" }, { ""id"": 595607, ""title"": ""Jinzo (DDM video game)"", ""url"": ""http://yugioh.wikia.com/wiki/Jinzo_(DDM_video_game)"", ""ns"": 0, ""quality"": 73, ""snippet"": ""Main card page: \""<span class=\""searchmatch\"">Jinzo</span>\"" <span class=\""searchmatch\"">Jinzo</span> Japanese: 人造人間-サイコ・ショッカー Kana: じんぞうにんげん-サイコ・ショッカー Romaji: Jinzōningen - Saiko Shokkā Translated: Android - Psycho…"" }, { ""id"": 661419, ""title"": ""Jinzo 7 (DM2)"", ""url"": ""http://yugioh.wikia.com/wiki/Jinzo_7_(DM2)"", ""ns"": 0, ""quality"": 31, ""snippet"": ""Main card page: \""<span class=\""searchmatch\"">Jinzo</span> 7\"" <span class=\""searchmatch\"">Jinzo</span> #7 Japanese: じんぞうにんげん7ごう Romaji: Jinzōningen Nana-gō Translated: Android No.7 #421: Cyber Commander #423: Dice…"" } ] }"); // Act await _sut.SuggestedPhrases(query); // Assert await _wikiaHttpClient.Received(1).GetString(Arg.Any <string>(), Arg.Any <Dictionary <string, string> >()); }
public async Task Given_A_Valid_ArticleId_Should_Invoke_GetString_Once() { // Arrange const long articleId = 2342; _wikiaHttpClient.GetString(Arg.Any <string>(), Arg.Any <Dictionary <string, string> >()).Returns(@"{ ""sections"": [ { ""title"": ""Solemn Wishes"", ""level"": 1, ""content"": [], ""images"": [] } ] }"); // Act await _sut.Simple(articleId); // Assert await _wikiaHttpClient.Received(1).GetString(Arg.Any <string>(), Arg.Any <Dictionary <string, string> >()); }
public async Task Given_An_ArticleEndPoint_And_Parameters_Should_Invoke_GetString_Once() { // Arrange const long articleId = 2342; // Act await _sut.ArticleRequest(ArticleEndpoint.Simple, () => new Dictionary <string, string> { ["id"] = articleId.ToString() }); // Assert await _wikiaHttpClient.Received(1).GetString(Arg.Any <string>(), Arg.Any <Dictionary <string, string> >()); }