private void refreshTestList()
        {
            listBox1.Items.Clear();
            string path = cm.getTestsDir();

            if (!Directory.Exists(path))
            {
                Directory.CreateDirectory(path);
            }
            DirectoryInfo di = new DirectoryInfo(path);

            DirectoryInfo[] list = di.GetDirectories();

            for (int i = 0; i < list.Length; ++i)//只有目录根部包含test.va的文件才被加入
            {
                if ((list[i].GetFiles("test.vanilla", SearchOption.TopDirectoryOnly)).Length != 0)
                {
                    TestInfo cur = cm.getTestInfo(list[i].Name);
                    if (cur.Exists)
                    {
                        tests.Add(cm.getTestInfo(list[i].Name));
                    }
                }
            }

            refreshlist(tests);
            LabelTestCount.Text = tests.Count.ToString();

            //for()
        }
예제 #2
0
        public SubjectManager(String testdir, subject s, ConfigureManager cm)
        {
            sub = s;
            String        parentdir = cm.getTestsDir() + @"\" + testdir + @"\" + sub.folder + @"\";
            DirectoryInfo subdir    = new DirectoryInfo(parentdir + s.folder);

            if (!subdir.Exists)
            {
                Valid = false;
                return;
            }

            FileInfo[] indata = subdir.GetFiles("*.in");
            if (indata.Length == 0)
            {
                Valid = false;
                return;
            }

            ArrayList pl = new ArrayList();

            for (int i = 0; i < indata.Length; ++i)
            {
                if (File.Exists(parentdir + s.folder + @"\" + Path.GetFileNameWithoutExtension(indata[i].Name) + ".out"))
                {
                    pl.Add(Path.GetFileNameWithoutExtension(indata[i].Name));
                }
            }

            if (pl.Count == 0)
            {
                Valid = false;
                return;
            }

            Pointlist = (String[])pl.ToArray();
        }
        public SubjectManager(String testdir,subject s,ConfigureManager cm)
        {
            sub = s;
            String parentdir = cm.getTestsDir() + @"\" + testdir + @"\" + sub.folder + @"\";
            DirectoryInfo subdir = new DirectoryInfo( parentdir + s.folder);

            if (!subdir.Exists)
            {
                Valid = false;
                return;
            }

            FileInfo[] indata = subdir.GetFiles("*.in");
            if (indata.Length == 0)
            {
                Valid = false;
                return;
            }

            ArrayList pl = new ArrayList();
            for (int i = 0; i < indata.Length; ++i)
            {
                if (File.Exists(parentdir + s.folder + @"\" + Path.GetFileNameWithoutExtension(indata[i].Name) + ".out" ))
                {
                    pl.Add(Path.GetFileNameWithoutExtension(indata[i].Name));
                }
            }

            if (pl.Count == 0)
            {
                Valid = false;
                return;
            }

            Pointlist = (String[]) pl.ToArray();
        }