public void Matches_SqlQueryAndMembers_Succesful() { var sql = "select " + "'Executive General and Administration' union select " + "'Inventory Management' union select " + "'Manufacturing' union select " + "'Research and Development' union select " + "'Quality Assurance' union select " + "'Sales and Marketing' "; var args = new QueryResultSetResolverArgs(new QueryResolverArgs(sql, ConnectionStringReader.GetSqlClient(), null, null, new TimeSpan(0, 0, 30), System.Data.CommandType.Text)); var factory = new ResultSetResolverFactory(new ServiceLocator()); var resolver = factory.Instantiate(args); var discovery = new DiscoveryRequestFactory().Build( ConnectionStringReader.GetAdomd() , "Corporate" , "Adventure Works" , "Department" , "Departments" , null); var ctr = new EquivalentToConstraint(resolver); Assert.That(discovery, ctr); }
protected ResultSet GetResultSet(IQuery query) { var argsQuery = new QueryResolverArgs(query.Statement, query.ConnectionString, query.Parameters, query.TemplateTokens, query.Timeout, query.CommandType); var args = new QueryResultSetResolverArgs(argsQuery); var factory = new ResultSetResolverFactory(null); var resolver = factory.Instantiate(args); return(resolver.Execute()); }
public T Execute() { var factory = new ResultSetResolverFactory(); var resolver = factory.Instantiate(args.ResultSetArgs); var resultSet = resolver.Execute(); var projectionResult = args.Projection(resultSet); return((T)Convert.ChangeType(projectionResult, typeof(T))); }
protected ResultSet GetResultSet(Object obj) { if (!(obj is IDbCommand)) { throw new ArgumentException(); } var args = new QueryResultSetResolverArgs(new DbCommandQueryResolverArgs((IDbCommand)obj)); var factory = new ResultSetResolverFactory(); var resolver = factory.Instantiate(args); return(resolver.Execute()); }
protected virtual IResultSetResolver InstantiateResolver(ResultSetSystemXml resultSetXml) { var argsBuilder = new ResultSetResolverArgsBuilder(); argsBuilder.Setup(resultSetXml); argsBuilder.Setup(resultSetXml.Settings); argsBuilder.Setup(base.Variables); argsBuilder.Build(); var factory = new ResultSetResolverFactory(); var resolver = factory.Instantiate(argsBuilder.GetArgs()); return(resolver); }
public void Instantiate_OneSequence_CorrectType() { var sequenceResolver = new ListSequenceResolver <DateTime>( new ListSequenceResolverArgs(new[] { new LiteralScalarResolver <string>("2015-01-01"), new LiteralScalarResolver <string>("2016-01-01"), new LiteralScalarResolver <string>("2017-01-01"), }) ); var args = new SequenceCombinationResultSetResolverArgs(new[] { sequenceResolver }); var factory = new ResultSetResolverFactory(new ServiceLocator()); var resolver = factory.Instantiate(args); Assert.That(resolver, Is.TypeOf <SequenceCombinationResultSetResolver>()); }
protected virtual IResultSetService InstantiateSystemUnderTest(ExecutionXml executionXml) { var commandBuilder = new CommandBuilder(); var connectionString = executionXml.Item.GetConnectionString(); var commandText = (executionXml.Item as QueryableXml).GetQuery(); IEnumerable <IQueryParameter> parameters = null; IEnumerable <IQueryTemplateVariable> variables = null; int timeout = 0; if (executionXml.BaseItem is QueryXml) { var paramBuilder = new QueryResolverArgsBuilder(); parameters = paramBuilder.BuildParameters(((QueryXml)executionXml.BaseItem).GetParameters()); variables = ((QueryXml)executionXml.BaseItem).GetVariables(); timeout = ((QueryXml)executionXml.BaseItem).Timeout; } if (executionXml.BaseItem is ReportXml) { var paramBuilder = new QueryResolverArgsBuilder(); parameters = paramBuilder.BuildParameters(((ReportXml)executionXml.BaseItem).GetParameters()); } var cmd = commandBuilder.Build(connectionString, commandText, parameters, variables, timeout); if (executionXml.BaseItem is ReportXml) { cmd.CommandType = ((ReportXml)executionXml.BaseItem).GetCommandType(); } var args = new QueryResultSetResolverArgs(new DbCommandQueryResolverArgs(cmd)); var factory = new ResultSetResolverFactory(); var resolver = factory.Instantiate(args); var builder = new ResultSetServiceBuilder(); builder.Setup(resolver); var service = builder.GetService(); return(service); }
protected override BaseResultSetComparisonConstraint InstantiateConstraint(object obj, SettingsXml settings, TransformationProvider transformation) { var argsBuilder = new ResultSetResolverArgsBuilder(); argsBuilder.Setup(obj); argsBuilder.Build(); var factory = new ResultSetResolverFactory(); var resolver = factory.Instantiate(argsBuilder.GetArgs()); var builder = new ResultSetServiceBuilder(); builder.Setup(resolver); if (transformation != null) { builder.Setup(transformation.Transform); } var service = builder.GetService(); return(new SupersetOfConstraint(service)); }
protected IEnumerable <string> GetMembersFromResultSet(Object obj) { if (!(obj is IDbCommand)) { throw new ArgumentException(); } var args = new QueryResultSetResolverArgs(new DbCommandQueryResolverArgs((IDbCommand)obj)); var factory = new ResultSetResolverFactory(); var resolver = factory.Instantiate(args); var rs = resolver.Execute(); var members = new List <string>(); foreach (DataRow row in rs.Rows) { members.Add(row.ItemArray[0].ToString()); } return(members); }
public ProjectionResultSetScalarResolver(ProjectionResultSetScalarResolverArgs args, ResultSetResolverFactory factory) { this.args = args; this.factory = factory; }