public void EqualsLine2doubleTrue()
    {
        var p1 = new Point2double(1, 2);
        var p2 = new Point2double(3, 4);
        var l1 = new Line2double(p1, p2);
        var l2 = new Line2double(p1, p2);

        Assert.True(l1.Equals(l2));
    }
    public void OperatorNotEqualsFalse()
    {
        var p1 = new Point2double(1, 2);
        var p2 = new Point2double(3, 4);
        var l1 = new Line2double(p1, p2);
        var l2 = new Line2double(p1, p2);

        Assert.False(l1 != l2);
    }
    public void OperatorEqualsTrue()
    {
        var p1 = new Point2double(1, 2);
        var p2 = new Point2double(3, 4);
        var l1 = new Line2double(p1, p2);
        var l2 = new Line2double(p1, p2);

        Assert.True(l1 == l2);
    }
    public void EqualsLine2doubleFalse()
    {
        var p1 = new Point2double(1, 2);
        var p2 = new Point2double(3, 4);
        var p3 = new Point2double(5, 5);
        var l1 = new Line2double(p1, p2);
        var l2 = new Line2double(p1, p3);

        Assert.False(l1.Equals(l2));
    }
    public void Line2doubleConstructorPointSlope()
    {
        var p1     = new Point2double(1, 2);
        var p2     = new Point2double(0, 1.5);
        var slope  = 0.5;
        var actual = new Line2double(p1, slope);

        Assert.Equal(p1, actual.P1);
        Assert.Equal(p2, actual.P2);
    }