示例#1
0
        public CspOptions()
        {
            Script  = new CspScriptSrcOptions();
            Style   = new CspStyleSrcOptions();
            Default = new CspDefaultSrcOptions();
#pragma warning disable CS0618 // Type or member is obsolete
            Child = new CspChildSrcOptions();
#pragma warning restore CS0618 // Type or member is obsolete
            Connect         = new CspConnectSrcOptions();
            Manifest        = new CspManifestSrcOptions();
            Font            = new CspFontSrcOptions();
            FormAction      = new CspFormActionOptions();
            Img             = new CspImgSrcOptions();
            Media           = new CspMediaSrcOptions();
            Object          = new CspObjectSrcOptions();
            FrameAncestors  = new CspFrameAncestorsOptions();
            PluginTypes     = new CspPluginTypesOptions();
            Sandbox         = new CspSandboxOptions();
            RequireSri      = new CspRequireSriOptions();
            Frame           = new CspFrameSrcOptions();
            Worker          = new CspWorkerSrcOptions();
            Prefetch        = new CspPrefetchSrcOptions();
            BaseUri         = new CspBaseUriOptions();
            OnSendingHeader = context => Task.CompletedTask;
        }
        public void FromAnywhere_SetsAllowAnyToTrue()
        {
            var builder = new CspStylesBuilder();

            builder.FromAnywhere();
            CspStyleSrcOptions options = builder.BuildOptions();

            Assert.True(options.AllowAny);
        }
        public void OnlyOverHttps_SetsAllowOnlyHttpsToTrue()
        {
            var builder = new CspStylesBuilder();

            builder.OnlyOverHttps();
            CspStyleSrcOptions options = builder.BuildOptions();

            Assert.True(options.AllowOnlyHttps);
        }
        public void AddNonce_SetsAddNonceToTrue()
        {
            var builder = new CspStylesBuilder();

            builder.AddNonce();
            CspStyleSrcOptions options = builder.BuildOptions();

            Assert.True(options.AddNonce);
        }
        public void AllowUnsafeInline_SetsUnsafeInlineToTrue()
        {
            var builder = new CspStylesBuilder();

            builder.AllowUnsafeInline();
            CspStyleSrcOptions options = builder.BuildOptions();

            Assert.True(options.AllowUnsafeInline);
        }
        public void From_AddsUrlToAllowedSources()
        {
            var builder = new CspStylesBuilder();

            builder.From("www.google.com");
            CspStyleSrcOptions options = builder.BuildOptions();

            Assert.Equal("www.google.com", options.AllowedSources.Single());
        }
        public void FromSelf_SetsAllowSelfToTrue()
        {
            var builder = new CspStylesBuilder();

            builder.FromSelf();
            CspStyleSrcOptions options = builder.BuildOptions();

            Assert.True(options.AllowSelf);
        }
示例#8
0
 public CspOptions()
 {
     Script         = new CspScriptSrcOptions();
     Style          = new CspStyleSrcOptions();
     Default        = new CspDefaultSrcOptions();
     Child          = new CspChildSrcOptions();
     Connect        = new CspConnectSrcOptions();
     Font           = new CspFontSrcOptions();
     FormAction     = new CspFormActionOptions();
     Img            = new CspImgSrcOptions();
     Media          = new CspMediaSrcOptions();
     Object         = new CspObjectSrcOptions();
     FrameAncestors = new CspFrameAncestorsOptions();
     PluginTypes    = new CspPluginTypesOptions();
     Sandbox        = new CspSandboxOptions();
 }