예제 #1
0
 private TestSuite CreateSimpleSuite(string name)
 {
     TestSuite suite = new TestSuite(name);
     Assert.That( suite.TestCaseCount, Is.EqualTo( 0 ) );
     suite.AddTest( new TestCase( "One", new SimpleTestCase()));
     suite.AddTest( new TestCase( "Two", new SimpleTestCase() ) );
     suite.AddTest( new TestCase( "Three", new SimpleTestCase() ) );
     Assert.That( suite.TestCaseCount, Is.EqualTo( 3 ) );
     return suite;
 }
예제 #2
0
        /// <summary>
        /// Loads a test suite containing multiple tests from an assembly
        /// </summary>
        /// <param name="tests">String array containing the names of the test classes to load</param>
        /// <returns>A suite containing all the tests</returns>
        public static ITest Load(Assembly assembly, string[] tests)
        {
            TestSuite suite = new TestSuite("Test Fixtures");
            foreach (string name in tests)
                suite.AddTest(TestLoader.Load(assembly, name));

            return suite;
        }
예제 #3
0
        /// <summary>
        /// Loads all the test fixtures in an assembly
        /// </summary>
        /// <param name="assembly">The assembly to be loaded</param>
        /// <returns>A Test containing all fixtures found</returns>
        public static ITest Load(Assembly assembly)
        {
            TestSuite suite = new TestSuite(assembly.GetName().Name);

            foreach (Type type in assembly.GetTypes())
            {
                if (IsTestFixture(type))
                    suite.AddTest(new TestSuite(type));
            }

            return suite;
        }
예제 #4
0
        /// <summary>
        /// Loads all the test fixtures in an assembly
        /// </summary>
        /// <param name="assembly">The assembly to be loaded</param>
        /// <returns>A Test containing all fixtures found</returns>
        public static ITest Load(Assembly assembly)
        {
            TestSuite suite = new TestSuite(assembly.GetName().Name);

            foreach (Type type in assembly.GetTypes())
            {
                if ( Reflect.HasAttribute( type, typeof(TestFixtureAttribute) ) )
                    suite.AddTest(new TestSuite(type));
            }

            return suite;
        }
예제 #5
0
		private static void AddCategories(TestSuite suite, FilePath suiteDir, string prefix, string[] excludes, int optimizationLevel)
		{
			FilePath[] subdirs = suiteDir.ListFiles(ShellTest.DIRECTORY_FILTER);
			Arrays.Sort(subdirs);
			for (int i = 0; i < subdirs.Length; i++)
			{
				FilePath subdir = subdirs[i];
				string name = subdir.GetName();
				TestSuite testCategory = new TestSuite(name);
				AddTests(testCategory, subdir, prefix + name + "/", excludes, optimizationLevel);
				suite.AddTest(testCategory);
			}
		}
예제 #6
0
		private static void AddTests(TestSuite suite, FilePath suiteDir, string prefix, string[] excludes, int optimizationLevel)
		{
			FilePath[] jsFiles = suiteDir.ListFiles(ShellTest.TEST_FILTER);
			Arrays.Sort(jsFiles);
			for (int i = 0; i < jsFiles.Length; i++)
			{
				FilePath jsFile = jsFiles[i];
				string name = jsFile.GetName();
				if (!TestUtils.Matches(excludes, prefix + name))
				{
					suite.AddTest(new StandardTests.JsTestCase(jsFile, optimizationLevel));
				}
			}
		}
예제 #7
0
		private static void AddSuites(TestSuite topLevel, FilePath testDir, string[] excludes, int optimizationLevel)
		{
			FilePath[] subdirs = testDir.ListFiles(ShellTest.DIRECTORY_FILTER);
			Arrays.Sort(subdirs);
			for (int i = 0; i < subdirs.Length; i++)
			{
				FilePath subdir = subdirs[i];
				string name = subdir.GetName();
				if (TestUtils.Matches(excludes, name))
				{
					continue;
				}
				TestSuite testSuite = new TestSuite(name);
				AddCategories(testSuite, subdir, name + "/", excludes, optimizationLevel);
				topLevel.AddTest(testSuite);
			}
		}
예제 #8
0
		private static void AddTests(TestSuite suite, FilePath testDir, string name)
		{
			FilePath programFile = new FilePath(testDir, "program.js");
			if (programFile.IsFile())
			{
				suite.AddTest(CreateTest(testDir, name));
			}
			else
			{
				FilePath[] files = testDir.ListFiles();
				foreach (FilePath file in files)
				{
					if (file.IsDirectory())
					{
						AddTests(suite, file, name + "/" + file.GetName());
					}
				}
			}
		}