Author: pschweitzer Date: Tue Aug 9 20:46:00 2016 New Revision: 72169
URL: http://svn.reactos.org/svn/reactos?rev=72169&view=rev Log: [KMTESTS:CC] Modify a bit the read test so that it actually fails in ReactOS. It instructs us that when it comes to file boundaries, our Cc fails to properly align read (whereas it should!). This is the behavior exposed by the MS FastFAT.
CORE-11003 CORE-11819
Modified: trunk/rostests/kmtests/ntos_cc/CcCopyRead_drv.c trunk/rostests/kmtests/ntos_cc/CcCopyRead_user.c
Modified: trunk/rostests/kmtests/ntos_cc/CcCopyRead_drv.c URL: http://svn.reactos.org/svn/reactos/trunk/rostests/kmtests/ntos_cc/CcCopyRead... ============================================================================== --- trunk/rostests/kmtests/ntos_cc/CcCopyRead_drv.c [iso-8859-1] (original) +++ trunk/rostests/kmtests/ntos_cc/CcCopyRead_drv.c [iso-8859-1] Tue Aug 9 20:46:00 2016 @@ -191,9 +191,9 @@ else if (IoStack->FileObject->FileName.Length >= 2 * sizeof(WCHAR) && IoStack->FileObject->FileName.Buffer[1] == 'S') { - Fcb->Header.AllocationSize.QuadPart = 3000; - Fcb->Header.FileSize.QuadPart = 3000; - Fcb->Header.ValidDataLength.QuadPart = 3000; + Fcb->Header.AllocationSize.QuadPart = 1004; + Fcb->Header.FileSize.QuadPart = 1004; + Fcb->Header.ValidDataLength.QuadPart = 1004; } else {
Modified: trunk/rostests/kmtests/ntos_cc/CcCopyRead_user.c URL: http://svn.reactos.org/svn/reactos/trunk/rostests/kmtests/ntos_cc/CcCopyRead... ============================================================================== --- trunk/rostests/kmtests/ntos_cc/CcCopyRead_user.c [iso-8859-1] (original) +++ trunk/rostests/kmtests/ntos_cc/CcCopyRead_user.c [iso-8859-1] Tue Aug 9 20:46:00 2016 @@ -64,6 +64,11 @@ ok_eq_hex(Status, STATUS_SUCCESS); ok_eq_hex(((USHORT *)Buffer)[0], 0xBABA);
+ ByteOffset.QuadPart = 999990; + Status = NtReadFile(Handle, NULL, NULL, NULL, &IoStatusBlock, Buffer, 10, &ByteOffset, NULL); + ok_eq_hex(Status, STATUS_SUCCESS); + ok_eq_hex(((USHORT *)Buffer)[0], 0xBABA); + ByteOffset.QuadPart = 1000; Status = NtReadFile(Handle, NULL, NULL, NULL, &IoStatusBlock, Buffer, 2, &ByteOffset, NULL); ok_eq_hex(Status, STATUS_SUCCESS);