public void Apply_Variable_CorrectResult() { var service = new ObjectsResultSetResolver( new ObjectsResultSetResolverArgs( new object[] { new List <object>() { "(null)", 10, 100 }, new List <object>() { "(empty)", 2, 75 }, new List <object>() { "C", 5, 50 } })); var rs = service.Execute(); var aliases = new[] { Mock.Of <IColumnAlias>(v => v.Column == 0 && v.Name == "a") }; var predicate = new Mock <IPredicateInfo>(); predicate.SetupGet(p => p.ColumnType).Returns(ColumnType.Text); predicate.SetupGet(p => p.ComparerType).Returns(ComparerType.NullOrEmpty); predicate.SetupGet(p => p.Operand).Returns(new ColumnNameIdentifier("a")); var factory = new ResultSetFilterFactory(null); var filter = factory.Instantiate(aliases, new IColumnExpression[0], predicate.Object); var result = filter.Apply(rs); Assert.That(result.Rows, Has.Count.EqualTo(2)); }
public void Matches_MdxQueryAndResulSetWithCorrectSettings_Matching() { //Buiding object used during test var objs = new List <object[]>() { new object[] { "CY 2005", "1874469.00" }, new object[] { "CY 2006", "4511243.0" }, new object[] { "CY 2007", "4709851" }, new object[] { "CY 2008", "1513940" } }; var resolver = new ObjectsResultSetResolver(new ObjectsResultSetResolverArgs(objs.ToArray())); var builder = new ResultSetServiceBuilder(); builder.Setup(resolver); var ctr = new EqualToConstraint(builder.GetService()); ctr.Using(new SettingsOrdinalResultSet( SettingsOrdinalResultSet.KeysChoice.First, SettingsOrdinalResultSet.ValuesChoice.Last, new NumericAbsoluteTolerance(500, SideTolerance.Both) ) ); var mdx = "SELECT [Measures].[Amount] ON 0, NON EMPTY([Date].[Calendar].[Calendar Year]) ON 1 FROM [Adventure Works]"; var query = new NBi.Core.Query.Query(mdx, ConnectionStringReader.GetAdomd()); var actualBuilder = new ResultSetServiceBuilder(); actualBuilder.Setup(new FakeQueryResultSetResolver(query, serviceLocator)); var actual = actualBuilder.GetService(); //Assertion Assert.That(ctr.Matches(actual)); }
public void Execute_StandardRsColumnName_CorrectExtension() { var args = new ObjectsResultSetResolverArgs(new[] { new object[] { "Alpha", 1, 2 }, new object[] { "Beta", 3, 2 }, new object[] { "Gamma", 5, 7 } }); var resolver = new ObjectsResultSetResolver(args); var rs = resolver.Execute(); rs.Columns[0].ColumnName = "a"; rs.Columns[1].ColumnName = "b"; rs.Columns[2].ColumnName = "c"; var extender = new NativeExtendEngine( new ServiceLocator(), new Context(null), new ColumnNameIdentifier("d"), "[a] | text-to-first-chars([c]) | text-to-upper" ); var newRs = extender.Execute(rs); Assert.That(newRs.Columns.Count, Is.EqualTo(4)); Assert.That(newRs.Columns[3].ColumnName, Is.EqualTo("d")); Assert.That(newRs.Rows[0][3], Is.EqualTo("AL")); Assert.That(newRs.Rows[1][3], Is.EqualTo("BE")); Assert.That(newRs.Rows[2][3], Is.EqualTo("GAMMA")); }