/// <summary> /// Creates an <see cref="IFilterControl"/> using the <see cref="IControlFactory"/> and creates all the filter controls /// defined by the <see cref="FilterDef"/> given. /// </summary> /// <param name="filterDef">The <see cref="FilterDef"/> to use in creation.</param> /// <returns>The created <see cref="IFilterControl"/></returns> public IFilterControl BuildFilterControl(FilterDef filterDef) { IFilterControl filterControl = _controlFactory.CreateFilterControl(); BuildFilterControl(filterDef, filterControl); return(filterControl); }
public void Test_ResizeControl_ShouldPlaceTextBoxInCorrectPosition() { //---------------Set up test pack------------------- FilterControlBuilder builder = new FilterControlBuilder(GetControlFactory()); string propName = TestUtil.GetRandomString(); FilterDef filterDef = CreateFilterDef_1Property(propName); IFilterControl filterControl = builder.BuildFilterControl(filterDef); //---------------Assert Precondition---------------- IPanel filterPanel = filterControl.FilterPanel; Assert.AreEqual(2, filterPanel.Controls.Count); IControlHabanero label = filterControl.FilterPanel.Controls[0]; Assert.IsInstanceOf(typeof(ILabel), label); Assert.GreaterOrEqual(label.Width, 0); Assert.GreaterOrEqual(label.Height, 0); Assert.GreaterOrEqual(label.Left, 0); Assert.IsTrue(label.Visible); IControlHabanero textBox = filterControl.FilterPanel.Controls[1]; Assert.IsInstanceOf(typeof(ITextBox), textBox); Assert.LessOrEqual(textBox.Left, label.Left + label.Width); //---------------Execute Test ---------------------- filterControl.Size = new Size(999, 800); filterControl.Width = 1000; //---------------Test Result ----------------------- Assert.GreaterOrEqual(textBox.Left, label.Left + label.Width); }
public void Test_BuildFilterControl_Simple() { //---------------Set up test pack------------------- FilterControlBuilder builder = new FilterControlBuilder(GetControlFactory()); string propName = TestUtil.GetRandomString(); FilterDef filterDef = CreateFilterDef_1Property(propName); //---------------Assert Precondition---------------- //---------------Execute Test ---------------------- IFilterControl filterControl = builder.BuildFilterControl(filterDef); filterControl.Size = new Size(1000, 800); //---------------Test Result ----------------------- Assert.IsNotNull(filterControl); Assert.AreEqual(1, filterControl.Controls.Count, "Always has GroupBox"); Assert.AreEqual(FilterModes.Filter, filterControl.FilterMode); Assert.AreEqual(1, filterControl.FilterControls.Count); Assert.IsNotNull(filterControl.GetChildControl(propName)); Assert.IsInstanceOf(typeof(StringTextBoxFilter), filterControl.FilterControls[0]); IPanel filterPanel = filterControl.FilterPanel; Assert.AreEqual(2, filterPanel.Controls.Count); IControlHabanero label = filterControl.FilterPanel.Controls[0]; Assert.IsInstanceOf(typeof(ILabel), label); Assert.Greater(label.Width, 0); Assert.Greater(label.Height, 0); Assert.Greater(label.Left, 0); Assert.IsTrue(label.Visible); IControlHabanero textBox = filterControl.FilterPanel.Controls[1]; Assert.IsInstanceOf(typeof(ITextBox), textBox); //Assert.AreEqual(label.Top, textBox.Top); //Assert.GreaterOrEqual(textBox.Left, label.Left + label.Width); }
/// <exception cref="System.Exception"/> protected internal virtual void StartTomcat() { tomcat = new Tomcat(); FilePath @base = new FilePath(Runtime.GetProperty("java.io.tmpdir")); Context ctx = tomcat.AddContext("/foo", @base.GetAbsolutePath()); FilterDef fd = new FilterDef(); fd.SetFilterClass(typeof(AuthenticatorTestCase.TestFilter).FullName); fd.SetFilterName("TestFilter"); FilterMap fm = new FilterMap(); fm.SetFilterName("TestFilter"); fm.AddURLPattern("/*"); fm.AddServletName("/bar"); ctx.AddFilterDef(fd); ctx.AddFilterMap(fm); Tomcat.AddServlet(ctx, "/bar", typeof(AuthenticatorTestCase.TestServlet).FullName ); ctx.AddServletMapping("/bar", "/bar"); host = "localhost"; port = GetLocalPort(); tomcat.SetHostname(host); tomcat.SetPort(port); tomcat.Start(); }
public override string ToString() { var noColumnFilter = new FilterDef(null); this["bUseColVis"] = _vm.ColVis; this["aoColumns"] = _vm.Columns //.Where(c => c.Visible || c.Filter["sSelector"] != null) .Select(c => c.Searchable?c.Filter:noColumnFilter).ToArray(); return new JavaScriptSerializer().Serialize(this); }
public override string ToString() { var noColumnFilter = new FilterDef(null); this["bUseColVis"] = _vm.ColVis; this["aoColumns"] = _vm.Columns //.Where(c => c.Visible || c.Filter["sSelector"] != null) .Select(c => c.Searchable?c.Filter:noColumnFilter).ToArray(); return(new JavaScriptSerializer().Serialize(this)); }
public void Test_Constructor_WithNoParameters() { //---------------Set up test pack------------------- //---------------Assert PreConditions--------------- //---------------Execute Test ---------------------- FilterDef filterDef = new FilterDef(); //---------------Test Result ----------------------- Assert.IsNotNull(filterDef.FilterPropertyDefs); Assert.AreEqual(FilterModes.Filter, filterDef.FilterMode); }
public void Test_Constructor_WithListParameter() { //---------------Set up test pack------------------- IList <IFilterPropertyDef> filterPropertyDefs = MockRepository.GenerateStub <IList <IFilterPropertyDef> >(); //---------------Assert PreConditions--------------- //---------------Execute Test ---------------------- FilterDef filterDef = new FilterDef(filterPropertyDefs); //---------------Test Result ----------------------- Assert.AreSame(filterPropertyDefs, filterDef.FilterPropertyDefs); Assert.AreEqual(FilterModes.Filter, filterDef.FilterMode); }
public void Test_BuildFilterControl_FilterMode_FilterIsDefault() { //---------------Set up test pack------------------- FilterControlBuilder builder = new FilterControlBuilder(GetControlFactory()); FilterDef filterDef = CreateFilterDef_1Property(); //---------------Execute Test ---------------------- IFilterControl filterControl = builder.BuildFilterControl(filterDef); //---------------Test Result ----------------------- Assert.AreEqual(FilterModes.Filter, filterControl.FilterMode); }
public void Test_BuildFilterControl_Layout_0Columns_UsesFlowLayout() { //---------------Set up test pack------------------- FilterControlBuilder builder = new FilterControlBuilder(GetControlFactory()); FilterDef filterDef = CreateFilterDef_1Property(); //---------------Execute Test ---------------------- filterDef.Columns = 0; IFilterControl filterControl = builder.BuildFilterControl(filterDef); //---------------Test Result ----------------------- Assert.IsInstanceOf(typeof(FlowLayoutManager), filterControl.LayoutManager); }
private FilterDef CreateFilterDefinition(FullTextFilterDefAttribute att) { try { Activator.CreateInstance(att.Impl); } catch (Exception ex) { throw new SearchException("Unable to create Filter class: " + att.Impl.FullName, ex); } var filterDefinition = new FilterDef { Name = att.Name, Cache = att.Cache, Impl = att.Impl }; foreach (var method in filterDefinition.Impl.GetMethods()) { if (AttributeUtil.HasAttribute <FactoryAttribute>(method)) { if (filterDefinition.FactoryMethod != null) { throw new SearchException("Multiple Factory methods found " + filterDefinition.Name + ":" + filterDefinition.Impl.FullName + "." + method.Name); } filterDefinition.FactoryMethod = method; } if (AttributeUtil.HasAttribute <KeyAttribute>(method)) { if (filterDefinition.KeyMethod != null) { throw new SearchException("Multiple Key methods found " + filterDefinition.Name + ":" + filterDefinition.Impl.FullName + "." + method.Name); } filterDefinition.KeyMethod = method; } } foreach (var prop in filterDefinition.Impl.GetProperties()) { if (AttributeUtil.HasAttribute <FilterParameterAttribute>(prop)) { filterDefinition.Setters[prop.Name] = prop; } } return(filterDefinition); }
public ColDef(string name, Type type) { Name = name; Type = type; Filter = new FilterDef(Type); DisplayName = name; Visible = true; Sortable = true; SortDirection = SortDirection.None; MRenderFunction = (string)null; CssClass = ""; CssClassHeader = ""; this.Searchable = true; }
private FilterDef BuildFilterDef(FullTextFilterDefAttribute attribute) { var filterDef = new FilterDef { Name = attribute.Name, Impl = attribute.Impl, Cache = attribute.Cache }; try { Activator.CreateInstance(filterDef.Impl); } catch (Exception e) { throw new SearchException("Unable to create Filter class: " + filterDef.Impl.FullName, e); } foreach (var method in filterDef.Impl.GetMethods()) { if (AttributeUtil.HasAttribute <FactoryAttribute>(method)) { if (filterDef.FactoryMethod != null) { throw new SearchException("Multiple Factory methods found " + filterDef.Name + ":" + filterDef.Impl.FullName + "." + method.Name); } filterDef.FactoryMethod = method; } if (AttributeUtil.HasAttribute <KeyAttribute>(method)) { if (filterDef.KeyMethod != null) { throw new SearchException("Multiple Key methods found " + filterDef.Name + ":" + filterDef.Impl.FullName + "." + method.Name); } filterDef.KeyMethod = method; } } // Use properties rather than the Java setter logic idea foreach (PropertyInfo prop in filterDef.Impl.GetProperties()) { if (AttributeUtil.HasAttribute <FilterParameterAttribute>(prop)) { filterDef.AddSetter(prop); } } return(filterDef); }
protected internal ColDef(string name, Type type) { Name = name; Type = type; Filter = new FilterDef(Type); DisplayName = name; Visible = true; Sortable = true; SortDirection = SortDirection.None; MRenderFunction = (string) null; CssClass = ""; CssClassHeader = ""; this.Searchable = true; }
public void Test_BuildFilterControl_PreviouslyBuiltFilterControl() { //---------------Set up test pack------------------- FilterControlBuilder builder = new FilterControlBuilder(GetControlFactory()); FilterDef filterDef = CreateFilterDef_1Property(); //---------------Execute Test ---------------------- IFilterControl filterControl = GetControlFactory().CreateFilterControl(); builder.BuildFilterControl(filterDef, filterControl); builder.BuildFilterControl(filterDef, filterControl); //---------------Test Result ----------------------- Assert.AreEqual(1, filterControl.FilterControls.Count); }
public void Test_BuildFilterControl_TwoProperties_DifferentTypes() { //---------------Set up test pack------------------- FilterControlBuilder builder = new FilterControlBuilder(GetControlFactory()); FilterDef filterDef = CreateFilterDef_2PropertiesWithType("StringTextBoxFilter", "BoolCheckBoxFilter"); //---------------Execute Test ---------------------- IFilterControl filterControl = builder.BuildFilterControl(filterDef); //---------------Test Result ----------------------- Assert.AreEqual(2, filterControl.FilterControls.Count); Assert.IsInstanceOf(typeof(StringTextBoxFilter), filterControl.FilterControls[0]); Assert.IsInstanceOf(typeof(ITextBox), filterControl.FilterControls[0].Control); Assert.IsInstanceOf(typeof(BoolCheckBoxFilter), filterControl.FilterControls[1]); Assert.IsInstanceOf(typeof(ICheckBox), filterControl.FilterControls[1].Control); }
public void Test_BuildFilterControl_Layout_1OrMoreColumns_UsesGridLayout_MoreThanOneRow() { //---------------Set up test pack------------------- FilterControlBuilder builder = new FilterControlBuilder(GetControlFactory()); FilterDef filterDef = CreateFilterDef_3Properties(); //---------------Execute Test ---------------------- filterDef.Columns = 2; IFilterControl filterControl = builder.BuildFilterControl(filterDef); //---------------Test Result ----------------------- Assert.IsInstanceOf(typeof(GridLayoutManager), filterControl.LayoutManager); GridLayoutManager layoutManager = (GridLayoutManager)filterControl.LayoutManager; Assert.AreEqual(4, layoutManager.Columns.Count); Assert.AreEqual(2, layoutManager.Rows.Count); }
public void Test_BuildFilterControl_AlreadyConstructedFilterControl() { //---------------Set up test pack------------------- FilterControlBuilder builder = new FilterControlBuilder(GetControlFactory()); const string filterType = "Habanero.Faces.Test.Base.FilterController.SimpleFilterStub"; const string filterTypeAssembly = "Habanero.Faces.Test.Base"; FilterDef filterDef = CreateFilterDef_1PropertyWithTypeAndAssembly(filterType, filterTypeAssembly); //---------------Execute Test ---------------------- IFilterControl filterControl = GetControlFactory().CreateFilterControl(); builder.BuildFilterControl(filterDef, filterControl); //---------------Test Result ----------------------- Assert.AreEqual(1, filterControl.FilterControls.Count); Assert.IsInstanceOf(typeof(SimpleFilterStub), filterControl.FilterControls[0]); }
public void Test_BuildFilterControl_TwoProperties_CheckPropNames() { //---------------Set up test pack------------------- FilterControlBuilder builder = new FilterControlBuilder(GetControlFactory()); string testprop1 = TestUtil.GetRandomString(); string testprop2 = TestUtil.GetRandomString(); FilterDef filterDef = CreateFilterDef_2Properties(testprop1, testprop2); //---------------Execute Test ---------------------- IFilterControl filterControl = builder.BuildFilterControl(filterDef); //---------------Test Result ----------------------- Assert.AreEqual(2, filterControl.FilterControls.Count); Assert.AreEqual(testprop1, filterControl.FilterControls[0].PropertyName); Assert.AreEqual(testprop2, filterControl.FilterControls[1].PropertyName); Assert.AreEqual(FilterClauseOperator.OpEquals, filterControl.FilterControls[0].FilterClauseOperator); Assert.AreEqual(FilterClauseOperator.OpLike, filterControl.FilterControls[1].FilterClauseOperator); }
public void Test_BuildFilterControl_Simple_CheckLayout() { //---------------Set up test pack------------------- FilterControlBuilder builder = new FilterControlBuilder(GetControlFactory()); string propName = TestUtil.GetRandomString(); FilterDef filterDef = CreateFilterDef_1Property(propName); //---------------Assert Precondition---------------- //---------------Execute Test ---------------------- IFilterControl filterControl = builder.BuildFilterControl(filterDef); filterControl.Size = new Size(1000, 800); //---------------Test Result ----------------------- IControlHabanero label = filterControl.FilterPanel.Controls[0]; IControlHabanero textBox = filterControl.FilterPanel.Controls[1]; Assert.AreEqual(label.Top, textBox.Top); Assert.GreaterOrEqual(textBox.Left, label.Left + label.Width); }
public IFullTextFilter EnableFullTextFilter(string name) { using (new SessionIdLoggingContext(Session.SessionId)) { if (filterDefinitions.TryGetValue(name, out var filterDefinition)) { return(filterDefinition); } filterDefinition = new FullTextFilterImpl { Name = name }; FilterDef filterDef = SearchFactory.GetFilterDefinition(name); if (filterDef == null) { throw new SearchException("Unknown FullTextFilter: " + name); } filterDefinitions[name] = filterDefinition; return(filterDefinition); } }
public override FilterDefinition <Movie> UpdateGetFilter(Guid id) => FilterDef.Eq(a => a.Id, id);
public override FilterDefinition <Movie> DeleteFilter(Guid id) => FilterDef.Eq(a => a.Id, id);
public bool TryGetFilterDefinition(string name, out FilterDef filter) { return(filterDefinitions.TryGetValue(name, out filter)); }
public void AddFilterDefinition(string name, FilterDef filter) { filterDefinitions.Add(name, filter); }
public override FilterDefinition <Actor> GetFilter(Guid id) => FilterDef.Eq(a => a.Id, id);