public void CanCreateSDKObjectFromPowershellObject() { var sqoopJobDefinition = new AzureHDInsightSqoopJobDefinition { Command = "Import into sqlserver", File = "http://myfileshare.txt", StatusFolder = Guid.NewGuid().ToString(), }; sqoopJobDefinition.Arguments.Add("arg1"); sqoopJobDefinition.Files.Add("file1.sqoop"); SqoopJobCreateParameters sdkObject = sqoopJobDefinition.ToSqoopJobCreateParameters(); Assert.AreEqual(sqoopJobDefinition.StatusFolder, sdkObject.StatusFolder); Assert.AreEqual(sqoopJobDefinition.File, sdkObject.File); Assert.AreEqual(sqoopJobDefinition.Command, sdkObject.Command); foreach (string file in sqoopJobDefinition.Files) { Assert.IsTrue(sdkObject.Files.Contains(file), file); } }
public void CanStartSqoopJob() { var sqoopJobDefinition = new AzureHDInsightSqoopJobDefinition { Command = "show tables;" }; TestJobStart(sqoopJobDefinition); }
public void CannotStartSqoopJob_WithRestrictedCharacters() { var sqoopJobDefinition = new AzureHDInsightSqoopJobDefinition { Command = "show tables; %" }; try { TestJobStart(sqoopJobDefinition); Assert.Fail(); } catch (AggregateException aggregateException) { var invalidOperationException = aggregateException.GetBaseException() as InvalidOperationException; Assert.IsNotNull(invalidOperationException); Assert.AreEqual("Command text contains restricted character '%', please upload the query to a file in storage and re-submit the job using the -File parameter", invalidOperationException.Message); } }
public void CannotStartSqoopJob_WithRestrictedCharacters() { var sqoopJobDefinition = new AzureHDInsightSqoopJobDefinition { Command = "show tables; %" }; try { TestJobStart(sqoopJobDefinition); Assert.Fail(); } catch (AggregateException aggregateException) { var invalidOperationException = aggregateException.GetBaseException() as InvalidOperationException; Assert.IsNotNull(invalidOperationException); Assert.IsTrue(invalidOperationException.Message.Contains("Query contains restricted character :'%'"), "Exception not thrown for special character"); } }