public IEnumerator Start() { loginUI = FindObjectOfType <LoginUI>(); // Init SF controller SalesforceClient client = GetComponent <SalesforceClient>(); if (ApplicationState.sfConnection != null) { client.setConnection(ApplicationState.sfConnection); } sfController = new SalesforceController(this, client); // Is this the first run? if (ApplicationState.sfConnection == null) { // Show login screen yield return(FindObjectOfType <VRUtil>().enableVrMode(false)); loginUI.setSalesforceController(sfController); StartCoroutine(loginUI.fadeIn()); } else // Returning to menu, display config list { // Destroy non-VR UI Destroy(loginUI.gameObject); Destroy(FindObjectOfType <StandaloneInputModule>()); // Enable VR UI StartCoroutine(Camera.main.fadeIn(3)); setVrUiScreen(configurationSelectionContainer.name); yield return(initConfigSelectionView()); yield return(transitionUi(true)); } }
public async Task <SalesforceClient> CreateClientAsync(string name, ApiVersion apiVersion = null, string oauthConfigName = "__default") { var savedToken = await this.GetTokenAsync(name); if (savedToken == null) { throw new KeyNotFoundException($"Connection {name} unknown"); } using (var authClient = await CreateAuthenticationClientAsync(new Uri(savedToken.InstanceUrl, UriKind.Absolute), oauthConfigName)) { this.logger.LogDebug($"Authenticating {name}..."); var newToken = await authClient.ExchangeRefreshTokenForTokenAsync(savedToken.RefreshToken); this.logger.LogDebug($"Authenticated {newToken.IdTokenUserInfo?.Name}..."); var salesforceClient = new SalesforceClient( httpClient: this.serviceProvider.GetRequiredService <IHttpClientFactory>().CreateClient(), salesforceToken: newToken, logger: this.serviceProvider.GetRequiredService <ILogger <SalesforceClient> >()); if (apiVersion == null) { this.logger.LogTrace("Establishing newest API version"); await salesforceClient.SetToUseNewestApiVersionAsync(); this.logger.LogTrace($"API version: {salesforceClient.ApiVersion}"); } return(salesforceClient); } }
public void getChatter(string id) { SalesforceClient client = GameObject.FindGameObjectWithTag("Salesforce").GetComponent <SalesforceClient>(); client.getChatterFeed(id, this); objectId = id; }
private SalesforceClient CreateAltUrlClientWithResponseOk <T>(HttpStatusCode statusCode, T data, Action <Uri> recordUrl) where T : new() { var response = new Mock <IRestResponse <T> >(); response.Setup(r => r.Content).Returns("{\"id\":\"id\",\"records\":[{\"Id\": \"1\"},{\"Id\":\"2\"}]}"); response.Setup(r => r.StatusCode).Returns(statusCode); response.Setup(r => r.ErrorException).Returns((Exception)null); response.Setup(r => r.Data).Returns(data); var restClient = new Mock <IRestClient>(); restClient.Setup(r => r.BaseUrl).Returns(new Uri($"http://url{AltUrl}/TESTE")); restClient.Setup(r => r.Execute(It.IsAny <IRestRequest>())).Returns(response.Object); restClient.Setup(r => r.Execute <T>(It.IsAny <IRestRequest>())).Returns(response.Object); var flow = new Mock <IAuthenticationFlow>(); flow.Setup(f => f.Authenticate()).Returns(new AuthenticationInfo("access", "http://url")); var target = new SalesforceClient(restClient.Object); target.Authenticate(flow.Object); return(target); }
public void Update_StatusCodeOkButErrorException_Exception() { var response = new Mock <IRestResponse <object> >(); response.Setup(r => r.Content).Returns(""); response.Setup(r => r.StatusCode).Returns(HttpStatusCode.NoContent); response.Setup(r => r.ErrorException).Returns(new Exception("TESTE")); var restClient = new Mock <IRestClient>(); restClient.Setup(r => r.BaseUrl).Returns(new Uri("http://tokenUrl")); restClient.Setup(r => r.Execute(It.IsAny <IRestRequest>())).Returns(response.Object); var flow = new Mock <IAuthenticationFlow>(); flow.Setup(f => f.Authenticate()).Returns(new AuthenticationInfo("access", "http://url")); var target = new SalesforceClient(restClient.Object); target.Authenticate(flow.Object); ExceptionAssert.IsThrowing(new FormatException("TESTE" + Environment.NewLine), () => { target.Update("TESTE", "TESTE", "TESTE"); }); }
public async void Login() { var salesforceClient = new SalesforceClient(); var loginResult = await salesforceClient.Login(_username, _password, _organizationId); Assert.IsNotNull(loginResult); }
public void Authenticate_ValidCredentials_Authenticated() { var target = new SalesforceClient(); target.Authenticate(CreateAuthenticationFlow(TestConfig.ClientId, TestConfig.ClientSecret, TestConfig.Username, TestConfig.Password)); Assert.IsTrue(target.IsAuthenticated); }
public void Setup() { var key = "3MVG9A2kN3Bn17hueOTBLV6amupuqyVHycNQ43Q4pIHuDhYcP0gUA0zxwtLPCcnDlOKy0gopxQ4dA6BcNWLab"; var redirectUrl = new Uri("com.sample.salesforce:/oauth2Callback"); // TODO: Move oauth redirect to constant or config var secret = "5754078534436456018"; Client = new SalesforceClient(key, secret, redirectUrl); var users = Client.LoadUsers(); ISalesforceUser user; if (users.SingleOrDefault() == null) { user = new SalesforceUser { Username = "******", }; user.Properties ["instance_url"] = @"https://na15.salesforce.com/"; user.Properties ["access_token"] = @"00Di0000000bhOg!ARYAQLWetbW6H_Lw78K0SlJ3IU7bBCeOMEhtlP8hTvaWALsYNuxfkikbC5tbAfgdNvxjSkZJ6wHVr8A5qIKM7.KeBmGnoIlg"; Client.Save(user); } else { user = users.FirstOrDefault(); } Client.CurrentUser = user; }
public void Update_ErrorReceivedWithInvalidFields_Exception() { var response = MockRepository.GenerateMock <IRestResponse <object> >(); response.Expect(r => r.Content).Return("[{ errorCode: 'error', message: 'error', fields: ['field1', 'field2'] }]"); response.Expect(r => r.StatusCode).Return(HttpStatusCode.BadRequest); var restClient = MockRepository.GenerateMock <IRestClient>(); restClient.Expect(r => r.BaseUrl).SetPropertyWithArgument(new Uri("http://tokenUrl")); restClient.Expect(r => r.Execute <object>(null)).IgnoreArguments().Return(response); var flow = MockRepository.GenerateMock <IAuthenticationFlow>(); flow.Expect(f => f.Authenticate()).Return(new AuthenticationInfo("access", "http://url")); var target = new SalesforceClient(restClient); target.Authenticate(flow); ExceptionAssert.IsThrowing(new SalesforceException("TESTE", "error", new string[] { "field1", "field2" }), () => { target.Update("TESTE", "TESTE", "TESTE"); }); }
public void Update_StatusCodeOkButErrorException_Exception() { var response = MockRepository.GenerateMock <IRestResponse <object> >(); response.Expect(r => r.Content).Return(""); response.Expect(r => r.StatusCode).Return(HttpStatusCode.NoContent); response.Expect(r => r.ErrorException).Return(new Exception("TESTE")); var restClient = MockRepository.GenerateMock <IRestClient>(); restClient.Expect(r => r.BaseUrl).SetPropertyWithArgument(new Uri("http://tokenUrl")); restClient.Expect(r => r.Execute <object>(null)).IgnoreArguments().Return(response); var flow = MockRepository.GenerateMock <IAuthenticationFlow>(); flow.Expect(f => f.Authenticate()).Return(new AuthenticationInfo("access", "http://url")); var target = new SalesforceClient(restClient); target.Authenticate(flow); ExceptionAssert.IsThrowing(new FormatException("TESTE" + Environment.NewLine), () => { target.Update("TESTE", "TESTE", "TESTE"); }); }
public void TestPropertiesAuthPathAndTokenPath() { string path_auth = @"http://xamarin.com/auth"; string path_token = @"http://xamarin.com/token"; SalesforceClient.AuthPath = path_auth; SalesforceClient.TokenPath = path_token; string client_id = "ajde klajent"; string client_secret = "very very secret"; Uri uri_redirect = new Uri("http://holisticware.net"); SalesforceClient client = new SalesforceClient ( client_id, client_secret, uri_redirect ); Assert.AreNotEqual ( SalesforceClient.AuthPath, @"https://login.salesforce.com/services/oauth2/authorize" ); Assert.AreNotEqual ( SalesforceClient.AuthPath, @"https://login.salesforce.com/services/oauth2/authorize" ); Assert.AreEqual(SalesforceClient.AuthPath, path_auth); Assert.AreEqual(SalesforceClient.TokenPath, path_token); return; }
protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); Client = new SalesforceClient(consumerKey, consumerSecret, callbackUrl); Client.AuthenticationComplete += (sender, e) => OnAuthenticationCompleted(e); var users = Client.LoadUsers(); if (!users.Any()) { var intent = Client.GetLoginInterface() as Intent; StartActivityForResult(intent, 42); } else { LoadAccounts(); } ListView.ItemClick += (sender, e) => { var t = ((DataAdapter)ListAdapter)[e.Position]; System.Diagnostics.Debug.WriteLine("Clicked on " + t.ToString()); var intent = new Intent(); intent.SetClass(this, typeof(DetailActivity)); intent.PutExtra("JsonItem", "{\"attributes\": {\"type\": \"Account\", \"url\": \"/services/data/v28.0/sobjects/Account/\"}, " + string.Format("\"Id\": \"{0}\", \"Name\": \"{1}\", \"AccountNumber\": \"{2}\", \"Phone\": \"{3}\", \"Website\": \"{4}\", \"Industry\": \"{5}\"", t.Id, t.Name, t.AccountNumber, t.Phone, t.Website, t.Industry) + "}"); StartActivity(intent); }; }
/// <summary> /// Builds client according to parameter. /// </summary> /// <param name="service">API service enum.</param> /// <returns>Client instance.</returns> public static IClient GetClient(ApisEnum service) { IClient client; switch (service) { case ApisEnum.Pivotal: client = PivotalClient.GetInstance(); break; case ApisEnum.Trello: client = TrelloClient.GetInstance(); break; case ApisEnum.Todoist: client = TodoistClient.GetInstance(); break; case ApisEnum.Salesforce: client = SalesforceClient.GetInstance(); break; default: client = PivotalClient.GetInstance(); break; } return(client); }
public void InitializeSalesforce(Context context) { this.context = context; #endif const string consumerKey = "YOUR_CONSUMER_KEY"; const string consumerSecret = "YOUR_CONSUMER_SECRET"; var callbackUrl = new Uri(@"com.sample.salesforce:/oauth2Callback"); // Creates our connection to salesforce. Client = new SalesforceClient(consumerKey, consumerSecret, callbackUrl); Client.AuthenticationComplete += (sender, e) => OnAuthenticationCompleted(e); // Get authenticated users from the local keystore var users = Client.LoadUsers(); if (!users.Any()) { // Begin OAuth journey StartAuthorization(); } else { // Immediately go to accounts screen LoadAccounts(); LoadProducts(); LoadMonkeys(); } }
private SalesforceClient CreateAltUrlClientWithResponseOk <T>(HttpStatusCode statusCode, T data, Action <Uri> recordUrl) where T : new() { var response = MockRepository.GenerateMock <IRestResponse <T> >(); response.Expect(r => r.Content).Return("{\"id\":\"id\",\"records\":[{\"Id\": \"1\"},{\"Id\":\"2\"}]}"); response.Expect(r => r.StatusCode).Return(statusCode); response.Expect(r => r.ErrorException).Return(null); response.Expect(r => r.Data).Return(data); var restClient = MockRepository.GenerateMock <IRestClient>(); restClient.Expect(r => r.BaseUrl = new Uri(string.Format("http://url{0}/TESTE", AltUrl))).IgnoreArguments().Do(recordUrl); restClient.Expect(r => r.Execute(null)).IgnoreArguments().Return(response); restClient.Expect(r => r.Execute <T>(null)).IgnoreArguments().Return(response); var flow = MockRepository.GenerateMock <IAuthenticationFlow>(); flow.Expect(f => f.Authenticate()).Return(new AuthenticationInfo("access", "http://url")); var target = new SalesforceClient(restClient); target.Authenticate(flow); return(target); }
public void Update_ErrorReceivedWithInvalidFields_Exception() { var response = new Mock <IRestResponse <object> >(); response.Setup(r => r.Content).Returns("[{ errorCode: 'error', message: 'error', fields: ['field1', 'field2'] }]"); response.Setup(r => r.StatusCode).Returns(HttpStatusCode.BadRequest); var restClient = new Mock <IRestClient>(); restClient.Setup(r => r.BaseUrl).Returns(new Uri("http://tokenUrl")); restClient.Setup(r => r.Execute <object>(It.IsAny <IRestRequest>())).Returns(response.Object); restClient.Setup(r => r.Execute(It.IsAny <IRestRequest>())).Returns(response.Object); var flow = new Mock <IAuthenticationFlow>(); flow.Setup(f => f.Authenticate()).Returns(new AuthenticationInfo("access", "http://url")); var target = new SalesforceClient(restClient.Object); target.Authenticate(flow.Object); ExceptionAssert.IsThrowing(new SalesforceException("TESTE", "error", new string[] { "field1", "field2" }), () => { target.Update("TESTE", "TESTE", "TESTE"); }); }
// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { services.AddControllers(); services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new OpenApiInfo { Title = "LoanProcessorAPI", Version = "v1" }); }); services.AddSingleton(SFDCConfig); services.TryAddSingleton <ISalesforceClient>((container) => { var logger = container.GetRequiredService <ILogger <SalesforceClient> >(); var client = new SalesforceClient(logger, SFDCConfig); return(client); } ); services.TryAddSingleton <IBlendClient>((container) => { var logger = container.GetRequiredService <ILogger <BlendClient> >(); var client = new BlendClient(logger, BlendConfig); return(client); } ); }
public void AnyAction_NotAuthentacated_Exception() { var target = new SalesforceClient(); ExceptionAssert.IsThrowing(new InvalidOperationException("Please, execute Authenticate method before call any REST API operation."), () => { target.Create("TESTE", "TESTE"); }); ExceptionAssert.IsThrowing(new InvalidOperationException("Please, execute Authenticate method before call any REST API operation."), () => { target.Delete("TESTE", "TESTE"); }); ExceptionAssert.IsThrowing(new InvalidOperationException("Please, execute Authenticate method before call any REST API operation."), () => { target.FindById <Exception>("TESTE", "TESTE"); }); ExceptionAssert.IsThrowing(new InvalidOperationException("Please, execute Authenticate method before call any REST API operation."), () => { target.Query <Exception>("TESTE"); }); ExceptionAssert.IsThrowing(new InvalidOperationException("Please, execute Authenticate method before call any REST API operation."), () => { target.Update("TESTE", "TESTE", "TESTE"); }); }
private SalesforceClient CreateClientWithResponseOk <T>(HttpStatusCode statusCode, T data) where T : new() { var response = MockRepository.GenerateMock <IRestResponse <T> >(); response.Expect(r => r.Content).Return("{\"id\":\"id\",\"records\":[{\"Id\": \"1\"},{\"Id\":\"2\"}]}"); response.Expect(r => r.StatusCode).Return(statusCode); response.Expect(r => r.ErrorException).Return(null); response.Expect(r => r.Data).Return(data); var restClient = MockRepository.GenerateMock <IRestClient>(); //restClient.Expect(r => r.BaseUrl).SetPropertyWithArgument("url/services/data/v28.0/query?q=SELECT Id FROM TESTE WHERE Id = 'TESTE'"); restClient.Expect(r => r.Execute <T>(null)).IgnoreArguments().Return(response); var flow = MockRepository.GenerateMock <IAuthenticationFlow>(); flow.Expect(f => f.Authenticate()).Return(new AuthenticationInfo("access", "http://url")); var target = new SalesforceClient(restClient); target.Authenticate(flow); return(target); }
public void Constructor_NoArgs_DefaultValues() { var target = new SalesforceClient(); Assert.AreEqual("v28.0", target.ApiVersion); Assert.IsNull(target.InstanceUrl); Assert.IsFalse(target.IsAuthenticated); }
public void getPhoto() { if (photoUrl != null) { SalesforceClient client = GameObject.FindGameObjectWithTag("Salesforce").GetComponent <SalesforceClient>(); client.getChatterPhoto(photoUrl, this); } }
public void DeleteGroup() { foreach (string id in helper.GetIds()) { var request = new SalesforceRequest("group/" + id); RequestManager.Delete(SalesforceClient.GetInstance(), request); } }
private static async Task CreateExternalIdField(string objectName, string fieldName) { var salesforceClient = new SalesforceClient(); var loginResult = await salesforceClient.Login(_username, _password, _organizationId); await salesforceClient.CreateCustomField(objectName, fieldName, loginResult.SessionId, loginResult.MetadataServerUrl, true); }
public void GetRecordProjection_Result() { var jSonPropertyString = SalesforceClient.GetRecordProjection(typeof(TestJson)); Assert.IsTrue(jSonPropertyString.Contains("Id")); Assert.IsTrue(jSonPropertyString.Contains("JsonName")); Assert.IsFalse(jSonPropertyString.Contains("JsonIgnoreMe")); }
public void Setup() { _optionsConcreteSub = Substitute.For <SalesforceConnectorOptions>(); _messageServiceSub = Substitute.For <IHttpMessageService>(); _optionsSub = Substitute.For <IOptions <SalesforceConnectorOptions> >(); _optionsSub.Value.Returns(_optionsConcreteSub); _testedService = new SalesforceClient(_messageServiceSub, _optionsSub); }
public void DeleteAccount() { foreach (string id in helper.GetIds()) { var request = new SalesforceRequest($"Account/{id}"); RequestManager.Delete(SalesforceClient.GetInstance(), request); } }
public SalesforceStreamingService( ILogger <SalesforceStreamingService> logger, IApplicationLifetime appLifetime, IOptions <SalesforceConfig> sfOptions, SalesforceClient salesforceClient) { this.logger = logger; this.appLifetime = appLifetime; this.salesforceClient = salesforceClient; this.sfOptions = sfOptions.Value; }
public void Update_NullOrEmptyRecordId_Exception() { var target = new SalesforceClient(); ExceptionAssert.IsThrowing(new ArgumentException("Argument 'recordId' can't be empty.", "recordId"), () => { target.Update("TESTE", "", "TESTE"); }); }
public void Update_NullRecord_Exception() { var target = new SalesforceClient(); ExceptionAssert.IsThrowing(new ArgumentNullException("record"), () => { target.Update("TESTE", "TESTE", null); }); }
public void Create_NullOrEmptyObjectName_Exception() { var target = new SalesforceClient(); ExceptionAssert.IsThrowing(new ArgumentException("Argument 'objectName' can't be empty.", "objectName"), () => { target.Create("", "TESTE"); }); }
public void Authenticate_InvalidPassword_InvalidPassword() { var target = new SalesforceClient(); ExceptionAssert.IsThrowing(new SalesforceException(SalesforceError.InvalidPassword, "authentication failure - invalid password"), () => { target.Authenticate(CreateAuthenticationFlow(TestConfig.ClientId, TestConfig.ClientSecret, TestConfig.Username, "invalid password")); }); Assert.IsFalse(target.IsAuthenticated); }
public void Authenticate_InvalidClientSecret_InvalidClientSecret() { var target = new SalesforceClient(); ExceptionAssert.IsThrowing(new SalesforceException(SalesforceError.InvalidClient, "invalid client credentials"), () => { target.Authenticate(CreateAuthenticationFlow(TestConfig.ClientId, "invalid client secret", "invalid user name", TestConfig.Password)); }); Assert.IsFalse(target.IsAuthenticated); }
public void Publish_Package_InstalledAndRunning() { var clientId = ConfigHelper.ReadAppSetting ("SalesforceSharp.FunctionalTests", "ClientId"); var clientSecret = ConfigHelper.ReadAppSetting ("SalesforceSharp.FunctionalTests", "ClientSecret"); var username = ConfigHelper.ReadAppSetting ("SalesforceSharp.FunctionalTests", "Username"); var password = ConfigHelper.ReadAppSetting ("SalesforceSharp.FunctionalTests", "Password"); var flow = new UsernamePasswordAuthenticationFlow (clientId, clientSecret, username, password); var client = new SalesforceClient(); client.Authenticate (flow); var users = client.Query<UserStub> ("SELECT Username, Email FROM USER"); Assert.That (users.Count > 0); Assert.IsFalse (String.IsNullOrEmpty (users [0].Username)); Assert.IsFalse (String.IsNullOrEmpty (users [0].Email)); Assert.IsTrue (String.IsNullOrEmpty (users [0].Alias)); }
public void SalesforceClientAdd() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); var ticks = DateTime.UtcNow.Ticks; var contact = new Contact { LastName = "TestContact", FirstName = ticks.ToString(), Email = "testcontact+" + ticks + "@gmail.com" }; // Act var id = service.Add<Contact>(contact); // Assert Assert.NotNull(id); Assert.AreEqual(id, contact.Id); }
public void SalesforceClientAddAndDelete() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); var ticks = DateTime.UtcNow.Ticks; var contact = new { LastName = "TestContact", FirstName = ticks, Email = "testcontact+" + ticks + "@gmail.com" }; // Act var id = service.Add<Contact>(contact); // Assert Assert.NotNull(id); // Act service.Delete<Contact>(id); // Assert }
public void SalesforceClientAddAndDeleteAsync() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); var ticks = DateTime.UtcNow.Ticks; var contact = new { LastName = "TestContact", FirstName = ticks, Email = "testcontact+" + ticks + "@gmail.com" }; // Act var addResponse = service.AddAsync<Contact>(contact).Result; // Assert Assert.NotNull(addResponse.Id); // Act var response = service.DeleteAsync<Contact>(addResponse.Id).Result; // Assert Assert.AreEqual(HttpStatusCode.NoContent, response.StatusCode); }
public void SalesforceClientQueryFail() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); // Act // Assert var exception = Assert.Throws<SalesforceException>(() => service.Query<Account>("SELECT id, name from NonExistingTable")); Assert.AreEqual(HttpStatusCode.BadRequest, exception.StatusCode); }
public void SalesforceClientQueryAsync() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); // Act IList<Account> accounts = service.QueryAsync<Account>("SELECT id, name from Account").Result; // Assert Assert.NotNull(accounts); Assert.True(accounts.Count > 0); foreach (var account in accounts) { Console.WriteLine(account.Name); } }
public void SalesforceClientQueryAsyncFail() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); // Act // Assert var accounts = service.QueryAsync<Account>("SELECT id, name from NonExistingTable").Result; Assert.IsNull(accounts); }
public void SalesforceClientUpdateValidatesNullId() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); // Act // Assert Assert.Throws<ArgumentNullException>(() => service.Update<Account>(new Account(), null)); }
public void SalesforceClientConstructorFails() { // Arrange // Act var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken + "Wrong"); // Assert Assert.Null(service.AccessToken); }
public void SalesforceClientUpdateAsyncNonExistingObject() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); // Act // Assert var response = service.UpdateAsync<Contact>(new {Description = Guid.NewGuid()}, "InvalidID").Result; Assert.AreEqual(HttpStatusCode.NotFound, response.StatusCode); }
public void SalesforceClientUpdateExistingObject() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); Contact contact = service.Get<Contact>(ContactId); var updateContact = new {Description = Guid.NewGuid().ToString()}; // Act service.Update<Contact>(updateContact, contact.Id); // Assert contact = service.Get<Contact>(ContactId); Assert.AreEqual(updateContact.Description, contact.Description); }
public void SalesforceClientDescribeValidatesNull() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); // Act // Assert Assert.Throws<ArgumentNullException>(() => service.Describe(null)); }
public void SalesforceClientGetAsyncNonExistingObject() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); // Act // Assert var contact = service.GetAsync<Contact>("003iiiiiiiiiiiii").Result; Assert.IsNull(contact); }
public void SalesforceClientDescribeFails() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); // Act // Assert var exception = Assert.Throws<SalesforceException>(() => service.Describe("AccountError")); Assert.AreEqual(HttpStatusCode.NotFound, exception.StatusCode); }
public void SalesforceClientDescribeGlobalAsync() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); // Act var response = service.DescribeGlobalAsync().Result; // Assert Assert.IsNotNull(response); Assert.NotNull(response.SObjects); Assert.True(response.SObjects.Count > 0); Assert.IsNotNull(response.SObjects[0].Urls); Console.WriteLine(response.Encoding); Console.WriteLine(response.MaxBatchSize); Console.WriteLine(response.SObjects[0].Name); }
public void SalesforceClientDescribeAsyncFails() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); // Act // Assert var result = service.DescribeAsync("AccountError").Result; Assert.IsNull(result); }
public void SalesforceClientDescribeAsync() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); // Act var response = service.DescribeAsync("Account").Result; // Assert Assert.IsNotNull(response); Assert.IsNotNull(response.Fields); Assert.IsNotNull(response.Urls); Assert.IsNotNull(response.ChildRelationships); Console.WriteLine(response.Name); Console.WriteLine(response.Undeletable); Console.WriteLine(response.Fields.Count); Console.WriteLine(response.Urls.Describe); }
public void SalesforceClientDeleteAsyncFails() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); // Act // Assert var response = service.DeleteAsync<Contact>("BadId").Result; Assert.AreEqual(HttpStatusCode.NotFound, response.StatusCode); }
public void SalesforceClientUpdateAsyncEntireObject() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); var contact = new Contact {Id = ContactId, Description = Guid.NewGuid().ToString()}; // Act var response = service.UpdateAsync<Contact>(contact).Result; // Assert Assert.AreEqual(HttpStatusCode.NoContent, response.StatusCode); }
public void SalesforceClientGetExistingObject() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); // Act Contact contact = service.Get<Contact>(ContactId); // Assert Assert.NotNull(contact); Assert.AreEqual(ContactId, contact.Id); }
public void SalesforceClientUpdateAsyncExistingObject() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); Contact contact = service.Get<Contact>(ContactId); var updateContact = new {Description = Guid.NewGuid().ToString()}; // Act var response = service.UpdateAsync<Contact>(updateContact, contact.Id).Result; // Assert Assert.AreEqual(HttpStatusCode.NoContent, response.StatusCode); }
public void SalesforceClientGetNonExistingObject() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); // Act // Assert var exception = Assert.Throws<SalesforceException>(() => service.Get<Contact>("003iiiiiiiiiiiii")); Assert.AreEqual(HttpStatusCode.NotFound, exception.StatusCode); }
public void SalesforceClientUpdateEntireObject() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); var contact = new Contact {Id = ContactId, Description = Guid.NewGuid().ToString()}; // Act service.Update<Contact>(contact); // Assert var updatedContact = service.Get<Contact>(ContactId); Assert.AreEqual(contact.Description, updatedContact.Description); }
public void SalesforceClientUpdateNonExistingObject() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); // Act // Assert var exception = Assert.Throws<SalesforceException>( () => service.Update<Contact>(new {Description = Guid.NewGuid()}, "InvalidID")); Assert.AreEqual(HttpStatusCode.NotFound, exception.StatusCode); }
public void SalesforceClientGetVersionsAsync() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); // Act IList<ApiVersion> versions = service.GetVersionsAsync().Result; // Assert Assert.IsNotNull(versions); Assert.True(versions.Count > 0); foreach (var version in versions) { Console.WriteLine(version.Version); } }
public void SalesforceClientAddAsyncFails() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); var ticks = DateTime.UtcNow.Ticks; var contact = new { NonExistingField = "TestContact", FirstName = ticks, Email = "testcontact+" + ticks + "@gmail.com" }; // Act // Assert var id = service.AddAsync<Contact>(contact).Result; Assert.IsNull(id); }
public void SalesforceClientAddFails() { // Arrange var service = new SalesforceClient(ConsumerKey, ConsumerSecret, RefreshToken); var ticks = DateTime.UtcNow.Ticks; var contact = new { NonExistingField = "TestContact", FirstName = ticks, Email = "testcontact+" + ticks + "@gmail.com" }; // Act // Assert var exception = Assert.Throws<SalesforceException>(() => service.Add<Contact>(contact)); Assert.AreEqual(HttpStatusCode.BadRequest, exception.StatusCode); }