public async Task ShouldReturnXmlString() { var q = new QueryProperties { Query = @"select * from HodorTest" }; var o = new OutputProperties { ReturnType = QueryReturnType.Xml, XmlOutput = new XmlOutputProperties { RootElementName = "items", RowElementName = "item" } }; var options = new Options { ThrowErrorOnFailure = true }; Output result = await QueryTask.Query(q, o, _conn, options, new CancellationToken()); Assert.AreEqual(@"<?xml version=""1.0"" encoding=""utf-16""?> <items> <item> <NAME>hodor</NAME> <VALUE>123</VALUE> </item> <item> <NAME>jon</NAME> <VALUE>321</VALUE> </item> </items>", result.Result); }
public async Task ShouldReturnJsonString() { var q = new QueryProperties { Query = @"select name as ""name"", value as ""value"" from HodorTest" }; var o = new OutputProperties { ReturnType = QueryReturnType.Json, JsonOutput = new JsonOutputProperties(), OutputToFile = false }; var options = new Options { ThrowErrorOnFailure = true }; Output result = await QueryTask.Query(q, o, _conn, options, new CancellationToken()); Assert.IsTrue(string.Equals(result.Result, @"[ { ""name"": ""hodor"", ""value"": 123 }, { ""name"": ""jon"", ""value"": 321 } ]")); }
public async Task ExecuteOracleSelect() { QueryParameter[] qpList = new QueryParameter[1]; qpList[0] = new QueryParameter { Name = "DESC", Value = "unit test text", DataType = QueryParameterType.Text }; var input = new QueryProperties { Query = "SELECT * FROM TestTable WHERE textField LIKE :DESC", Parameters = qpList }; var conn = new ConnectionProperties { Address = Address, Username = Username, Password = Password }; var output = new OutputProperties { CultureInfo = null, OutputToFile = false }; var result = await IFSAccessProvider.Query(input, output, conn, new CancellationToken()); Assert.Equal("Command executed", result.Result); }
public async Task IsolationTest1() { var q = new QueryProperties { Query = "select * from InsertTest", ConnectionString = ConnectionString }; var o = new QueryOutputProperties { ReturnType = QueryReturnType.Csv, CsvOutput = new CsvOutputProperties { CsvSeparator = ";", IncludeHeaders = true }, OutputToFile = false, }; var options = new QueryOptions { ThrowErrorOnFailure = true, IsolationLevel = Oracle_IsolationLevel.ReadCommitted }; var result = await OracleTasks.ExecuteQueryOracle(q, o, options, new CancellationToken()); Assert.AreEqual(result.Result, "NAME;SENDSTATUS\r\nHan_1;0\r\n"); }
public async Task ShouldWriteJsonFile() { var q = new QueryProperties { Query = @"select name as ""name"", value as ""value"" from HodorTest", ConnectionString = ConnectionString }; var o = new QueryOutputProperties { ReturnType = QueryReturnType.Json, JsonOutput = new JsonOutputProperties(), OutputToFile = true, OutputFile = new OutputFileProperties { Path = Path.Combine(outputDirectory, Guid.NewGuid().ToString() + ".json") } }; var options = new QueryOptions { ThrowErrorOnFailure = true }; var result = await OracleTasks.ExecuteQueryOracle(q, o, options, new CancellationToken()); Assert.IsTrue(File.Exists(result.Result), "should have created json outputfile"); var expected = File.ReadAllText(Path.Combine(expectedFileDirectory, "ExpectedJson.json")); Assert.AreEqual(expected, File.ReadAllText(result.Result)); File.Delete(result.Result); }
// public string LatestDataDragonVersion { get; private set; } public MainWindowViewModel(FileManager files, RequestManager requests, SettingsManager settingsManager, ReplayPlayer player, RiZhi log) { SettingsManager = settingsManager ?? throw new ArgumentNullException(nameof(settingsManager)); _fileManager = files ?? throw new ArgumentNullException(nameof(files)); _log = log ?? throw new ArgumentNullException(nameof(log)); _player = player ?? throw new ArgumentNullException(nameof(player)); RequestManager = requests ?? throw new ArgumentNullException(nameof(requests)); KnownPlayers = SettingsManager.Settings.KnownPlayers; PreviewReplays = new ObservableCollection <ReplayPreview>(); FileResults = new Dictionary <string, FileResult>(); SortParameters = new QueryProperties { SearchTerm = String.Empty, SortMethod = SortMethod.DateDesc }; StatusBarModel = new StatusBar(); // By default we do not want to delete our cache ClearItemsCacheOnClose = false; ClearChampsCacheOnClose = false; ClearReplayCacheOnClose = false; }
public async Task ShouldWriteCsvFile() { var q = new QueryProperties { Query = "select * from HodorTest" }; var o = new OutputProperties { ReturnType = QueryReturnType.Csv, CsvOutput = new CsvOutputProperties { CsvSeparator = ";", IncludeHeaders = true }, OutputToFile = true, OutputFile = new OutputFileProperties { Path = Path.Combine(Directory.GetCurrentDirectory(), Guid.NewGuid().ToString() + ".csv") } }; var options = new Options { ThrowErrorOnFailure = true }; Output result = await QueryTask.Query(q, o, _conn, options, new CancellationToken()); Assert.IsTrue(File.Exists(result.Result), "should have created csv output file"); File.Delete(result.Result); }
public async Task ShouldWriteJsonFile() { var q = new QueryProperties { Query = @"select name as ""name"", value as ""value"" from HodorTest" }; var o = new OutputProperties { ReturnType = QueryReturnType.Json, JsonOutput = new JsonOutputProperties(), OutputToFile = true, OutputFile = new OutputFileProperties { Path = Path.Combine(Directory.GetCurrentDirectory(), Guid.NewGuid().ToString() + ".json") } }; var options = new Options { ThrowErrorOnFailure = true }; Output result = await QueryTask.Query(q, o, _conn, options, new CancellationToken()); Assert.IsTrue(File.Exists(result.Result), "should have created json outputfile"); Assert.AreEqual(@"[ { ""name"": ""hodor"", ""value"": 123 }, { ""name"": ""jon"", ""value"": 321 } ]", File.ReadAllText(result.Result)); File.Delete(result.Result); }
/// <summary> /// Add new query property to query properties list. /// <param name="key">Anniversary entity schema name.</param> /// <param name="value">The property determines type of the decoration.</param> /// <example>AddQueryProperty("Contact", "Participant")</example> /// </summary> protected void AddQueryProperty(string key, string value) { if (QueryProperties.Any(pair => pair.Key == key && pair.Value == value)) { return; } QueryProperties.Add(new KeyValuePair <string, string>(key, value)); }
public async Task MultiBatchOperationInsertTest() { var inputbatch = new InputMultiBatchOperation { BatchQueries = new BatchOperationQuery[] { new BatchOperationQuery { BatchInputQuery = @"delete from batch_table_test", InputJson = "" }, new BatchOperationQuery { BatchInputQuery = @"insert into batch_table_test (NR,NAM)values(:NR,:NAM)", InputJson = "[{\"NR\": 111, \"NAM\":\"nannaa1\"},{\"NR\":222, \"NAM\":\"nannaa2\"},{\"NR\":333, \"NAM\":\"nannaa3\"}, {\"NR\":444, \"NAM\":\"nannaa4\"}]" }, new BatchOperationQuery { BatchInputQuery = @"insert into batch_table_test (NR,NAM)values(:NR,:NAM)", InputJson = "[{\"NR\": 555, \"NAM\":\"nannaa1\"},{\"NR\":666, \"NAM\":\"nannaa2\"}]" } }, ConnectionString = ConnectionString }; var options = new BatchOptions { ThrowErrorOnFailure = true, IsolationLevel = Oracle_IsolationLevel.Serializable }; MultiBatchOperationOutput output; try { output = await OracleTasks.MultiBatchOperationOracle(inputbatch, options, new CancellationToken()); } catch (Exception ee) { throw ee; } var o = new QueryOutputProperties { ReturnType = QueryReturnType.Json, JsonOutput = new JsonOutputProperties(), OutputToFile = false }; var q2 = new QueryProperties { Query = @"select count(*) as ROWCOUNT from batch_table_test", ConnectionString = ConnectionString }; var options_2 = new QueryOptions(); options.ThrowErrorOnFailure = true; options.IsolationLevel = Oracle_IsolationLevel.Serializable; var result_debug = await OracleTasks.ExecuteQueryOracle(q2, o, options_2, new CancellationToken()); Assert.AreEqual(result_debug.Result, "[\r\n {\r\n \"ROWCOUNT\": 6.0\r\n }\r\n]"); }
public async Task BatchOperationInsertTest() { //t(NR varchar(20), NAM varchar(20))", var inputbatch = new InputBatchOperation { Query = @"BEGIN insert into batch_table_test (NR,NAM)values(:NR,:NAM); END;", InputJson = "[{\"NR\": 111, \"NAM\":\"nannaa1\"},{\"NR\":222, \"NAM\":\"nannaa2\"},{\"NR\":333, \"NAM\":\"nannaa3\"}, {\"NR\":444, \"NAM\":\"nannaa4\"}]", ConnectionString = ConnectionString }; var options = new BatchOptions { ThrowErrorOnFailure = true, IsolationLevel = Oracle_IsolationLevel.Serializable }; BatchOperationOutput batch_output; try { batch_output = await OracleTasks.BatchOperationOracle(inputbatch, options, new CancellationToken()); } catch (Exception ee) { throw ee; } // ExecuteQueryOracle rows from db, should be 2. var o = new QueryOutputProperties { ReturnType = QueryReturnType.Csv, CsvOutput = new CsvOutputProperties { CsvSeparator = ";", IncludeHeaders = true }, OutputToFile = false, }; var q2 = new QueryProperties { Query = @"select count(*) as ROWCOUNT from batch_table_test", ConnectionString = ConnectionString }; var options_2 = new QueryOptions(); options.ThrowErrorOnFailure = true; options.IsolationLevel = Oracle_IsolationLevel.Serializable; var result_debug = await OracleTasks.ExecuteQueryOracle(q2, o, options_2, new CancellationToken()); Assert.AreEqual("ROWCOUNT\r\n4\r\n", result_debug.Result); }
public static void Write(this QueryProperties queryProperties, CSideWriter writer) { writer.BeginSection("PROPERTIES"); var relevantProperties = queryProperties.Where(p => p.HasValue); foreach (Property property in relevantProperties) { var isLastProperty = (property == relevantProperties.Last()); property.Write(isLastProperty, PropertiesStyle.Object, writer); } writer.EndSection(); }
public async Task RollBackTest_1() { var q = new QueryProperties { Query = @" BEGIN insert into duplicate_inserttest_table (po_nr)values ('1'); insert into duplicate_inserttest_table2 (po_nr)values ('2'); insert into duplicate_inserttest_table2 (po_nr)values ('2'); END;", ConnectionString = ConnectionString }; var o = new QueryOutputProperties { ReturnType = QueryReturnType.Csv, CsvOutput = new CsvOutputProperties { CsvSeparator = ";", IncludeHeaders = true }, OutputToFile = false, }; var options = new QueryOptions { ThrowErrorOnFailure = true, IsolationLevel = Oracle_IsolationLevel.None }; var result = new Output(); var result_debug = new Output(); var ex_string = ""; try { result = await OracleTasks.ExecuteQueryOracle(q, o, options, new CancellationToken()); } catch (Exception ee) { ex_string = ee.ToString(); var q2 = new QueryProperties { Query = @"select * from duplicate_inserttest_table", ConnectionString = ConnectionString }; result_debug = await OracleTasks.ExecuteQueryOracle(q2, o, options, new CancellationToken()); } Assert.AreEqual(ex_string.Contains("ORA-00001: unique constraint"), true); Assert.AreEqual(result.Success, false); Assert.AreEqual(result_debug.Result, ""); }
public IReadOnlyCollection <FileResult> GetReplays(QueryProperties sort, int maxEntries, int skip) { if (sort == null) { throw new ArgumentNullException(nameof(sort)); } var keywords = sort.SearchTerm.Split('"') // split the string by quotes .Select((element, index) => // select the substring, and the index of the substring index % 2 == 0 // If the index is even (after a close quote) ? element.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries) // split by space : new string[] { element }) // return the string enclosed by quotes .SelectMany(element => element).ToArray(); return(_db.QueryReplayFiles(keywords, sort.SortMethod, maxEntries, skip)); }
public void SetItem(IQueryableDataItem queryItem) { QueryProperties.Clear(); foreach (IQueryableProperty q in queryItem.QueryableProperties.Where(x => x.IsSelected)) { QueryProperty qp = new QueryProperty(); qp.FilterOperator = q.FilterOperator; qp.FilterValue = q.FilterValue; qp.IsFiltering = q.IsFiltering; qp.IsSelected = q.IsSelected; qp.IsReturning = q.IsReturning; qp.Format = q.Format; qp.ColumnOrder = q.ColumnOrder; qp.Name = q.Name; qp.ColumnHeader = q.ColumnHeader; QueryProperties.Add(qp); } }
public async Task QueryDatabaseJSON() { var queryProperties = new QueryProperties { Query = "SELECT * FROM DecimalTest" }; var outputProperties = new OutputProperties { ReturnType = QueryReturnType.Json, JsonOutput = new JsonOutputProperties() }; var options = new Options { ThrowErrorOnFailure = true }; Output result = await QueryTask.Query(queryProperties, outputProperties, _conn, options, new CancellationToken()); Assert.AreNotEqual("", result.Result); Assert.AreEqual(true, result.Success); }
public async Task QueryDatabaseJSON() { var queryProperties = new QueryProperties { Query = "SELECT * FROM DecimalTest", ConnectionString = ConnectionString }; var outputProperties = new QueryOutputProperties { ReturnType = QueryReturnType.Json, JsonOutput = new JsonOutputProperties() }; var options = new QueryOptions { ThrowErrorOnFailure = true }; var result = await OracleTasks.ExecuteQueryOracle(queryProperties, outputProperties, options, new CancellationToken()); Assert.AreNotEqual("", result.Result); Assert.AreEqual(true, result.Success); }
public async Task ShouldWriteXmlFile() { var q = new QueryProperties { Query = @"select name as ""name"", value as ""value"" from HodorTest" }; var o = new OutputProperties { ReturnType = QueryReturnType.Xml, XmlOutput = new XmlOutputProperties { RootElementName = "items", RowElementName = "item" }, OutputToFile = true, OutputFile = new OutputFileProperties { Path = Path.Combine(Directory.GetCurrentDirectory(), Guid.NewGuid().ToString() + ".xml") } }; var options = new Options { ThrowErrorOnFailure = true }; Output result = await QueryTask.Query(q, o, _conn, options, new CancellationToken()); Assert.IsTrue(File.Exists(result.Result), "should have created xml output file"); Assert.AreEqual( @"<?xml version=""1.0"" encoding=""utf-8""?> <items> <item> <name>hodor</name> <value>123</value> </item> <item> <name>jon</name> <value>321</value> </item> </items>", File.ReadAllText(result.Result)); File.Delete(result.Result); }
public async Task ShouldReturnJsonString() { var q = new QueryProperties { Query = @"select name as ""name"", value as ""value"" from HodorTest", ConnectionString = ConnectionString }; var o = new QueryOutputProperties { ReturnType = QueryReturnType.Json, JsonOutput = new JsonOutputProperties(), OutputToFile = false }; var options = new QueryOptions { ThrowErrorOnFailure = true }; var result = await OracleTasks.ExecuteQueryOracle(q, o, options, new CancellationToken()); var expected = File.ReadAllText(Path.Combine(expectedFileDirectory, "ExpectedJson.json")); Assert.AreEqual(expected, result.Result); }
public MainWindowViewModel(FileManager files, RequestManager requests, SettingsManager settingsManager, RiZhi log) { SettingsManager = settingsManager ?? throw new ArgumentNullException(nameof(settingsManager)); _fileManager = files ?? throw new ArgumentNullException(nameof(files)); _log = log ?? throw new ArgumentNullException(nameof(log)); RequestManager = requests ?? throw new ArgumentNullException(nameof(requests)); KnownPlayers = SettingsManager.Settings.KnownPlayers; PreviewReplays = new ObservableCollection <ReplayPreview>(); FileResults = new Dictionary <string, FileResult>(); SortParameters = new QueryProperties { SearchTerm = String.Empty, SortMethod = SortMethod.DateDesc }; StatusBarModel = new StatusBar(); }
public async Task ShouldReturnCsvString() { var q = new QueryProperties { Query = @"select name as ""name"", value as ""value"" from HodorTest" }; var o = new OutputProperties { ReturnType = QueryReturnType.Csv, CsvOutput = new CsvOutputProperties { CsvSeparator = ";", IncludeHeaders = true } }; var options = new Options { ThrowErrorOnFailure = true }; Output result = await QueryTask.Query(q, o, _conn, options, new CancellationToken()); StringAssert.IsMatch(result.Result, "name;value\r\nhodor;123\r\njon;321\r\n"); }
public async Task ShouldReturnXmlString() { var q = new QueryProperties { Query = @"select * from HodorTest", ConnectionString = ConnectionString }; var o = new QueryOutputProperties { ReturnType = QueryReturnType.Xml, XmlOutput = new XmlOutputProperties { RootElementName = "items", RowElementName = "item" } }; var options = new QueryOptions { ThrowErrorOnFailure = true }; var result = await OracleTasks.ExecuteQueryOracle(q, o, options, new CancellationToken()); var expected = File.ReadAllText(Path.Combine(expectedFileDirectory, "ExpectedUtf16Xml.xml")); Assert.AreEqual(expected, result.Result); }
internal QueryPropertiesPredicate(object queryObject, QueryProperties attribute) : base(queryObject) => _attribute = attribute;
public bool ShouldSerializePageImagesProperty() { return(QueryProperties.Contains("pageimages")); }
public bool ShouldSerializeRevisionSection() { return(QueryProperties.Contains("revisions")); }
private void ClearOAuthToken(string tokenName) { Headers.Values.Remove(tokenName); QueryProperties.Remove(tokenName); BodyProperties.Remove(tokenName); }