public void CreateHandlesSpecialIfNaCompiler()
 {
     var functionRepository = FunctionRepository.Create();
     var functionCompilerFactory = new FunctionCompilerFactory(functionRepository);
     var function = new IfNa();
     var functionCompiler = functionCompilerFactory.Create(function);
     Assert.IsInstanceOfType(functionCompiler, typeof(IfNaFunctionCompiler));
 }
 public void CreateHandlesErrorFunctionCompiler()
 {
     var functionRepository = FunctionRepository.Create();
     var functionCompilerFactory = new FunctionCompilerFactory(functionRepository);
     var function = new IsError();
     var functionCompiler = functionCompilerFactory.Create(function);
     Assert.IsInstanceOfType(functionCompiler, typeof(ErrorHandlingFunctionCompiler));
 }
 public void CreateHandlesLookupFunctionCompiler()
 {
     var functionRepository = FunctionRepository.Create();
     var functionCompilerFactory = new FunctionCompilerFactory(functionRepository);
     var function = new Column();
     var functionCompiler = functionCompilerFactory.Create(function);
     Assert.IsInstanceOfType(functionCompiler, typeof(LookupFunctionCompiler));
 }
 public void CreateHandlesCustomFunctionCompiler()
 {
     var functionRepository = FunctionRepository.Create();
     functionRepository.LoadModule(new TestFunctionModule());
     var functionCompilerFactory = new FunctionCompilerFactory(functionRepository);
     var function = new MyFunction();
     var functionCompiler = functionCompilerFactory.Create(function);
     Assert.IsInstanceOfType(functionCompiler, typeof(MyFunctionCompiler));
 }
 public void CreateHandlesStandardFunctionCompiler()
 {
     var functionRepository = FunctionRepository.Create();
     var functionCompilerFactory = new FunctionCompilerFactory(functionRepository);
     var function = new Sum();
     var functionCompiler = functionCompilerFactory.Create(function);
     Assert.IsInstanceOfType(functionCompiler, typeof(DefaultCompiler));
 }