Пример #1
0
        public void TestCannotOpenContentInFileType()
        {
            Workshare.Policy.Condition.ContentAnalysis analysis = new Workshare.Policy.Condition.ContentAnalysis();
            string[] fileTypes = { "RTFDocument", "XMLDocument" };

            string filename = Workshare.TestUtils.TestFileUtils.MakeRootPathAbsolute(@"\projects\Hygiene\src\ContentAnalysis.Tests\docs\TestDocument1.doc");
            string description = "Originally a test document used by one of FCS Lite's tests.";

            using (IFile testFile = Workshare.Policy.Engine.FileFactory.Create(filename, description))
            {
                //file type is incorrect, not password protected
                Assert.IsFalse(analysis.CannotOpenContentInFileType(testFile, fileTypes), "unexpected result in 'incorrect file type, not password protected'");

                //file type is correct, not password protected
                fileTypes = new string[] { "XMLDocument", "WordDocument", "RTFDocument"};
                Assert.IsFalse(analysis.CannotOpenContentInFileType(testFile, fileTypes), "unexpected result in 'correct file type, not password protected'");
            }

            filename = Workshare.TestUtils.TestFileUtils.MakeRootPathAbsolute(@"\projects\Hygiene\src\ContentAnalysis.Tests\docs\PasswordProtectedDoc.doc");
            description = "A password protected file";
            using (IFile testFile = Workshare.Policy.Engine.FileFactory.Create(filename, description))
            {
                //file type is correct and document is password protected - nominal .doc case
                Assert.IsTrue(analysis.CannotOpenContentInFileType(testFile, fileTypes), "unexpected result in 'incorrect file type, not password protected'");

                //file type is incorrect, password protected
                fileTypes = new string[] { "RTFDocument", "ExcelSpreadsheet" };
                Assert.IsFalse(analysis.CannotOpenContentInFileType(testFile, fileTypes), "unexpected result in 'incorrect file type, not password protected'");
            }      

            //nominal xls
            filename = Workshare.TestUtils.TestFileUtils.MakeRootPathAbsolute(@"\projects\Hygiene\src\ContentAnalysis.Tests\docs\PasswordProtected.xls");
            description = "A password protected file";
            using (IFile testFile = Workshare.Policy.Engine.FileFactory.Create(filename, description))
            {
                //file type is correct and document is password protected
                fileTypes = new string[] { "ExcelSheet", "PowerPoint", "PDFDocument", "ZIP", "RTFDocument" };
                Assert.IsTrue(analysis.CannotOpenContentInFileType(testFile, fileTypes), "unexpected result on xls");
            }      

            //nominal ppt
            filename = Workshare.TestUtils.TestFileUtils.MakeRootPathAbsolute(@"\projects\Hygiene\src\ContentAnalysis.Tests\docs\PasswordProtected.ppt");
            description = "A password protected file";
            using (IFile testFile = Workshare.Policy.Engine.FileFactory.Create(filename, description))
            {
                //file type is correct and document is password protected
                Assert.IsTrue(analysis.CannotOpenContentInFileType(testFile, fileTypes), "unexpected result on ppt");
            }      

            //nominal pdf
            filename = Workshare.TestUtils.TestFileUtils.MakeRootPathAbsolute(@"\projects\Hygiene\src\ContentAnalysis.Tests\docs\PasswordProtected.pdf");
            description = "A password protected file";
            using (IFile testFile = Workshare.Policy.Engine.FileFactory.Create(filename, description))
            {
                //file type is correct and document is password protected
                Assert.IsTrue(analysis.CannotOpenContentInFileType(testFile, fileTypes), "unexpected result on pdf");
            }      

            //nominal zip
            filename = Workshare.TestUtils.TestFileUtils.MakeRootPathAbsolute(@"\projects\Hygiene\src\ContentAnalysis.Tests\docs\PasswordProtected.zip");
            description = "A password protected file";
            using (IFile testFile = Workshare.Policy.Engine.FileFactory.Create(filename, description))
            {
                //file type is correct and document is password protected
                Assert.IsTrue(analysis.CannotOpenContentInFileType(testFile, fileTypes), "unexpected result on zip");
            }      

            //nominal rtf
            filename = Workshare.TestUtils.TestFileUtils.MakeRootPathAbsolute(@"\projects\Hygiene\src\ContentAnalysis.Tests\docs\profanity.rtf");
            description = "A password protected file";
            using (IFile testFile = Workshare.Policy.Engine.FileFactory.Create(filename, description))
            {
                //file type is correct and document is password protected
                Assert.IsFalse(analysis.CannotOpenContentInFileType(testFile, fileTypes), "unexpected result on rtf");
            }      

            //nominal text
            filename = Workshare.TestUtils.TestFileUtils.MakeRootPathAbsolute(@"\projects\Hygiene\src\ContentAnalysis.Tests\docs\TestDocument.txt");
            description = "A password protected file";
            using (IFile testFile = Workshare.Policy.Engine.FileFactory.Create(filename, description))
            {
                //file type is correct and document is password protected
                Assert.IsFalse(analysis.CannotOpenContentInFileType(testFile, fileTypes), "unexpected result on rtf");
            }
        }