/// <summary></summary> static Dialect() { standardAggregateFunctions["count"] = new CountQueryFunctionInfo(); standardAggregateFunctions["avg"] = new AvgQueryFunctionInfo(); standardAggregateFunctions["max"] = new ClassicAggregateFunction("max",false); standardAggregateFunctions["min"] = new ClassicAggregateFunction("min",false); standardAggregateFunctions["sum"] = new SumQueryFunctionInfo(); Extracter = new NoOpViolatedConstraintNameExtracter(); }
public void ClassicAggregate() { IList args = new ArrayList(); ClassicAggregateFunction caf = new ClassicAggregateFunction("max", false); args.Add("va1"); Assert.AreEqual("max(va1)", caf.Render(args, factoryImpl).ToString()); args.Clear(); args.Add("distinct"); args.Add("va2"); Assert.AreEqual("max(distinct va2)", caf.Render(args, factoryImpl).ToString()); args.Clear(); args.Add("va1"); args.Add("va2"); try { SqlString t = caf.Render(args, factoryImpl); Assert.Fail("No exception 2 argument without <setquantifier>:" + t); } catch (QueryException) { //correct } args.Clear(); args.Add("*"); try { SqlString t = caf.Render(args, factoryImpl); Assert.Fail("No exception '*' :" + t); } catch (QueryException) { //correct } }