Overview
Comment: | Test all OFKernelEventObserver implementations |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
6430ae33099de01c667598d6ded74db9 |
User & Date: | js on 2015-05-04 23:19:59 |
Other Links: | manifest | tags |
Context
2015-05-05
| ||
10:26 | runtime/protocol.m: Remove __gnu_inline__ check-in: 9b5445fd7e user: js tags: trunk | |
2015-05-04
| ||
23:19 | Test all OFKernelEventObserver implementations check-in: 6430ae3309 user: js tags: trunk | |
22:54 | utils/ofhttp: Fix a type mismatch check-in: 0b13fb2e38 user: js tags: trunk | |
Changes
Modified tests/OFKernelEventObserverTests.m from [5bcda94d87] to [c839b85266].
︙ | ︙ | |||
16 17 18 19 20 21 22 23 24 25 | #include "config.h" #import "OFKernelEventObserver.h" #import "OFString.h" #import "OFTCPSocket.h" #import "OFAutoreleasePool.h" #import "TestsAppDelegate.h" | > > > > > > > > > > > > > | | | | | 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | #include "config.h" #import "OFKernelEventObserver.h" #import "OFString.h" #import "OFTCPSocket.h" #import "OFAutoreleasePool.h" #if defined(HAVE_SYS_SELECT_H) || defined(_WIN32) # import "OFKernelEventObserver_select.h" #endif #if defined(HAVE_POLL_H) || defined(__wii__) # import "OFKernelEventObserver_poll.h" #endif #ifdef HAVE_EPOLL # import "OFKernelEventObserver_epoll.h" #endif #ifdef HAVE_KQUEUE # import "OFKernelEventObserver_kqueue.h" #endif #import "TestsAppDelegate.h" static OFString *module; static OFKernelEventObserver *observer; static int events; static id expectedObject; static bool readData, expectEOS; static OFTCPSocket *accepted; @interface ObserverDelegate: OFObject - (void)objectIsReadyForReading: (id)object; @end @implementation ObserverDelegate - (void)objectIsReadyForReading: (id)object |
︙ | ︙ | |||
58 59 60 61 62 63 64 | OF_ENSURE(buf == '0'); } } } @end @implementation TestsAppDelegate (OFKernelEventObserverTests) | | < > > > > > > | | 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 | OF_ENSURE(buf == '0'); } } } @end @implementation TestsAppDelegate (OFKernelEventObserverTests) - (void)kernelEventObserverTestsWithClass: (Class)class { ObserverDelegate *delegate = [[[ObserverDelegate alloc] init] autorelease]; OFTCPSocket *sock1 = [OFTCPSocket socket]; OFTCPSocket *sock2 = [OFTCPSocket socket]; uint16_t port; module = [class className]; events = 0; expectedObject = nil; readData = expectEOS = false; accepted = nil; port = [sock1 bindToHost: @"127.0.0.1" port: 0]; [sock1 listen]; TEST(@"+[observer]", (observer = [class observer]) && R([observer setDelegate: delegate])) TEST(@"-[addObjectForReading:]", R([observer addObjectForReading: sock1])) [sock2 connectToHost: @"127.0.0.1" port: port]; |
︙ | ︙ | |||
102 103 104 105 106 107 108 109 110 111 112 | [accepted close]; TEST(@"-[observe] closed connection", R(readData = true) && R(expectEOS = true) && [observer observeForTimeInterval: 0.01]) TEST(@"-[observe] correct number of events", events == 4) [pool drain]; } @end | > > > > > > > > > > > > > > > > > > > > > > > > > | 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 | [accepted close]; TEST(@"-[observe] closed connection", R(readData = true) && R(expectEOS = true) && [observer observeForTimeInterval: 0.01]) TEST(@"-[observe] correct number of events", events == 4) } - (void)kernelEventObserverTests { OFAutoreleasePool *pool = [[OFAutoreleasePool alloc] init]; #if defined(HAVE_SYS_SELECT_H) || defined(_WIN32) [self kernelEventObserverTestsWithClass: [OFKernelEventObserver_select class]]; #endif #if defined(HAVE_POLL_H) || defined(__wii__) [self kernelEventObserverTestsWithClass: [OFKernelEventObserver_poll class]]; #endif #ifdef HAVE_EPOLL [self kernelEventObserverTestsWithClass: [OFKernelEventObserver_epoll class]]; #endif #ifdef HAVE_KQUEUE [self kernelEventObserverTestsWithClass: [OFKernelEventObserver_kqueue class]]; #endif [pool drain]; } @end |