/// <summary> /// Handles external language delete request /// </summary> /// <param name="parameters">Request parameters</param> /// <param name="requestContext">Request Context</param> /// <returns></returns> public async Task HandleExternalLanguageUpdateRequest(ExternalLanguageUpdateRequestParams parameters, RequestContext <ExternalLanguageUpdateResponseParams> requestContext) { Logger.Write(TraceEventType.Verbose, "HandleExternalLanguageUpdateRequest"); try { ConnectionInfo connInfo; ConnectionServiceInstance.TryFindConnection( parameters.OwnerUri, out connInfo); ExternalLanguageUpdateResponseParams response = new ExternalLanguageUpdateResponseParams { }; if (connInfo == null) { await requestContext.SendError(new Exception(SR.ConnectionServiceDbErrorDefaultNotConnected(parameters.OwnerUri))); } else { using (IDbConnection dbConnection = ConnectionService.OpenSqlConnection(connInfo)) { ExternalLanguageOperations.UpdateLanguage(dbConnection, parameters.Language); } await requestContext.SendResult(response); } } catch (Exception e) { // Exception related to run task will be captured here await requestContext.SendError(e); } }
public async void VerifyExternalLanguageUpdateRequestFailures() { ExternalLanguage language = new ExternalLanguage { Name = "name" }; Mock <ExternalLanguageOperations> operations = new Mock <ExternalLanguageOperations>(); operations.Setup(x => x.UpdateLanguage(It.IsAny <IDbConnection>(), language)).Throws(new Exception("Error")); ExternalLanguageService service = new ExternalLanguageService() { ExternalLanguageOperations = operations.Object }; await VerifyError <ExternalLanguageUpdateResponseParams>( test : async(requestContext, connectionUrl) => { ExternalLanguageUpdateRequestParams requestParams = new ExternalLanguageUpdateRequestParams { OwnerUri = connectionUrl, Language = language }; await service.HandleExternalLanguageUpdateRequest(requestParams, requestContext); return(null); }); }
public async void VerifyExternalLanguageUpdateRequest() { ExternalLanguage language = new ExternalLanguage { Name = "name" }; Mock <ExternalLanguageOperations> operations = new Mock <ExternalLanguageOperations>(); operations.Setup(x => x.UpdateLanguage(It.IsAny <IDbConnection>(), language)); ExternalLanguageService service = new ExternalLanguageService() { ExternalLanguageOperations = operations.Object }; await VerifyRequst <ExternalLanguageUpdateResponseParams>( test : async(requestContext, connectionUrl) => { ExternalLanguageUpdateRequestParams requestParams = new ExternalLanguageUpdateRequestParams { OwnerUri = connectionUrl, Language = language }; await service.HandleExternalLanguageUpdateRequest(requestParams, requestContext); return(null); }, verify : (actual => { Assert.NotNull(actual); })); }
public async void VerifyExternalLanguageUpdateRequestConnectionFailures() { ExternalLanguage language = new ExternalLanguage { Name = "name" }; Mock <ExternalLanguageOperations> operations = new Mock <ExternalLanguageOperations>(); ExternalLanguageService service = new ExternalLanguageService() { ExternalLanguageOperations = operations.Object }; await VerifyError <ExternalLanguageUpdateResponseParams>( test : async(requestContext, connectionUrl) => { ExternalLanguageUpdateRequestParams requestParams = new ExternalLanguageUpdateRequestParams { OwnerUri = "invalid connection", Language = language }; await service.HandleExternalLanguageUpdateRequest(requestParams, requestContext); return(null); }); }