示例#1
0
        public void Parse_Should_Throw_If_Stream_Is_Null()
        {
            var defaultEntrypointDetector = new DefaultEntrypointDetector();
            var parser = new ScriptsFileParser(defaultEntrypointDetector);

            Assert.Throws <ArgumentNullException>(() => parser.Parse(null));
        }
示例#2
0
        public void Parse_Should_Throw_If_PkgName_Is_Null()
        {
            var defaultEntrypointDetector = new DefaultEntrypointDetector();
            var reader = new StreamReader(new MemoryStream(UTF8Encoding.UTF8.GetBytes("{ 'name':'' }")));
            var parser = new ScriptsFileParser(defaultEntrypointDetector);

            Assert.Throws <InvalidDataException>(() => parser.Parse(reader));
        }
示例#3
0
        public void Parse_Should_Throw_Error_If_commands_name_is_empty_or_null()
        {
            var defaultEntrypointDetector = new DefaultEntrypointDetector();
            var reader = new StreamReader(new MemoryStream(UTF8Encoding.UTF8.GetBytes("{ 'name':'MyPackage' , 'commands':{ '':['test']  } }")));
            var parser = new ScriptsFileParser(defaultEntrypointDetector);


            Assert.Throws <InvalidDataException>(() => parser.Parse(reader));
        }
示例#4
0
        public void Parse_Should_Return_EnvVariables()
        {
            var defaultEntrypointDetector = new DefaultEntrypointDetector();
            var reader = new StreamReader(new MemoryStream(UTF8Encoding.UTF8.GetBytes("{ 'name':'MyPackage' , 'env':{ 'TEST_ENV':'TEST_VALUE'  } }")));
            var parser = new ScriptsFileParser(defaultEntrypointDetector);

            var pkg = parser.Parse(reader);

            Assert.True(pkg.Variables.Length == 1);
            Assert.Collection(pkg.Variables, s => Assert.True(s.Name == "TEST_ENV" && s.Value == "TEST_VALUE"));
        }
示例#5
0
        public void Parse_Should_Return_Commands()
        {
            var defaultEntrypointDetector = new DefaultEntrypointDetector();
            var reader = new StreamReader(new MemoryStream(UTF8Encoding.UTF8.GetBytes("{ 'name':'MyPackage' , 'commands':{ 'Test':['dotnet test']  } }")));
            var parser = new ScriptsFileParser(defaultEntrypointDetector);

            var pkg = parser.Parse(reader);

            Assert.True(pkg.Commands.Length == 1);
            Assert.Collection(pkg.Commands, s => Assert.True(s.Name == "Test" && s.Scripts[0] == "dotnet test"));
        }
示例#6
0
        public void Parse_Should_Return_Empty_Package()
        {
            var defaultEntrypointDetector = new DefaultEntrypointDetector();
            var reader = new StreamReader(new MemoryStream(UTF8Encoding.UTF8.GetBytes("{ 'name':'MyPackage' }")));
            var parser = new ScriptsFileParser(defaultEntrypointDetector);
            var pkg    = parser.Parse(reader);

            Assert.True(pkg.Name == "MyPackage");
            Assert.True(pkg.Variables.Length == 0);
            Assert.True(pkg.Commands.Length == 0);
        }