mirror of
https://github.com/gui-cs/Terminal.Gui.git
synced 2025-12-27 00:07:58 +01:00
115 lines
2.4 KiB
C#
115 lines
2.4 KiB
C#
using System;
|
|
using Xunit;
|
|
|
|
namespace Terminal.Gui {
|
|
public class RectTests {
|
|
[Fact]
|
|
public void Rect_New ()
|
|
{
|
|
var rect = new Rect ();
|
|
Assert.True (rect.IsEmpty);
|
|
|
|
rect = new Rect (new Point (), new Size ());
|
|
Assert.True (rect.IsEmpty);
|
|
|
|
rect = new Rect (1, 2, 3, 4);
|
|
Assert.False (rect.IsEmpty);
|
|
|
|
rect = new Rect (-1, -2, 3, 4);
|
|
Assert.False (rect.IsEmpty);
|
|
|
|
Action action = () => new Rect (1, 2, -3, 4);
|
|
var ex = Assert.Throws<ArgumentException> (action);
|
|
Assert.Equal ("Width must be greater or equal to 0.", ex.Message);
|
|
|
|
action = () => new Rect (1, 2, 3, -4);
|
|
ex = Assert.Throws<ArgumentException> (action);
|
|
Assert.Equal ("Height must be greater or equal to 0.", ex.Message);
|
|
|
|
action = () => new Rect (1, 2, -3, -4);
|
|
ex = Assert.Throws<ArgumentException> (action);
|
|
Assert.Equal ("Width must be greater or equal to 0.", ex.Message);
|
|
|
|
}
|
|
|
|
[Fact]
|
|
public void Rect__SetsValue ()
|
|
{
|
|
var rect = new Rect () {
|
|
X = 0,
|
|
Y = 0
|
|
};
|
|
Assert.True (rect.IsEmpty);
|
|
|
|
rect = new Rect () {
|
|
X = -1,
|
|
Y = -2
|
|
};
|
|
Assert.False (rect.IsEmpty);
|
|
|
|
rect = new Rect () {
|
|
Width = 3,
|
|
Height = 4
|
|
};
|
|
Assert.False (rect.IsEmpty);
|
|
|
|
rect = new Rect () {
|
|
X = -1,
|
|
Y = -2,
|
|
Width = 3,
|
|
Height = 4
|
|
};
|
|
Assert.False (rect.IsEmpty);
|
|
|
|
Action action = () => {
|
|
rect = new Rect () {
|
|
X = -1,
|
|
Y = -2,
|
|
Width = -3,
|
|
Height = 4
|
|
};
|
|
};
|
|
var ex = Assert.Throws<ArgumentException> (action);
|
|
Assert.Equal ("Width must be greater or equal to 0.", ex.Message);
|
|
|
|
action = () => {
|
|
rect = new Rect () {
|
|
X = -1,
|
|
Y = -2,
|
|
Width = 3,
|
|
Height = -4
|
|
};
|
|
};
|
|
ex = Assert.Throws<ArgumentException> (action);
|
|
Assert.Equal ("Height must be greater or equal to 0.", ex.Message);
|
|
|
|
action = () => {
|
|
rect = new Rect () {
|
|
X = -1,
|
|
Y = -2,
|
|
Width = -3,
|
|
Height = -4
|
|
};
|
|
};
|
|
ex = Assert.Throws<ArgumentException> (action);
|
|
Assert.Equal ("Width must be greater or equal to 0.", ex.Message);
|
|
}
|
|
|
|
[Fact]
|
|
public void Rect_Equals ()
|
|
{
|
|
var rect1 = new Rect ();
|
|
var rect2 = new Rect ();
|
|
Assert.Equal (rect1, rect2);
|
|
|
|
rect1 = new Rect (1, 2, 3, 4);
|
|
rect2 = new Rect (1, 2, 3, 4);
|
|
Assert.Equal (rect1, rect2);
|
|
|
|
rect1 = new Rect (1, 2, 3, 4);
|
|
rect2 = new Rect (-1, 2, 3, 4);
|
|
Assert.NotEqual (rect1, rect2);
|
|
}
|
|
}
|
|
}
|