Skip to content

Commit

Permalink
Add some testing for WordTextBox
Browse files Browse the repository at this point in the history
  • Loading branch information
PrzemyslawKlys committed Jan 21, 2024
1 parent 97f31d8 commit 1913f5c
Showing 1 changed file with 92 additions and 0 deletions.
92 changes: 92 additions & 0 deletions OfficeIMO.Tests/Word.TextBox.cs
Original file line number Diff line number Diff line change
Expand Up @@ -272,5 +272,97 @@ public void Test_CreatingWordDocumentWithTextBoxBorders() {
Assert.True(document.TextBoxes.Count == 1);
}
}

[Fact]
public void Test_CreatingWordDocumentWithTextBoxInSectionsAndHeaders() {
string filePath = Path.Combine(_directoryWithFiles, "CreateDocumentWithTextBoxesInSectionsAndHeaders.docx");
using (WordDocument document = WordDocument.Create(filePath)) {

document.AddHeadersAndFooters();

Assert.True(document.Sections.Count == 1);

document.AddPageBreak();
document.AddSection();

Assert.True(document.Sections.Count == 2);

document.AddTextBox("This is a textbox");

Assert.True(document.Sections[0].TextBoxes.Count == 0);
Assert.True(document.Sections[1].TextBoxes.Count == 1);

document.Sections[0].AddTextBox("This is a textbox in section 0");

Assert.True(document.Sections[0].TextBoxes.Count == 1);
Assert.True(document.Sections[1].TextBoxes.Count == 1);
Assert.True(document.TextBoxes.Count == 2);

document.AddPageBreak();
document.AddSection();

document.Save(false);

Assert.True(HasUnexpectedElements(document) == false, "Document has unexpected elements. Order of elements matters!");
}
using (WordDocument document = WordDocument.Load(Path.Combine(_directoryWithFiles, "CreateDocumentWithTextBoxesInSectionsAndHeaders.docx"))) {
Assert.True(document.Sections[0].TextBoxes.Count == 1);
Assert.True(document.Sections[1].TextBoxes.Count == 1);
Assert.True(document.TextBoxes.Count == 2);

var textBox2 = document.AddTextBox("My textbox 2 right - square", WrapTextImage.Square);
textBox2.HorizontalPositionRelativeFrom = HorizontalRelativePositionValues.Page;
textBox2.HorizontalAlignment = HorizontalAlignmentValues.Right;
textBox2.VerticalPositionOffsetCentimeters = 6;

Assert.True(textBox2.WrapText == WrapTextImage.Square);

var textBox3 = document.AddTextBox("My textbox 3 center - tight", WrapTextImage.Tight);
textBox3.HorizontalPositionRelativeFrom = HorizontalRelativePositionValues.Page;
textBox3.HorizontalAlignment = HorizontalAlignmentValues.Center;
textBox3.VerticalPositionOffsetCentimeters = 6;

Assert.True(textBox3.WrapText == WrapTextImage.Tight);

var textBox4 = document.AddTextBox("My textbox 4 left - behind text", WrapTextImage.BehindText);
textBox4.HorizontalPositionRelativeFrom = HorizontalRelativePositionValues.Page;
textBox4.HorizontalAlignment = HorizontalAlignmentValues.Left;
textBox4.VerticalPositionOffsetCentimeters = 9;

Assert.True(textBox4.WrapText == WrapTextImage.BehindText);

var textBox5 = document.AddTextBox("My textbox 5 right - in front of text", WrapTextImage.InFrontOfText);
textBox5.HorizontalPositionRelativeFrom = HorizontalRelativePositionValues.Page;
textBox5.HorizontalAlignment = HorizontalAlignmentValues.Right;
textBox5.VerticalPositionOffsetCentimeters = 9;

Assert.True(textBox5.WrapText == WrapTextImage.InFrontOfText);

var textBox6 = document.AddTextBox("My textbox 6 left - top and bottom", WrapTextImage.TopAndBottom);
textBox6.HorizontalPositionRelativeFrom = HorizontalRelativePositionValues.Page;
textBox6.HorizontalAlignment = HorizontalAlignmentValues.Left;
textBox6.VerticalPositionOffsetCentimeters = 12;

Assert.True(textBox6.WrapText == WrapTextImage.TopAndBottom);

var textBox7 = document.AddTextBox("My textbox 7 right - through", WrapTextImage.Through);
textBox7.HorizontalPositionRelativeFrom = HorizontalRelativePositionValues.Page;
textBox7.HorizontalAlignment = HorizontalAlignmentValues.Right;
textBox7.VerticalPositionOffsetCentimeters = 12;

Assert.True(textBox7.WrapText == WrapTextImage.Through);

Assert.True(document.Sections[0].TextBoxes.Count == 1);
Assert.True(document.Sections[1].TextBoxes.Count == 1);
Assert.True(document.Sections[2].TextBoxes.Count == 6);
Assert.True(document.TextBoxes.Count == 8);

document.Save();
}
using (WordDocument document = WordDocument.Load(Path.Combine(_directoryWithFiles, "CreateDocumentWithTextBoxesInSectionsAndHeaders.docx"))) {


}
}
}
}

0 comments on commit 1913f5c

Please sign in to comment.