#include "testplanimetrycalculus.h"

namespace TestPlanimetryCalculus {
    void test(){
        using namespace PlanimetryCalculus;

        QLineF line(QPointF(0,0), QPointF(1,0));

        IntersectType type;
        QPointF point;
        bool retVal = intersects(line, QLineF(QPointF(0, 0.1), QPointF(1, 0.1)), point, type);
        qDebug("false %i", retVal);
        retVal = intersects(line, QLineF(QPointF(0, 0), QPointF(0, 0)), point, type);
        qDebug("true %i", retVal);
        retVal = intersects(line, QLineF(QPointF(0, 0), QPointF(0, 1)), point, type);
        qDebug("true %i", retVal);
        retVal = intersects(line, QLineF(QPointF(0, 1), QPointF(0, -1)), point, type);
        qDebug("true %i", retVal);
        retVal = intersects(line, QLineF(QPointF(0, 1), QPointF(1, -1)), point, type);
        qDebug("true %i", retVal);
        retVal = intersects(line, QLineF(QPointF(0, -1), QPointF(1, 1)), point, type);
        qDebug("true %i", retVal);
        retVal = intersects(line, QLineF(QPointF(0, 0), QPointF(1, 1)), point, type);
        qDebug("true %i", retVal);
        retVal = intersects(line, QLineF(QPointF(0, -1), QPointF(1, 0)), point, type);
        qDebug("true %i", retVal);
        retVal = intersects(line, QLineF(QPointF(0, 1), QPointF(1, -1)), point, type);
        qDebug("true %i", retVal);
        retVal = intersects(line, QLineF(QPointF(1, 1), QPointF(0, -1)), point, type);
        qDebug("true %i", retVal);
        retVal = intersects(line, QLineF(QPointF(1, 1), QPointF(0, 0)), point, type);
        qDebug("true %i", retVal);
        retVal = intersects(line, QLineF(QPointF(1, 0), QPointF(0, -1)), point, type);
         qDebug("true %i", retVal);
        retVal = intersects(line, QLineF(QPointF(0, 1), QPointF(1, 0)), point, type);
        qDebug("true %i", retVal);
        retVal = intersects(line, QLineF(QPointF(0, -1), QPointF(1, 0)), point, type);
        qDebug("true %i", retVal);
        retVal = intersects(line, QLineF(QPointF(0, -1), QPointF(1, 0)), point, type);
        qDebug("true %i", retVal);
        retVal = intersects(line, QLineF(QPointF(0.5, 0), QPointF(1, 1)), point, type);
        qDebug("true %i", retVal);
    }

}
