public void Not_Report_Indentation_Warning_On_Ethalon_Solution_Of_SingleFileExercise()
        {
            var singleBlock =
                new ExerciseBuilder("cs", "using System; using System.Linq; using System.Text;").BuildBlockFrom(
                    CSharpSyntaxTree.ParseText(TestsHelper.ProjSlideFolder.GetFile("S055 - Упражнение на параметры по умолчанию.cs")
                                               .ContentAsUtf8()), null);
            var validatorOut = TestsHelper.ValidateBlock(singleBlock);

            validatorOut.Should().BeNullOrEmpty();
        }
Exemple #2
0
		private static Slide ParseSyntaxTree(SyntaxTree tree, SlideInfo slideInfo, string prelude,
			IFileSystem getInclude)
		{
			var blocksBuilder = new SlideBuilder(getInclude);
			blocksBuilder.Visit(tree.GetRoot());
			if (!ExerciseBuilder.IsExercise(tree))
				return new Slide(blocksBuilder.Blocks, slideInfo, blocksBuilder.Title, blocksBuilder.Id);
			var exerciseBlock = new ExerciseBuilder(SlideBuilder.LangId, prelude).BuildBlockFrom(tree);
			blocksBuilder.Blocks.Add(exerciseBlock);
			return new ExerciseSlide(blocksBuilder.Blocks, slideInfo, blocksBuilder.Title, blocksBuilder.Id);
		}
Exemple #3
0
        private static Slide ParseSyntaxTree(SyntaxTree tree, SlideInfo slideInfo, string prelude,
                                             IFileSystem getInclude)
        {
            var blocksBuilder = new SlideBuilder(getInclude);

            blocksBuilder.Visit(tree.GetRoot());
            if (!ExerciseBuilder.IsExercise(tree))
            {
                return(new Slide(blocksBuilder.Blocks, slideInfo, blocksBuilder.Title, blocksBuilder.Id));
            }
            var exerciseBlock = new ExerciseBuilder(SlideBuilder.LangId, prelude).BuildBlockFrom(tree);

            blocksBuilder.Blocks.Add(exerciseBlock);
            return(new ExerciseSlide(blocksBuilder.Blocks, slideInfo, blocksBuilder.Title, blocksBuilder.Id));
        }
Exemple #4
0
        private static Slide ParseSyntaxTree(SyntaxTree tree, SlideInfo slideInfo, string prelude,
                                             DirectoryInfo getInclude, CourseSettings settings)
        {
            var blocksBuilder = new SlideBuilder(getInclude);

            blocksBuilder.Visit(tree.GetRoot());
            if (!ExerciseBuilder.IsExercise(tree))
            {
                return(new Slide(blocksBuilder.Blocks, slideInfo, blocksBuilder.Title, blocksBuilder.Id, meta: null));
            }
            var exerciseBlock = new ExerciseBuilder(SlideBuilder.LangId, prelude).BuildBlockFrom(tree, slideInfo.SlideFile);

            exerciseBlock.CheckScoringGroup(slideInfo.SlideFile.FullName, settings.Scoring);
            blocksBuilder.Blocks.Add(exerciseBlock);
            return(new ExerciseSlide(blocksBuilder.Blocks, slideInfo, blocksBuilder.Title, blocksBuilder.Id, meta: null));
        }