public async Task ShouldReturnTheInstance() { var richMenuResponse = new RichMenuResponse() { Id = Guid.NewGuid().ToString() }; var httpClient = TestHttpClient.Create(); var bot = TestConfiguration.CreateBot(httpClient); var result = await bot.DeleteRichMenu(richMenuResponse); Assert.AreSame(bot, result); }
public async Task ShouldThrowExceptionWhenRichMenuIdIsEmpty() { var richMenuResponse = new RichMenuResponse() { Id = string.Empty }; var bot = TestConfiguration.CreateBot(); await ExceptionAssert.ThrowsArgumentEmptyExceptionAsync("richMenuId", async() => { await bot.SetDefaultMenu(richMenuResponse); }); }
public async Task ShouldThrowExceptionWhenUserIsNull() { var richMenuResponse = new RichMenuResponse() { Id = Guid.NewGuid().ToString() }; var bot = TestConfiguration.CreateBot(); await ExceptionAssert.ThrowsArgumentNullExceptionAsync("user", async() => { await bot.SetUserRichMenu((IUser)null, richMenuResponse); }); }
public async Task ShouldThrowExceptionWhenRichMenuIdIsNull() { var richMenu = new RichMenuResponse() { Id = null }; var bot = TestConfiguration.CreateBot(); await ExceptionAssert.ThrowsArgumentNullExceptionAsync("richMenuId", async() => { await bot.SetUserRichMenu("test", richMenu); }); }
public async Task ShouldThrowExceptionWhenImageDataIsEmpty() { var richMenuResponse = new RichMenuResponse() { Id = Guid.NewGuid().ToString() }; var bot = TestConfiguration.CreateBot(); await ExceptionAssert.ThrowsArgumentEmptyExceptionAsync("imageData", async() => { await bot.SetRichMenuImage(richMenuResponse, new byte[] { }); }); }
public async Task ShouldThrowExceptionWhenApiCallIsUnsuccessful() { var richMenuResponse = new RichMenuResponse() { Id = Guid.NewGuid().ToString() }; var httpClient = TestHttpClient.ThatReturnsAnError(); var bot = TestConfiguration.CreateBot(httpClient); await ExceptionAssert.ThrowsAsync <LineBotException>(async() => { await bot.DeleteRichMenu(richMenuResponse); }); }
public async Task ShouldCallTheCorrectApi() { var richMenuId = Guid.NewGuid().ToString(); var richMenuResponse = new RichMenuResponse() { Id = richMenuId }; var httpClient = TestHttpClient.Create(); var bot = TestConfiguration.CreateBot(httpClient); await bot.DeleteRichMenu(richMenuResponse); Assert.AreEqual(HttpMethod.Delete, httpClient.RequestMethod); Assert.AreEqual($"/richmenu/{richMenuId}", httpClient.RequestPath); }
public async Task ShouldCallTheCorrectApi() { var user = new TestUser(); var richMenu = new RichMenuResponse() { Id = Guid.NewGuid().ToString() }; var httpClient = TestHttpClient.Create(); var bot = TestConfiguration.CreateBot(httpClient); await bot.SetUserRichMenu(user, richMenu); Assert.AreEqual(HttpMethod.Post, httpClient.RequestMethod); Assert.AreEqual($"/user/{user.Id}/richmenu/{richMenu.Id}", httpClient.RequestPath); }
public async Task ShouldSetDefaultRichMenuIdWhenCorrectInputCallsApi() { var input = new byte[0]; var sampleId = Guid.NewGuid().ToString(); var richMenuResponse = new RichMenuResponse() { Id = sampleId }; var httpClient = TestHttpClient.ThatReturnsData(input); var bot = TestConfiguration.CreateBot(httpClient); await bot.SetDefaultMenu(richMenuResponse); Assert.AreEqual(HttpMethod.Post, httpClient.RequestMethod); Assert.AreEqual($"/user/all/richmenu/{sampleId}", httpClient.RequestPath); }
public async Task ShouldCallTheCorrectApi() { var richMenuId = Guid.NewGuid().ToString(); var richMenuResponse = new RichMenuResponse() { Id = richMenuId }; var data = new byte[] { 1, 2, 3, 4 }; var httpClient = TestHttpClient.Create(); var bot = TestConfiguration.CreateBot(httpClient); await bot.SetRichMenuImage(richMenuResponse, data); Assert.AreEqual(HttpMethod.Post, httpClient.RequestMethod); Assert.AreEqual($"/richmenu/{richMenuId}/content", httpClient.RequestPath); Assert.AreEqual("01-02-03-04", httpClient.PostedData); }
public async Task ShouldCallTheCorrectApi() { var richMenuId = Guid.NewGuid().ToString(); var richMenuResponse = new RichMenuResponse() { Id = richMenuId }; var data = new byte[] { 1, 2, 3, 4 }; var httpClient = TestHttpClient.ThatReturnsData(data); var bot = TestConfiguration.CreateBot(httpClient); var result = await bot.GetRichMenuImage(richMenuResponse); Assert.AreEqual(HttpMethod.Get, httpClient.RequestMethod); Assert.AreEqual($"/richmenu/{richMenuId}/content", httpClient.RequestPath); CollectionAssert.AreEqual(data, result); }
public async Task ShouldThrowExceptionWhenUserIdIsEmpty() { var user = new TestUser() { Id = string.Empty }; var richMenuResponse = new RichMenuResponse() { Id = Guid.NewGuid().ToString() }; var bot = TestConfiguration.CreateBot(); await ExceptionAssert.ThrowsArgumentEmptyExceptionAsync("userId", async() => { await bot.SetUserRichMenu(user, richMenuResponse); }); }