public void BeginUpdateProfileImage_WithInvalidFile_DoesNotSend() { // arrange var twitterClient = Substitute.For<IBaseTwitterClient>(); twitterClient.When(a => a.BeginRequest(Arg.Any<string>(), null, Arg.Any<IDictionary<string, RESTBase.File>>(), Arg.Any<WebMethod>(), Arg.Any<RestCallback>())) .Do(c => { var files = c.Args()[2] as IDictionary<string, RESTBase.File>; Assert.That(files.Count() == 0); }); var account = new Account(twitterClient); var f = new FileInfo("fakefile.foo"); // act account.BeginUpdateProfileImage(f, User.DoNothing); }
public void BeginUpdateProfileImage_WithValidResponseFromClient_ContainsUser() { var twitterClient = Substitute.For<IBaseTwitterClient>(); twitterClient.SetResponseWitHFileBasedOnRequestPath(); var account = new Account(twitterClient); // assert GenericResponseDelegate endUpdateProfileImage = (a, b, c) => { var user = c as User; Assert.That(user, Is.Not.Null); Assert.That(user.ScreenName, Is.EqualTo("shiftkey")); }; var f = new FileInfo("akihabara.png"); // act account.BeginUpdateProfileImage(f, endUpdateProfileImage); }
public void BeginUpdateProfileImage_WithNoCallback_DoesNotThrowException() { // arrange var twitterClient = Substitute.For<IBaseTwitterClient>(); twitterClient.SetResponseWitHFileBasedOnRequestPath(); var account = new Account(twitterClient); var f = new FileInfo("akihabara.png"); // act account.BeginUpdateProfileImage(f, User.DoNothing); }