Skip to content

Commit 0f60bb6

Browse files
committed
added Multiple_IF_Condition_Blocks support
1 parent d8b2ce0 commit 0f60bb6

1 file changed

Lines changed: 33 additions & 0 deletions

File tree

ObjectSemantics.NET.Tests/ObjectSemanticsTests.cs

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -708,6 +708,39 @@ public void Should_Act_On_IfCondition_Having_Multiple_IF_Condition_Blocks_Single
708708
Assert.Equal(expectedResult, generatedTemplate, false, true, true);
709709
}
710710

711+
[Theory]
712+
[InlineData(null)]
713+
[InlineData("John Doe")]
714+
[InlineData("")]
715+
public void Should_Act_On_IfCondition_Having_Multiple_IF_Condition_Blocks_MultiLine(string studentName)
716+
{
717+
//Create Model
718+
Student student = new Student { StudentName = studentName };
719+
//Template
720+
var template = new ObjectSemanticsTemplate
721+
{
722+
FileContents = @"
723+
#Test 1
724+
{{ #if(StudentName!=NULL) }}
725+
--ok-passed--
726+
{{ #else }}
727+
--error-failed--
728+
{{ #endif }}
729+
#Test 2
730+
{{ #if(StudentName==John Doe) }}
731+
--I am, John Doe--
732+
{{ #else }}
733+
--I am NOT--
734+
{{ #endif }}"
735+
736+
};
737+
string generatedTemplate = TemplateMapper.Map(student, template);
738+
string expectedResult = (studentName == "John Doe")
739+
?
740+
"\r\n#Test 1\r\n\r\n--ok-passed--\r\n\r\n#Test 2\r\n\r\n--I am, John Doe--\r\n"
741+
: "\r\n#Test 1\r\n\r\n--error-failed--\r\n\r\n#Test 2\r\n\r\n--I am NOT--\r\n";
742+
Assert.Equal(expectedResult, generatedTemplate, false, true, true);
743+
}
711744
#endregion
712745
}
713746
}

0 commit comments

Comments
 (0)