diff options
author | Sean Harmer <sean.harmer@kdab.com> | 2013-08-16 17:57:38 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-08-27 17:50:40 +0200 |
commit | a70c0ad1d15e1346f7784f4e720bbe460af85c17 (patch) | |
tree | a5c2e1c59a2d2c1977d1cd922f15ccdfcb46696a /tests | |
parent | e0f2603f49b17eb4e562ec81e92796e3b2435490 (diff) |
Add operator[] to QVectorND classes
Change-Id: Ia786d4fab64da974bb60f24c05325925d42a1e70
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/gui/math3d/qvectornd/tst_qvectornd.cpp | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/tests/auto/gui/math3d/qvectornd/tst_qvectornd.cpp b/tests/auto/gui/math3d/qvectornd/tst_qvectornd.cpp index 0041ad0015..57c4c094a2 100644 --- a/tests/auto/gui/math3d/qvectornd/tst_qvectornd.cpp +++ b/tests/auto/gui/math3d/qvectornd/tst_qvectornd.cpp @@ -57,6 +57,10 @@ private slots: void create3(); void create4(); + void modify2(); + void modify3(); + void modify4(); + void length2_data(); void length2(); void length3_data(); @@ -570,6 +574,82 @@ void tst_QVectorND::create4() QVERIFY(v14.isNull()); } +// Test modifying vectors in various ways +void tst_QVectorND::modify2() +{ + const float e = 2.7182818f; + const float pi = 3.14159f; + const QVector2D p(e, pi); + + QVector2D p1; + p1.setX(e); + p1.setY(pi); + QVERIFY(qFuzzyCompare(p, p1)); + + QVector2D p2; + p2[0] = e; + p2[1] = pi; + QVERIFY(qFuzzyCompare(p, p2)); + + QVector2D p3; + for (int i = 0; i < 2; ++i) + p3[i] = p[i]; + QVERIFY(qFuzzyCompare(p, p3)); +} + +void tst_QVectorND::modify3() +{ + const float one = 1.0f; + const float e = 2.7182818f; + const float pi = 3.14159f; + const QVector3D p(one, e, pi); + + QVector3D p1; + p1.setX(one); + p1.setY(e); + p1.setZ(pi); + QVERIFY(qFuzzyCompare(p, p1)); + + QVector3D p2; + p2[0] = one; + p2[1] = e; + p2[2] = pi; + QVERIFY(qFuzzyCompare(p, p2)); + + QVector3D p3; + for (int i = 0; i < 3; ++i) + p3[i] = p[i]; + QVERIFY(qFuzzyCompare(p, p3)); +} + +void tst_QVectorND::modify4() +{ + const float one = 1.0f; + const float e = 2.7182818f; + const float pi = 3.14159f; + const float big = 1.0e6f; + const QVector4D p(one, e, pi, big); + + QVector4D p1; + p1.setX(one); + p1.setY(e); + p1.setZ(pi); + p1.setW(big); + QVERIFY(qFuzzyCompare(p, p1)); + + QVector4D p2; + p2[0] = one; + p2[1] = e; + p2[2] = pi; + p2[3] = big; + QVERIFY(qFuzzyCompare(p, p2)); + + QVector4D p3; + for (int i = 0; i < 4; ++i) + p3[i] = p[i]; + QVERIFY(qFuzzyCompare(p, p3)); +} + // Test vector length computation for 2D vectors. void tst_QVectorND::length2_data() { |