public void AllowLocalizedDataTest() { // Arrange. var field = new ReferenceFieldDefinition { SystemName = "TestField" }; // Act / Assert. Assert.IsFalse(field.AllowLocalizedData); }
public void GetColumnNameTest() { // Arrange. var field = new ReferenceFieldDefinition { SystemName = "TestField" }; // Act / Assert. Assert.AreEqual("TestField", field.GetColumnName(Constants.DefaultCultureName)); Assert.AreEqual("TestField", field.GetColumnName("fr-FR")); }
public void GetTableNameTest() { // Arrange. var process = new ReferenceProcessDefinition { SystemName = "TestProcess" }; var field = new ReferenceFieldDefinition { SystemName = "TestField", DefinedIn = process }; // Act / Assert. Assert.AreEqual("TestProcess", field.GetTableName()); }
public void RefUpdateFields_ShouldUpdateNonReferencedFields() { #region Arrange const string RefSystemName = "Cr1"; var fieldDefinition = new ReferenceFieldDefinition { SystemName = RefSystemName }; fieldDefinition.DisplayFields.Add(new ReferenceDisplayFieldDefinition() { Alias = Field1Name, SystemName = Field1Name }); fieldDefinition.DisplayFields.Add(new ReferenceDisplayFieldDefinition() { Alias = CrField1Name, SystemName = CrField1Name }); fieldDefinition.DisplayFields.Add(new ReferenceDisplayFieldDefinition() { Alias = McrField1Name, SystemName = McrField1Name }); fieldDefinition.DisplayFields.Add(new ReferenceDisplayFieldDefinition() { Alias = RcrField1Name, SystemName = RcrField1Name }); var queryGenerator = new SearchQueryGeneratorTest { RootTable = new TableDefinition("Test") }; AddReferencedFields(queryGenerator); AddNonReferencedFields(queryGenerator); AddReferencedCrossReferences(queryGenerator); AddNonReferencedCrossReferences(queryGenerator); #endregion Arrange // Act queryGenerator.RefUpdateFields(fieldDefinition); // Assert var fields = queryGenerator.RootTable.GetFields(); Assert.IsTrue(fields.First(f => f.SystemName.Equals(Field1Name)).IncludeInResult); Assert.IsFalse(fields.First(f => f.SystemName.Equals(Field2Name)).IncludeInResult); Assert.IsTrue(queryGenerator.SingleCrossReferences.First(cr => cr.SystemName.Equals(CrField1Name)).IncludeInResult); Assert.IsTrue(queryGenerator.MultiCrossReferences.First(mcr => mcr.SystemName.Equals(McrField1Name)).IncludeInResult); Assert.IsTrue(queryGenerator.ReverseCrossReferences.First(rcr => rcr.SystemName.Equals(RcrField1Name)).IncludeInResult); Assert.IsFalse(queryGenerator.SingleCrossReferences.First(cr => cr.SystemName.Equals(CrField2Name)).IncludeInResult); Assert.IsFalse(queryGenerator.MultiCrossReferences.First(mcr => mcr.SystemName.Equals(McrField2Name)).IncludeInResult); Assert.IsFalse(queryGenerator.ReverseCrossReferences.First(rcr => rcr.SystemName.Equals(RcrField2Name)).IncludeInResult); }
/// <summary> /// Refs the get query for reverse cross ref. /// <author>unknown</author> /// </summary> /// <param name="field">The field.</param> /// <returns>System.String.</returns> /// <exception cref="System.NotImplementedException"></exception> protected override string RefGetQueryForReverseCrossRef(ReferenceFieldDefinition field) { throw new NotImplementedException(); }
/// <summary> /// Refs the name of the get cte. /// </summary> /// <param name="field">The field.</param> /// <returns>System.String.</returns> /// <exception cref="System.NotImplementedException"></exception> protected override string RefGetCteName(ReferenceFieldDefinition field) { return field.SystemName; }
/// <summary> /// Refs the get cte. /// <author>unknown</author> /// </summary> /// <param name="cteName">Name of the cte.</param> /// <param name="process">The process.</param> /// <param name="fields">The fields.</param> /// <param name="includeSearchFields">if set to <c>true</c> [include search fields].</param> /// <param name="includeDetailFields">if set to <c>true</c> [include detail fields].</param> /// <param name="availableFields">The available fields.</param> /// <param name="field">The field.</param> /// <returns>System.String.</returns> /// <exception cref="System.NotImplementedException"></exception> protected override string RefGetCte( string cteName, ReferenceProcessDefinition process, IEnumerable<ReferenceDisplayFieldDefinition> fields, bool includeSearchFields, bool includeDetailFields, out HashSet<string> availableFields, ReferenceFieldDefinition field = null) { availableFields = new HashSet<string>(); return cteName; }
/// <summary> /// Refs the add single cross ref outer joins. /// <author>unknown</author> /// </summary> /// <param name="joinsString">The joins string.</param> /// <param name="tableAliases">The table aliases.</param> /// <param name="joinField">The join field.</param> /// <param name="path">The path.</param> /// <param name="field">The field.</param> /// <exception cref="System.NotImplementedException"></exception> protected override void RefAddSingleCrossRefOuterJoins( StringBuilder joinsString, TableAliasCollection tableAliases, ReferenceJoinFieldDefinition joinField, string path = "", ReferenceFieldDefinition field = null) { throw new NotImplementedException(); }
/// <summary> /// Gets the tree CT e_ level. /// <author>unknown</author> /// </summary> /// <param name="field">The field.</param> /// <param name="cte">The cte.</param> /// <returns>System.String.</returns> /// <exception cref="System.NotImplementedException"></exception> protected override string GetTreeCTE_Level(ReferenceFieldDefinition field, string cte) { throw new NotImplementedException(); }
/// <summary> /// Gets the name of the reverse cross ref items select cte. /// </summary> /// <param name="field">The field.</param> /// <returns>System.String.</returns> /// <exception cref="System.NotImplementedException"></exception> protected override string GetReverseCrossRefItemsSelectCteName(ReferenceFieldDefinition field) { throw new NotImplementedException(); }
/// <summary> /// Refs the get query for item. /// <author>unknown</author> /// </summary> /// <param name="field">The field.</param> /// <returns>System.String.</returns> /// <exception cref="System.NotImplementedException"></exception> public override string RefGetQueryForItem(ReferenceFieldDefinition field) { throw new NotImplementedException(); }
public void GetFieldReturnsSingleCrossReferenceField() { // Arrange. var rootTable = new TableDefinition("TestTable"); var processDefinition = new ProcessDefinition(); processDefinition.TableList.Add(rootTable); var field = new ReferenceFieldDefinition { SystemName = "TestField" }; processDefinition.SingleCrossReferenceFields.Add(field); // Act / Assert. Assert.AreSame(field, processDefinition.GetField("TestField")); }
/// <summary> /// Gets the name of the database view that returns the links for the specified reference field. /// </summary> /// <param name="field"> /// The reference field metadata. /// </param> /// <returns> /// The view name. /// </returns> public static string GetReferenceFieldIdMappingsViewName(ReferenceFieldDefinition field) { if (field == null) throw new ArgumentNullException("field"); return GetReferenceFieldIdMappingsViewName(field.DefinedIn.SystemName, field.SystemName); }
public static string GetJoinTableName(ReferenceFieldDefinition field) { if (field == null) { return null; } if (field.ColumnType == ColumnTypes.MultiReference && field.ReferenceField == null) { return GetMultiCrossReferenceJoinTableName( field.DefinedIn.SystemName, field.SystemName, field.ReferenceProcess.SystemName); } throw new InvalidOperationException("Invalid field type."); }
public static string GetJoinTableChildKey(ReferenceFieldDefinition displayField) { if (displayField == null) { return null; } if (displayField.ColumnType == ColumnTypes.MultiReference && displayField.ReferenceField == null) { return GetMultiCrossReferenceJoinTableChildKey(displayField.ReferenceProcess.SystemName); } throw new InvalidOperationException("Invalid field type."); }
public void RefUpdateFields_ShouldNotAffectSpecificFields() { #region Assert const string RefSystemName = "Cr1"; var fieldDefinition = new ReferenceFieldDefinition { SystemName = RefSystemName }; fieldDefinition.DisplayFields.Add(new ReferenceDisplayFieldDefinition() { Alias = Field1Name, SystemName = Field1Name }); var queryGenerator = new SearchQueryGeneratorTest { RootTable = new TableDefinition("Test") }; AddReferencedFields(queryGenerator); AddNonReferencedFields(queryGenerator); #endregion Assert // Act queryGenerator.RefUpdateFields(fieldDefinition); // Assert var fields = queryGenerator.RootTable.GetFields(); Assert.IsTrue(fields.First(f => f.SystemName.Equals(Constants.IdColumnName)).IncludeInResult); Assert.IsTrue(fields.First(f => f.SystemName.Equals(Constants.DerivedProcessColumnName)).IncludeInResult); }
public void RefUpdateFields_ShouldIncludeInResultAllFieldsFromDisplayFieldsCollection() { //Arrange var queryGenerator = new SearchQueryGeneratorTest { RootTable = new TableDefinition("Test") }; var crField = new ReferenceFieldDefinition { SystemName = CrField1Name, Alias = CrField1Name, IncludeInResult = false }; var mcrField = new ReferenceFieldDefinition { SystemName = McrField1Name, Alias = McrField1Name, IncludeInResult = false }; var rcrField = new ReferenceFieldDefinition { SystemName = RcrField1Name, Alias = RcrField1Name, IncludeInResult = false }; queryGenerator.RootTable.AddField(Field1Name, ColumnTypes.String, includeInResult: false); queryGenerator.SingleCrossReferences.Add(crField); queryGenerator.MultiCrossReferences.Add(mcrField); queryGenerator.ReverseCrossReferences.Add(rcrField); var fieldDefinition = new ReferenceFieldDefinition(); fieldDefinition.DisplayFields.Add(new ReferenceDisplayFieldDefinition { Alias = Field1Name, SystemName = Field1Name }); fieldDefinition.DisplayFields.Add(new ReferenceDisplayFieldDefinition { Alias = CrField1Name, SystemName = CrField1Name }); fieldDefinition.DisplayFields.Add(new ReferenceDisplayFieldDefinition { Alias = McrField1Name, SystemName = McrField1Name }); fieldDefinition.DisplayFields.Add(new ReferenceDisplayFieldDefinition { Alias = RcrField1Name, SystemName = RcrField1Name }); //Act queryGenerator.RefUpdateFields(fieldDefinition); //Assert Assert.IsTrue(queryGenerator.RootTable.GetFields()[0].IncludeInResult); Assert.IsTrue(crField.IncludeInResult); Assert.IsTrue(mcrField.IncludeInResult); Assert.IsTrue(rcrField.IncludeInResult); }
/// <summary> /// Gets the selected fields. /// <author>unknown</author> /// </summary> /// <param name="field">The field.</param> /// <param name="isParameter">if set to <c>true</c> [is parameter].</param> /// <param name="isHierarchicalSelect">if set to <c>true</c> [is hierarchical select].</param> /// <returns>System.String.</returns> /// <exception cref="System.NotImplementedException"></exception> protected override string GetSelectedFields(ReferenceFieldDefinition field, bool isParameter = false, bool isHierarchicalSelect = false) { throw new NotImplementedException(); }