Exemple #1
0
        private void AssertTextWriterFactoryMemberEquals(StringWriterFactory stringWriterFactory, string name, string resultExpected)
        {
            var    textWriterData = stringWriterFactory.GetTextWriterData(name);
            string result         = textWriterData.TextWriter.ToString();

            Assert.That(result, Is.EqualTo(resultExpected));
        }
Exemple #2
0
        public void SingleFileOutputCssFileWritingTest()
        {
            var stringWriterFactory = new StringWriterFactory();

            var settings = new AclExpanderApplicationSettings();

            settings.UseMultipleFileOutput = false;
            settings.Directory             = "";
            var application = new AclExpanderApplication(stringWriterFactory);

            application.Run(settings, TextWriter.Null, TextWriter.Null);

            // Single file HTML output => expect 2 files (CSS, HTML file)
            Assert.That(stringWriterFactory.Count, Is.EqualTo(2));

            const string   cssFileName = AclExpanderApplication.CssFileName;
            TextWriterData cssTextWriterData;
            bool           cssFileExists = stringWriterFactory.NameToTextWriterData.TryGetValue(cssFileName, out cssTextWriterData);

            Assert.That(cssFileExists, Is.True);

            string result = cssTextWriterData.TextWriter.ToString();

            //Clipboard.SetText (AclExpansionHtmlWriterTest.CreateLiteralResultExpectedString (result));
            Assert.That(result, Is.EqualTo(c_cssFileContent));
        }
Exemple #3
0
        public void TextWriterFactoryResultTest()
        {
            using (new CultureScope("en-US"))
            {
                var aclExpander           = new AclExpander();
                var aclExpansionEntryList = aclExpander.GetAclExpansionEntryList();
                var stringWriterFactory   = new StringWriterFactory();

                stringWriterFactory.Directory = "";
                stringWriterFactory.Extension = "xYz";

                var aclExpansionMultiFileHtmlWriter = new AclExpansionMultiFileHtmlWriter(stringWriterFactory, false);
                aclExpansionMultiFileHtmlWriter.WriteAclExpansion(aclExpansionEntryList);

                Assert.That(stringWriterFactory.Count, Is.EqualTo(7));

                AssertTextWriterFactoryMemberEquals(stringWriterFactory, "_AclExpansionMain_", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\" \"\"><html><head><title>re-motion ACL Expansion - User Master Table</title><style>@import \"AclExpansion.css\";</style><meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" /></head><body><table style=\"width: 100%;\" class=\"aclExpansionTable\" id=\"remotion-user-table\"><tr><th class=\"header\">User</th><th class=\"header\">First Name</th><th class=\"header\">Last Name</th><th class=\"header\">Access Rights</th></tr><tr><td>substituting.user</td><td></td><td>substitute</td><td><a href=\".\\substituting.user.xYz\" target=\"_blank\">.\\substituting.user.xYz</a></td></tr><tr><td>test.user</td><td>test</td><td>user</td><td><a href=\".\\test.user.xYz\" target=\"_blank\">.\\test.user.xYz</a></td></tr><tr><td>group0/user1</td><td></td><td>user1</td><td><a href=\".\\group0_user1.xYz\" target=\"_blank\">.\\group0_user1.xYz</a></td></tr><tr><td>group1/user1</td><td></td><td>user1</td><td><a href=\".\\group1_user1.xYz\" target=\"_blank\">.\\group1_user1.xYz</a></td></tr><tr><td>group0/user2</td><td></td><td>user2</td><td><a href=\".\\group0_user2.xYz\" target=\"_blank\">.\\group0_user2.xYz</a></td></tr><tr><td>group1/user2</td><td></td><td>user2</td><td><a href=\".\\group1_user2.xYz\" target=\"_blank\">.\\group1_user2.xYz</a></td></tr></table></body></html>");
                AssertTextWriterFactoryMemberEquals(stringWriterFactory, "test.user", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\" \"\"><html><head><title>re-motion ACL Expansion</title><style>@import \"AclExpansion.css\";</style><meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" /></head><body><table style=\"width: 100%;\" class=\"aclExpansionTable\" id=\"remotion-ACL-expansion-table\"><tr><th class=\"header\">User</th><th class=\"header\">Role</th><th class=\"header\">Class</th><th class=\"header\">States</th><th class=\"header\">User Must Own</th><th class=\"header\">Owning Group Equals</th><th class=\"header\">Owning Tenant Equals</th><th class=\"header\">User Must Have Abstract Role</th><th class=\"header\">Access Rights</th></tr><tr><td rowspan=\"8\">user test, Dipl.Ing.(FH)</td><td rowspan=\"2\">testGroup, Manager</td><td rowspan=\"2\">Order</td><td>DHL, None, Received</td><td></td><td></td><td></td><td></td><td>FirstAccessType</td></tr><tr><td>DHL, None, Received</td><td></td><td></td><td>TestTenant</td><td></td><td>FirstAccessType, Write</td></tr><tr><td rowspan=\"2\">testGroup, Official</td><td rowspan=\"2\">Order</td><td>DHL, None, Received</td><td></td><td></td><td></td><td></td><td>FirstAccessType</td></tr><tr><td>DHL, None, Received</td><td></td><td></td><td>TestTenant</td><td></td><td>FirstAccessType, Write</td></tr><tr><td rowspan=\"2\">testOwningGroup, Manager</td><td rowspan=\"2\">Order</td><td>DHL, None, Received</td><td></td><td></td><td></td><td></td><td>FirstAccessType</td></tr><tr><td>DHL, None, Received</td><td></td><td></td><td>TestTenant</td><td></td><td>FirstAccessType, Write</td></tr><tr><td rowspan=\"2\">testRootGroup, Official</td><td rowspan=\"2\">Order</td><td>DHL, None, Received</td><td></td><td></td><td></td><td></td><td>FirstAccessType</td></tr><tr><td>DHL, None, Received</td><td></td><td></td><td>TestTenant</td><td></td><td>FirstAccessType, Write</td></tr></table></body></html>");
                AssertTextWriterFactoryMemberEquals(stringWriterFactory, "group0_user1", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\" \"\"><html><head><title>re-motion ACL Expansion</title><style>@import \"AclExpansion.css\";</style><meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" /></head><body><table style=\"width: 100%;\" class=\"aclExpansionTable\" id=\"remotion-ACL-expansion-table\"><tr><th class=\"header\">User</th><th class=\"header\">Role</th><th class=\"header\">Class</th><th class=\"header\">States</th><th class=\"header\">User Must Own</th><th class=\"header\">Owning Group Equals</th><th class=\"header\">Owning Tenant Equals</th><th class=\"header\">User Must Have Abstract Role</th><th class=\"header\">Access Rights</th></tr><tr><td rowspan=\"2\">user1</td><td rowspan=\"2\">PG0 (parentGroup0), Manager</td><td rowspan=\"2\">Order</td><td>DHL, None, Received</td><td></td><td></td><td></td><td></td><td>FirstAccessType</td></tr><tr><td>DHL, None, Received</td><td></td><td></td><td>TestTenant</td><td></td><td>FirstAccessType, Write</td></tr></table></body></html>");
                AssertTextWriterFactoryMemberEquals(stringWriterFactory, "group1_user1", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\" \"\"><html><head><title>re-motion ACL Expansion</title><style>@import \"AclExpansion.css\";</style><meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" /></head><body><table style=\"width: 100%;\" class=\"aclExpansionTable\" id=\"remotion-ACL-expansion-table\"><tr><th class=\"header\">User</th><th class=\"header\">Role</th><th class=\"header\">Class</th><th class=\"header\">States</th><th class=\"header\">User Must Own</th><th class=\"header\">Owning Group Equals</th><th class=\"header\">Owning Tenant Equals</th><th class=\"header\">User Must Have Abstract Role</th><th class=\"header\">Access Rights</th></tr><tr><td rowspan=\"2\">user1</td><td rowspan=\"2\">PG1 (parentGroup1), Manager</td><td rowspan=\"2\">Order</td><td>DHL, None, Received</td><td></td><td></td><td></td><td></td><td>FirstAccessType</td></tr><tr><td>DHL, None, Received</td><td></td><td></td><td>TestTenant</td><td></td><td>FirstAccessType, Write</td></tr></table></body></html>");
                AssertTextWriterFactoryMemberEquals(stringWriterFactory, "group0_user2", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\" \"\"><html><head><title>re-motion ACL Expansion</title><style>@import \"AclExpansion.css\";</style><meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" /></head><body><table style=\"width: 100%;\" class=\"aclExpansionTable\" id=\"remotion-ACL-expansion-table\"><tr><th class=\"header\">User</th><th class=\"header\">Role</th><th class=\"header\">Class</th><th class=\"header\">States</th><th class=\"header\">User Must Own</th><th class=\"header\">Owning Group Equals</th><th class=\"header\">Owning Tenant Equals</th><th class=\"header\">User Must Have Abstract Role</th><th class=\"header\">Access Rights</th></tr><tr><td rowspan=\"2\">user2</td><td rowspan=\"2\">PG0 (parentGroup0), Official</td><td rowspan=\"2\">Order</td><td>DHL, None, Received</td><td></td><td></td><td></td><td></td><td>FirstAccessType</td></tr><tr><td>DHL, None, Received</td><td></td><td></td><td>TestTenant</td><td></td><td>FirstAccessType, Write</td></tr></table></body></html>");
                AssertTextWriterFactoryMemberEquals(stringWriterFactory, "group1_user2", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\" \"\"><html><head><title>re-motion ACL Expansion</title><style>@import \"AclExpansion.css\";</style><meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" /></head><body><table style=\"width: 100%;\" class=\"aclExpansionTable\" id=\"remotion-ACL-expansion-table\"><tr><th class=\"header\">User</th><th class=\"header\">Role</th><th class=\"header\">Class</th><th class=\"header\">States</th><th class=\"header\">User Must Own</th><th class=\"header\">Owning Group Equals</th><th class=\"header\">Owning Tenant Equals</th><th class=\"header\">User Must Have Abstract Role</th><th class=\"header\">Access Rights</th></tr><tr><td rowspan=\"2\">user2</td><td rowspan=\"2\">PG1 (parentGroup1), Official</td><td rowspan=\"2\">Order</td><td>DHL, None, Received</td><td></td><td></td><td></td><td></td><td>FirstAccessType</td></tr><tr><td>DHL, None, Received</td><td></td><td></td><td>TestTenant</td><td></td><td>FirstAccessType, Write</td></tr></table></body></html>");
            }
        }