Esempio n. 1
0
        private GenericContainerBuilder GetParametersDivision(Command command)
        {
            GenericContainerBuilder division = GenericContainerBuilder.CreateDiv();

            ParameterInfo[] parameters = command.method.GetParameters();
            for (int i = 0; i < parameters.Length; i++)
            {
                ParameterInfo parameterInfo = parameters[i];

                if (!parameterInfo.ParameterType.IsAssignableFrom(typeof(MessageContext)))
                {
                    ParameterInfo nextParameter = (i < parameters.Length - 1) ? parameters[i + 1] : null;
                    if (parameterInfo.IsOptionalParameter(nextParameter))
                    {
                        division.TagContentBuilder.AddSection(GetParameterDiv(parameterInfo, true));
                    }
                    else
                    {
                        division.TagContentBuilder.AddSection(GetParameterDiv(parameterInfo, false));
                    }
                }
            }

            return(division);
        }
Esempio n. 2
0
        public DynamoDBContainerFixture()
        {
            disableTestContainers = Convert.ToBoolean(Environment.GetEnvironmentVariable("DISABLE_TESTCONTAINERS"));

            if (disableTestContainers)
            {
                string hostname = Environment.GetEnvironmentVariable("DYNAMODB_HOSTNAME");
                if (hostname == null)
                {
                    HostName = "localhost";
                }
                else
                {
                    HostName = hostname;
                }

                ServiceUrl = $"http://{HostName}:8000";
            }
            else
            {
                DynamoDbContainer = new GenericContainerBuilder <Container>()
                                    .Begin()
                                    .WithImage("amazon/dynamodb-local:latest")
                                    .WithExposedPorts(8000)
                                    .WithPortBindings((8000, 8000))
                                    .Build();

                ServiceUrl = $"http://{DynamoDbContainer.GetDockerHostIpAddress()}:{DynamoDbContainer.ExposedPorts[0]}";
            }
        }
 public MockServerRunner()
 {
     Container = new GenericContainerBuilder <MockServerContainer>()
                 .Begin()
                 .WithImage(MockServerContainer.ContainerImage)
                 .WithExposedPorts(MockServerContainer.ExposedPort)
                 .Build();
 }
Esempio n. 4
0
        private GenericContainerBuilder CreateNavigationIndex()
        {
            GenericContainerBuilder nav = GenericContainerBuilder.CreateNav();

            nav.TagContentBuilder.AddTag(
                GenericContainerBuilder.CreateHeading(GenericContainerBuilder.HeadingSize.MediumLarge).TagContentBuilder.AddText("Index").Parent
                ).AddTag(
                new AnchorBuilder("#regular").TagContentBuilder.AddText("&#9679;Normal").Parent
                ).AddBreak().AddTag(
                new AnchorBuilder("#admin").TagContentBuilder.AddText("&#9679;Admin").Parent
                ).AddBreak().AddTag(
                new AnchorBuilder("#nsfw").TagContentBuilder.AddText("&#9679;NSFW").Parent
                ).AddBreak().AddTag(
                new AnchorBuilder("#owner").TagContentBuilder.AddText("&#9679;Owner").Parent
                );

            return(nav);
        }
Esempio n. 5
0
        public DynamoDBContainerFixture()
        {
            disableTestContainers = Convert.ToBoolean(Environment.GetEnvironmentVariable("DISABLE_TESTCONTAINERS"));

            if (disableTestContainers)
            {
                ServiceUrl = LocalServiceUrl;
            }
            else
            {
                DynamoDbContainer = new GenericContainerBuilder <Container>()
                                    .Begin()
                                    .WithImage("amazon/dynamodb-local:latest")
                                    .WithExposedPorts(8000)
                                    .Build();

                ServiceUrl = $"http://{DynamoDbContainer.GetDockerHostIpAddress()}:{DynamoDbContainer.ExposedPorts[0]}";
            }
        }
Esempio n. 6
0
        private GenericContainerBuilder GetPermissionDivisions(Command command)
        {
            GenericContainerBuilder division = GenericContainerBuilder.CreateDiv();

            division.SetClass("permissions");

            foreach (Permission permission in Enum.GetValues(typeof(Permission)))
            {
                if (command.permissionFlag.HasFlag(permission))
                {
                    GenericContainerBuilder subDivision = GenericContainerBuilder.CreateDiv();
                    subDivision.TagContentBuilder.AddText(permission.ToString());
                    subDivision.SetClass("permission");
                    division.TagContentBuilder.AddSection(subDivision);
                }
            }

            return(division);
        }
Esempio n. 7
0
        private GenericContainerBuilder GetParameterDiv(ParameterInfo parameterInfo, bool isOptional)
        {
            GenericContainerBuilder paragraph = GenericContainerBuilder.CreateDiv();

            string className = "parameter";

            if (isOptional)
            {
                className += " optional-parameter";
            }
            paragraph.SetClass(className);

            string paragraphText = parameterInfo.Name;

            if (isOptional)
            {
                string defaultValueText;
                if (parameterInfo.DefaultValue == null || string.IsNullOrWhiteSpace(parameterInfo.DefaultValue.ToString()))
                {
                    defaultValueText = "none";
                }
                else
                {
                    defaultValueText = parameterInfo.DefaultValue.ToString();
                }

                paragraphText += $" = <span class=\"default-value\">{defaultValueText}</span>";
            }

            paragraph.TagContentBuilder.AddText(
                isOptional ? $"({paragraphText})" : $"[{paragraphText}]"
                );

            if (isOptional)
            {
                paragraph.SetTitle("Optional");
            }

            return(paragraph);
        }
Esempio n. 8
0
        private void WriteHelpFile()
        {
            using (HTMLBuilder builder = new HTMLBuilder(new HTMLDocument()))
            {
                builder.HeadBuilder
                .SetTitle("Tama Chan Documentation")
                .SetCSS(CreateCSS());

                builder.BodyBuilder.AddTag(CreateNavigationIndex());

                GenericContainerBuilder mainDiv = GenericContainerBuilder.CreateDiv().SetClass("content") as GenericContainerBuilder;
                TableBuilder[]          tables  = CreateTables();

                foreach (TableBuilder table in tables)
                {
                    mainDiv.TagContentBuilder.AddTag(table);
                }
                builder.BodyBuilder.AddTag(mainDiv);

                File.WriteAllText(HTML_HELP_FILE_PATH, builder.BuildHTML());
            }

            commands.Clear();
        }