コード例 #1
0
        public static FilesGenerationContext Create(JavaScriptTypeChecker javaScriptTypeChecker, LinterDisableMode linterDisableMode)
        {
            switch (javaScriptTypeChecker)
            {
            case JavaScriptTypeChecker.Flow:
                return(new FilesGenerationContext("js", marker => $"// @flow\n{marker}\n", javaScriptTypeChecker));

            case JavaScriptTypeChecker.TypeScript:
                var linterDisable = linterDisableMode == LinterDisableMode.TsLint ? "tslint:disable" : "eslint-disable";
                return(new FilesGenerationContext("ts", marker => $"// {linterDisable}\n{marker}\n", javaScriptTypeChecker));

            default:
                throw new ArgumentOutOfRangeException(nameof(javaScriptTypeChecker), javaScriptTypeChecker, null);
            }
        }
コード例 #2
0
        public static FilesGenerationContext Create(JavaScriptTypeChecker javaScriptTypeChecker)
        {
            switch (javaScriptTypeChecker)
            {
            case JavaScriptTypeChecker.Flow:
                return(new FilesGenerationContext
                {
                    FileExtension = "js",
                    HeaderGenerationFunc = marker => $"// @flow\n{marker}\n",
                    JavaScriptTypeChecker = javaScriptTypeChecker
                });

            case JavaScriptTypeChecker.TypeScript:
                return(new FilesGenerationContext
                {
                    FileExtension = "ts",
                    HeaderGenerationFunc = marker => $"// tslint:disable\n{marker}\n",
                    JavaScriptTypeChecker = javaScriptTypeChecker,
                });

            default:
                throw new ArgumentOutOfRangeException(nameof(javaScriptTypeChecker), javaScriptTypeChecker, null);
            }
        }
コード例 #3
0
 public EndToEndTests(JavaScriptTypeChecker javaScriptTypeChecker)
     : base(javaScriptTypeChecker)
 {
 }
コード例 #4
0
 public DefaultCodeGenerationContext(JavaScriptTypeChecker typeChecker)
 {
     TypeChecker = typeChecker;
 }
コード例 #5
0
 protected TestBase(JavaScriptTypeChecker javaScriptTypeChecker)
 {
     filesGenerationContext = FilesGenerationContext.Create(javaScriptTypeChecker, LinterDisableMode.TsLint);
 }
コード例 #6
0
 public void GenerateFiles(string targetPath, JavaScriptTypeChecker javaScriptTypeChecker)
 {
     ValidateOptions(Options, javaScriptTypeChecker);
     BuildAllDefinitions();
     FilesGenerator.GenerateFiles(targetPath, typeUnitFactory, FilesGenerationContext.Create(javaScriptTypeChecker, Options.LinterDisableMode));
 }
コード例 #7
0
 public OptionsTests(JavaScriptTypeChecker javaScriptTypeChecker)
     : base(javaScriptTypeChecker)
 {
 }
コード例 #8
0
 protected TypeScriptTestBase(JavaScriptTypeChecker javaScriptTypeChecker)
     : base(javaScriptTypeChecker)
 {
 }
コード例 #9
0
 protected AllTypeCheckersTestBase(JavaScriptTypeChecker javaScriptTypeChecker)
     : base(javaScriptTypeChecker)
 {
 }
コード例 #10
0
 protected TestBase(JavaScriptTypeChecker javaScriptTypeChecker)
 {
     filesGenerationContext = FilesGenerationContext.Create(javaScriptTypeChecker);
 }
コード例 #11
0
 private FilesGenerationContext(string fileExtension, Func <string, string> headerGenerationFunc, JavaScriptTypeChecker javaScriptTypeChecker)
 {
     FileExtension         = fileExtension;
     HeaderGenerationFunc  = headerGenerationFunc;
     JavaScriptTypeChecker = javaScriptTypeChecker;
 }