Esempio n. 1
0
        public void From_SourceNames_CrossAndInnerJoin_WithAlias()
        {
            const string expected = "From TabA As A, TabB As B Inner Join TabC As C On B.F1 = C.F2";

            var sourceA = new SourceAlias(new NamedSource("TabA"), "A");
            var sourceB = new SourceAlias(new NamedSource("TabB"), "B");
            var sourceC = new SourceAlias(new NamedSource("TabC"), "C");

            Generator.From(sourceA).From(sourceB).InnerJoin(sourceB, sourceC, "F1", "F2");

            Assert.AreEqual(expected, Generator.ToString());
        }
 /// <summary>
 /// Validates properties needed for audience segmentation.
 /// </summary>
 /// <exception cref="ArgumentNullOrEmptyException">Throws when one of parameters is null or empty.</exception>
 public void ValidateForAudienceSegmentation()
 {
     ValidateTemplateWithDependencies();
     SourceAudience.CheckArgumentNull("SourceAudience");
     UserConnection.CheckArgumentNull("UserConnection");
     SourceAlias.CheckArgumentNull("SourceAlias");
     EntityIdSourceColumn.CheckArgumentNull("EntityIdSourceColumn");
     SourceColumnForFilter.CheckArgumentNull("SourceColumnForFilter");
     TargetTable.CheckArgumentNull("TargetTable");
     EntityIdTargetColumn.CheckArgumentNull("EntityIdTargetColumn");
     ReplicaIdTargetColumn.CheckArgumentNull("ReplicaIdTargetColumn");
     RecordIdTargetColumn.CheckArgumentNull("RecordIdTargetColumn");
 }
Esempio n. 3
0
        public void ConditionFieldWithSubSelectSource_WithAlias()
        {
            const string expected = "X.F1 = 1";

            var sqlGenerator = new SqlGenerator();
            var subSelect    = sqlGenerator.From("Tab1").Select("F1").SqlStatement;

            var source = new SourceAlias(new SubSelectSource(subSelect), "X");

            Conditions.Add(new Field("F1", source), RelationalOperators.Equal, 1);

            var actual = GenerateSqlString();

            Assert.AreEqual(expected, actual);
        }