Esempio n. 1
0
        public void Test_StdInWorks()
        {
            var testInfo = new IntegrationTestInfo("StdInWorks.ll");

            testInfo.StdIn =
                @"2
3
5
6
7
8
9
411
419
0
";

            testInfo.StdOut =
                @"Enter 0 at any time to quit.
2 is a prime number
3 is a prime number
5 is a prime number
6 is not a prime number
7 is a prime number
8 is not a prime number
9 is not a prime number
411 is not a prime number
419 is a prime number";

            Test(testInfo);
        }
Esempio n. 2
0
        public void Test_PrintPrimesWithInlineLambda()
        {
            var testInfo = new IntegrationTestInfo("PrintPrimesWithInlineLambda.ll");

            testInfo.StdIn =
                @"2
3
5
6
7
8
9
411
419
0
";

            testInfo.StdOut =
                @"Enter 0 at any time to quit.
2 is a prime number
3 is a prime number
5 is a prime number
6 is not a prime number
7 is a prime number
8 is not a prime number
9 is not a prime number
411 is not a prime number
419 is a prime number";

            Test(testInfo);
        }
Esempio n. 3
0
        public void Test_Rank32Matrix()
        {
            var info = new IntegrationTestInfo("Rank32Matrix.ll");

            info.StdIn =
                @"5
";
            info.StdOut =
                @"Your number: 5
";
            Test(info);
        }
Esempio n. 4
0
        public void Test_CastsAndForeach()
        {
            var testInfo = new IntegrationTestInfo("Casts.ll");

            testInfo.StdIn =
                @"2 3 5 6 7 8 9 411 419 0
";

            testInfo.StdOut =
                @"2 3 5 6 7 8 9 411 419 0
";

            Test(testInfo);
        }
Esempio n. 5
0
        protected void Test(IntegrationTestInfo testInfo)
        {
            var filePath = Path.Combine(TestBase.GetTestDirectory(), "TestExecutable");

            var exePath = filePath + ".exe";
            var pdbPath = filePath + ".pdb";

            var files      = testInfo.SourceFiles.Select(file => Path.Combine(IntegrationTestsPath, "SourceFiles", file));
            var references = testInfo.AdditionalReferences.Select(reference => string.Format("/ref:{0}", reference));

            Build(files, references, exePath);
            PEVerifyRunner.Run(exePath);
            Run(exePath, testInfo);
        }
Esempio n. 6
0
        public void Test_ArrayItemSwap()
        {
            var testInfo = new IntegrationTestInfo("ArrayItemSwap.ll");

            testInfo.StdIn =
                @"2 3 5 6 7 8 9 411 419 0
1 5
";

            testInfo.StdOut =
                @"2 8 5 6 7 3 9 411 419 0
";

            Test(testInfo);
        }
Esempio n. 7
0
        private void Run(string path, IntegrationTestInfo testInfo)
        {
            var stdout = ManagedCodeRunner.CreateProcessAndRun(path, testInfo.Arguments, testInfo.StdIn, kRunTimeOut);

            Assert.AreEqual(testInfo.StdOut.Trim(), stdout.Trim());
        }