Exemple #1
0
        public void DeterminePrimaryScriptFile_NoFiles_ReturnsNull()
        {
            JObject functionConfig = new JObject();

            string[] functionFiles = new string[0];
            Assert.Null(ScriptHost.DeterminePrimaryScriptFile(functionConfig, functionFiles));
        }
        public void DeterminePrimaryScriptFile_NoFiles_ReturnsNull()
        {
            var functionConfig = new JObject();

            string[] functionFiles = new string[0];
            var      fileSystem    = new MockFileSystem();

            fileSystem.AddDirectory(@"c:\functions");
            Assert.Throws <ConfigurationErrorsException>(() => ScriptHost.DeterminePrimaryScriptFile(functionConfig, @"c:\functions", fileSystem));
        }
Exemple #3
0
        public void DeterminePrimaryScriptFile_SingleFile()
        {
            JObject functionConfig = new JObject();

            string[] functionFiles = new string[]
            {
                @"c:\functions\Run.csx"
            };
            string scriptFile = ScriptHost.DeterminePrimaryScriptFile(functionConfig, functionFiles);

            Assert.Equal(@"c:\functions\Run.csx", scriptFile);
        }
        public void DeterminePrimaryScriptFile_SingleFile()
        {
            var functionConfig = new JObject();
            var files          = new Dictionary <string, MockFileData>
            {
                { @"c:\functions\Run.csx", new MockFileData(string.Empty) }
            };
            var    fileSystem = new MockFileSystem(files);
            string scriptFile = ScriptHost.DeterminePrimaryScriptFile(functionConfig, @"c:\functions", fileSystem);

            Assert.Equal(@"c:\functions\Run.csx", scriptFile);
        }
Exemple #5
0
        public void DeterminePrimaryScriptFile_MultipleFiles_IndexFilePresent()
        {
            JObject functionConfig = new JObject();

            string[] functionFiles = new string[]
            {
                @"c:\functions\index.js",
                @"c:\functions\test.txt"
            };
            string scriptFile = ScriptHost.DeterminePrimaryScriptFile(functionConfig, functionFiles);

            Assert.Equal(@"c:\functions\index.js", scriptFile);
        }
Exemple #6
0
        public void DeterminePrimaryScriptFile_MultipleFiles_NoClearPrimary_ReturnsNull()
        {
            JObject functionConfig = new JObject();

            string[] functionFiles = new string[]
            {
                @"c:\functions\foo.py",
                @"c:\functions\queueTrigger.py",
                @"c:\functions\helper.py",
                @"c:\functions\test.txt"
            };
            Assert.Null(ScriptHost.DeterminePrimaryScriptFile(functionConfig, functionFiles));
        }
        public void DeterminePrimaryScriptFile_MultipleFiles_IndexFilePresent()
        {
            var functionConfig = new JObject();
            var files          = new Dictionary <string, MockFileData>
            {
                { @"c:\functions\index.js", new MockFileData(string.Empty) },
                { @"c:\functions\test.txt", new MockFileData(string.Empty) }
            };
            var    fileSystem = new MockFileSystem(files);
            string scriptFile = ScriptHost.DeterminePrimaryScriptFile(functionConfig, @"c:\functions", fileSystem);

            Assert.Equal(@"c:\functions\index.js", scriptFile);
        }
        public void DeterminePrimaryScriptFile_MultipleFiles_NoClearPrimary_ReturnsNull()
        {
            var functionConfig = new JObject();
            var files          = new Dictionary <string, MockFileData>
            {
                { @"c:\functions\foo.py", new MockFileData(string.Empty) },
                { @"c:\functions\queueTrigger.py", new MockFileData(string.Empty) },
                { @"c:\functions\helper.py", new MockFileData(string.Empty) },
                { @"c:\functions\test.txt", new MockFileData(string.Empty) }
            };
            var fileSystem = new MockFileSystem(files);

            Assert.Throws <ConfigurationErrorsException>(() => ScriptHost.DeterminePrimaryScriptFile(functionConfig, @"c:\functions", fileSystem));
        }
Exemple #9
0
        public void DeterminePrimaryScriptFile_MultipleFiles_SourceFileSpecified(string scriptFileName)
        {
            JObject functionConfig = new JObject()
            {
                { "scriptFile", scriptFileName }
            };

            string[] functionFiles = new string[]
            {
                @"c:\functions\queueTrigger.py",
                @"c:\functions\helper.py",
                @"c:\functions\test.txt"
            };
            string scriptFile = ScriptHost.DeterminePrimaryScriptFile(functionConfig, functionFiles);

            Assert.Equal(@"c:\functions\queueTrigger.py", scriptFile);
        }
Exemple #10
0
        public void DeterminePrimaryScriptFile_MultipleFiles_ConfigTrumpsConvention()
        {
            JObject functionConfig = new JObject()
            {
                { "scriptFile", "queueTrigger.py" }
            };

            string[] functionFiles = new string[]
            {
                @"c:\functions\run.py",
                @"c:\functions\queueTrigger.py",
                @"c:\functions\helper.py",
                @"c:\functions\test.txt"
            };
            string scriptFile = ScriptHost.DeterminePrimaryScriptFile(functionConfig, functionFiles);

            Assert.Equal(@"c:\functions\queueTrigger.py", scriptFile);
        }
        public void DeterminePrimaryScriptFile_MultipleFiles_ConfigTrumpsConvention()
        {
            JObject functionConfig = new JObject()
            {
                { "scriptFile", "queueTrigger.py" }
            };
            var files = new Dictionary <string, MockFileData>
            {
                { @"c:\functions\run.py", new MockFileData(string.Empty) },
                { @"c:\functions\queueTrigger.py", new MockFileData(string.Empty) },
                { @"c:\functions\helper.py", new MockFileData(string.Empty) },
                { @"c:\functions\test.txt", new MockFileData(string.Empty) }
            };
            var fileSystem = new MockFileSystem(files);

            string scriptFile = ScriptHost.DeterminePrimaryScriptFile(functionConfig, @"c:\functions", fileSystem);

            Assert.Equal(@"c:\functions\queueTrigger.py", scriptFile);
        }
        public void DeterminePrimaryScriptFile_MultipleFiles_SourceFileSpecified(string scriptFileName)
        {
            JObject functionConfig = new JObject()
            {
                { "scriptFile", scriptFileName }
            };

            var files = new Dictionary <string, MockFileData>
            {
                { @"c:\functions\queueTrigger.py", new MockFileData(string.Empty) },
                { @"c:\functions\helper.py", new MockFileData(string.Empty) },
                { @"c:\functions\test.txt", new MockFileData(string.Empty) }
            };

            var fileSystem = new MockFileSystem(files);

            string scriptFile = ScriptHost.DeterminePrimaryScriptFile(functionConfig, @"c:\functions", fileSystem);

            Assert.Equal(@"c:\functions\queueTrigger.py", scriptFile, StringComparer.OrdinalIgnoreCase);
        }