diff options
author | Dave Airlie <airlied@redhat.com> | 2011-10-27 08:38:45 +1000 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2011-10-27 08:41:08 +1000 |
commit | 005ab41986b0bb6a4e626aee7a7a542247f422e7 (patch) | |
tree | 451ea9769ce05147a622aad628e051afe0241436 /test | |
parent | 5701ab4a441eb113abd0851b0d71b82d12112854 (diff) |
test: fix two more failing FP3232 tests
And put a comment in to explain why we're testing for a frac between .3 and
.6. We can't directly compare the frac since the floating/fixed point
conversion loses precision.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Diffstat (limited to 'test')
-rw-r--r-- | test/xi2/protocol-common.c | 1 | ||||
-rw-r--r-- | test/xi2/protocol-eventconvert.c | 4 | ||||
-rw-r--r-- | test/xi2/protocol-xiquerydevice.c | 6 |
3 files changed, 5 insertions, 6 deletions
diff --git a/test/xi2/protocol-common.c b/test/xi2/protocol-common.c index 56d6bd268..27edfe516 100644 --- a/test/xi2/protocol-common.c +++ b/test/xi2/protocol-common.c @@ -108,6 +108,7 @@ TestPointerProc(DeviceIntPtr pDev, int what) pDev->valuator->axisVal[1] = screenInfo.screens[0]->height / 2; pDev->last.valuators[1] = pDev->valuator->axisVal[1]; + /* protocol-xiquerydevice.c relies on these increment */ SetScrollValuator(pDev, 2, SCROLL_TYPE_VERTICAL, 2.4, SCROLL_FLAG_NONE); SetScrollValuator(pDev, 3, SCROLL_TYPE_HORIZONTAL, 3.5, SCROLL_FLAG_PREFERRED); break; diff --git a/test/xi2/protocol-eventconvert.c b/test/xi2/protocol-eventconvert.c index ba2d96ad1..dce1c50c4 100644 --- a/test/xi2/protocol-eventconvert.c +++ b/test/xi2/protocol-eventconvert.c @@ -389,9 +389,7 @@ static void test_values_XIDeviceEvent(DeviceEvent *in, xXIDeviceEvent *out, { FP3232 vi, vo; - vi.integral = trunc(in->valuators.data[i]); - vi.frac = (in->valuators.data[i] - vi.integral) * (1UL << 32); - + vi = double_to_fp3232(in->valuators.data[i]); vo = *values; if (swap) diff --git a/test/xi2/protocol-xiquerydevice.c b/test/xi2/protocol-xiquerydevice.c index 63d725f28..569aea93a 100644 --- a/test/xi2/protocol-xiquerydevice.c +++ b/test/xi2/protocol-xiquerydevice.c @@ -213,9 +213,9 @@ static void reply_XIQueryDevice_data(ClientPtr client, int len, char *data, void } assert(si->increment.integral == si->number); - /* FIXME: frac testing with float/FP issues? */ - assert(si->increment.frac > 0.3 * (1UL << 32)); - assert(si->increment.frac < 0.6 * (1UL << 32)); + /* protocol-common.c sets up increments of 2.4 and 3.5 */ + assert(si->increment.frac > 0.3 * (1ULL << 32)); + assert(si->increment.frac < 0.6 * (1ULL << 32)); } } |