Example #1
0
        private BlockSyntax EvaluateStatements(string[] statements)
        {
            var statementsTemplate = new CreateStatements();

            statementsTemplate.statements = statements.ToList();
            var methodStr  = statementsTemplate.TransformText();
            var tempMethod = CSharpSyntaxTree.ParseText(methodStr).GetRoot();

            return(tempMethod.DescendantNodes().OfType <BlockSyntax>().First());
        }
    public void GenerateWithClause_ValueDelimiter()
    {
        //Arrange
        var metadata = new CreationMetadata
        {
            ValueDelimiter = "SPACE"
        };

        //Act
        var withClause = CreateStatements.GenerateWithClause(metadata);

        //Assert
        withClause.Should().BeEquivalentTo(@$ " WITH ( VALUE_DELIMITER='{metadata.ValueDelimiter}' )");
    }
    public void GenerateWithClause_Replicas()
    {
        //Arrange
        var metadata = new CreationMetadata
        {
            Replicas = 3
        };

        //Act
        var withClause = CreateStatements.GenerateWithClause(metadata);

        //Assert
        withClause.Should().BeEquivalentTo(@$ " WITH ( REPLICAS='{metadata.Replicas}' )");
    }
    public void GenerateWithClause_Partitions()
    {
        //Arrange
        var metadata = new CreationMetadata
        {
            Partitions = 3
        };

        //Act
        var withClause = CreateStatements.GenerateWithClause(metadata);

        //Assert
        withClause.Should().BeEquivalentTo(@$ " WITH ( PARTITIONS='{metadata.Partitions}' )");
    }
    public void GenerateWithClause_ValueFormat()
    {
        //Arrange
        var metadata = new CreationMetadata
        {
            ValueFormat = SerializationFormats.Json,
        };

        //Act
        var withClause = CreateStatements.GenerateWithClause(metadata);

        //Assert
        withClause.Should().BeEquivalentTo(@$ " WITH ( VALUE_FORMAT='{metadata.ValueFormat}' )");
    }
    public void GenerateWithClause_ValueSchemaFullName()
    {
        //Arrange
        var metadata = new CreationMetadata
        {
            ValueSchemaFullName = "ProductInfo"
        };

        //Act
        var withClause = CreateStatements.GenerateWithClause(metadata);

        //Assert
        withClause.Should().BeEquivalentTo(@$ " WITH ( VALUE_SCHEMA_FULL_NAME={metadata.ValueSchemaFullName} )");
    }
    public void GenerateWithClause_ValueSchemaId()
    {
        //Arrange
        var metadata = new CreationMetadata
        {
            ValueSchemaId = 2
        };

        //Act
        var withClause = CreateStatements.GenerateWithClause(metadata);

        //Assert
        withClause.Should().BeEquivalentTo(@$ " WITH ( VALUE_SCHEMA_ID={metadata.ValueSchemaId} )");
    }
    public void GenerateWithClause_WindowSize()
    {
        //Arrange
        var metadata = new EntityCreationMetadata
        {
            WindowSize = "10 MINUTES"
        };

        //Act
        var withClause = CreateStatements.GenerateWithClause(metadata);

        //Assert
        withClause.Should().BeEquivalentTo(@$ " WITH ( WINDOW_SIZE='{metadata.WindowSize}', VALUE_FORMAT='Json' )");
    }
    public void GenerateWithClause_WindowType()
    {
        //Arrange
        var metadata = new EntityCreationMetadata
        {
            WindowType = WindowType.Hopping
        };

        //Act
        var withClause = CreateStatements.GenerateWithClause(metadata);

        //Assert
        withClause.Should().BeEquivalentTo(@$ " WITH ( WINDOW_TYPE='{metadata.WindowType}', VALUE_FORMAT='Json' )");
    }
    public void GenerateWithClause_WrapSingleValue()
    {
        //Arrange
        var metadata = new CreationMetadata
        {
            WrapSingleValue = true
        };

        //Act
        var withClause = CreateStatements.GenerateWithClause(metadata);

        //Assert
        withClause.Should().BeEquivalentTo(@$ " WITH ( WRAP_SINGLE_VALUE='{metadata.WrapSingleValue}' )");
    }
    public void GenerateWithClause_TimestampFormat()
    {
        //Arrange
        var metadata = new CreationMetadata
        {
            TimestampFormat = "yyyy-MM-dd''T''HH:mm:ssX"
        };

        //Act
        var withClause = CreateStatements.GenerateWithClause(metadata);

        //Assert
        withClause.Should().BeEquivalentTo(@$ " WITH ( TIMESTAMP_FORMAT='{metadata.TimestampFormat}' )");
    }
    public void GenerateWithClause_KafkaTopic()
    {
        //Arrange
        var metadata = new CreationMetadata
        {
            KafkaTopic = "tweetsByTitle"
        };

        //Act
        var withClause = CreateStatements.GenerateWithClause(metadata);

        //Assert
        withClause.Should().BeEquivalentTo(@$ " WITH ( KAFKA_TOPIC='{metadata.KafkaTopic}' )");
    }
    public void GenerateWithClause_Timestamp()
    {
        //Arrange
        var metadata = new CreationMetadata
        {
            Timestamp = "t2"
        };

        //Act
        var withClause = CreateStatements.GenerateWithClause(metadata);

        //Assert
        withClause.Should().BeEquivalentTo(@$ " WITH ( TIMESTAMP='{metadata.Timestamp}' )");
    }
    public void GenerateWithClause_MultipleValues_AreSeparated()
    {
        //Arrange
        var metadata = new CreationMetadata
        {
            TimestampFormat = "yyyy-MM-dd''T''HH:mm:ssX",
            WrapSingleValue = true
        };

        //Act
        var withClause = CreateStatements.GenerateWithClause(metadata);

        //Assert
        withClause.Should().BeEquivalentTo(@$ " WITH ( TIMESTAMP_FORMAT='{metadata.TimestampFormat}', WRAP_SINGLE_VALUE='{metadata.WrapSingleValue}' )");
    }
Example #15
0
    public IAsClause With(CreationMetadata creationMetadata)
    {
        string withClause = CreateStatements.GenerateWithClause(creationMetadata);

        statementContext.Statement = @$ "{statementContext.Statement}
{withClause}";