Exemple #1
0
        public void GetTriadsFromPolis_ExpressionWithSeveralReturns_CorrectTriads()
        {
            var triadsConverter = new TriadsConverter();
            var program         = new TestProgramBuilder()
                                  .WithPolis(TestSourceKey.SeveralReturnsWithFirstWorking)
                                  .WithTriads(TestSourceKey.SeveralReturnsWithFirstWorking)
                                  .Build();

            var actual = triadsConverter.GetTriadsFromPolis(program.Polis, program.PolisConditionIndexes, null);

            Assert.AreEqual(program.Triads, actual);
            Assert.AreEqual(program.TriadsConditionIndexes, triadsConverter.TriadsConditionIndexes);
        }
Exemple #2
0
        public void GetTriadsFromPolis_ExpressionWithCycleWhileInCondition_CorrectTriads()
        {
            var triadsConverter = new TriadsConverter();
            var program         = new TestProgramBuilder()
                                  .WithPolis(TestSourceKey.CycleWhileInCondition)
                                  .WithTriads(TestSourceKey.CycleWhileInCondition)
                                  .Build();

            var actual = triadsConverter.GetTriadsFromPolis(program.Polis, program.PolisConditionIndexes, null);

            Assert.AreEqual(program.Triads, actual);
            Assert.AreEqual(program.TriadsConditionIndexes, triadsConverter.TriadsConditionIndexes);
        }
Exemple #3
0
 public Compiler()
 {
     SyntacticalAnalyzer = new SyntacticalAnalyzer();
     TriadsConverter     = new TriadsConverter();
     TriadsOptimizer     = new TriadsOptimizer();
 }