ObjFW  Check-in [572bcb3d8b]

Overview
Comment:Migrate OFDDPSocketTests to ObjFWTest
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | objfwtest
Files: files | file ages | folders
SHA3-256: 572bcb3d8b96c01ae3b6cd8a97f13d64b2cd8bb1d58a88f96b7049dc60021054
User & Date: js on 2024-02-14 00:41:11
Other Links: branch diff | manifest | tags
Context
2024-02-14
00:47
Fix `make check` with nbmake check-in: 9842ae0680 user: js tags: objfwtest
00:41
Migrate OFDDPSocketTests to ObjFWTest check-in: 572bcb3d8b user: js tags: objfwtest
00:31
Migrate OFSPXStreamSocketTests to ObjFWTest check-in: ddfac30149 user: js tags: objfwtest
Changes

Modified new_tests/Makefile from [f40a953208] to [18f60fc107].

48
49
50
51
52
53
54
55



56
57
58
59
60
61
62
48
49
50
51
52
53
54

55
56
57
58
59
60
61
62
63
64







-
+
+
+







       testfile_ini.m
SRCS_PLUGINS = OFPluginTests.m
SRCS_SOCKETS = OFDNSResolverTests.m	\
	       OFSocketTests.m		\
	       OFTCPSocketTests.m	\
	       OFUDPSocketTests.m	\
	       ${USE_SRCS_IPX}		\
	       ${USE_SRCS_UNIX_SOCKETS}
	       ${USE_SRCS_UNIX_SOCKETS}	\
	       ${USE_SRCS_APPLETALK}
SRCS_APPLETALK = OFDDPSocketTests.m
SRCS_IPX = OFIPXSocketTests.m		\
	   OFSPXSocketTests.m		\
	   OFSPXStreamSocketTests.m
SRCS_UNIX_SOCKETS = OFUNIXDatagramSocketTests.m	\
		    OFUNIXStreamSocketTests.m
SRCS_SUBPROCESSES = OFSubprocessTests.m
SRCS_THREADS = OFThreadTests.m

Renamed and modified tests/OFDDPSocketTests.m [5433dc7a16] to new_tests/OFDDPSocketTests.m [d03a653eed].

12
13
14
15
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
52
53
54

55
56
57
58
59
60

61
62
63

64
65
66

67
68
69
70
71
72
73








74
75
76
12
13
14
15
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



52



53
54






55
56
57
58
59
60
61
62


63







+

-
+
+

-
+
+

-
-
+
+

-




-
+


-
-
-
-
-
+
+
+
+




-
-
-
-
+
-
-

-
-
-
-
+
-
-



-
+
-
-
-
+
-
-
-
+

-
-
-
-
-
-
+
+
+
+
+
+
+
+
-
-

 * LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
 * file.
 */

#include "config.h"

#include <errno.h>
#include <string.h>

#import "TestsAppDelegate.h"
#import "ObjFW.h"
#import "ObjFWTest.h"

static OFString *const module = @"OFDDPSocket";
@interface OFDDPSocketTests: OTTestCase
@end

@implementation TestsAppDelegate (OFDDPSocketTests)
- (void)DDPSocketTests
@implementation OFDDPSocketTests
- (void)testDDPSocket
{
	void *pool = objc_autoreleasePoolPush();
	OFDDPSocket *sock;
	OFSocketAddress address1, address2;
	char buffer[5];

	TEST(@"+[socket]", (sock = [OFDDPSocket socket]))
	sock = [OFDDPSocket socket];

	@try {
		TEST(@"-[bindToNetwork:node:port:]",
		    R(address1 = [sock bindToNetwork: 0
						node: 0
						port: 0
					protocolType: 11]))
		address1 = [sock bindToNetwork: 0
					  node: 0
					  port: 0
				  protocolType: 11];
	} @catch (OFBindSocketFailedException *e) {
		switch (e.errNo) {
		case EAFNOSUPPORT:
		case EPROTONOSUPPORT:
			[OFStdOut setForegroundColor: [OFColor lime]];
			[OFStdOut writeLine:
			    @"\r[OFDDPSocket] -[bindToNetwork:node:port:"
			    @"protocolType:] AppleTalk unsupported, skipping "
			OTSkip(@"AppleTalk unsupported");
			    @"tests"];
			break;
		case EADDRNOTAVAIL:
			[OFStdOut setForegroundColor: [OFColor lime]];
			[OFStdOut writeLine:
			    @"\r[OFDDPSocket] -[bindToNetwork:node:port:"
			    @"protocolType:] AppleTalk not configured, "
			OTSkip(@"AppleTalk not configured");
			    @"skipping tests"];
			break;
		default:
			@throw e;
		}

	}
		objc_autoreleasePoolPop(pool);
		return;
	}


	TEST(@"-[sendBuffer:length:receiver:]",
	    R([sock sendBuffer: "Hello" length: 5 receiver: &address1]))
	[sock sendBuffer: "Hello" length: 5 receiver: &address1];

	TEST(@"-[receiveIntoBuffer:length:sender:]",
	    [sock receiveIntoBuffer: buffer length: 5 sender: &address2] == 5 &&
	    memcmp(buffer, "Hello", 5) == 0 &&
	    OFSocketAddressEqual(&address1, &address2) &&
	    OFSocketAddressHash(&address1) == OFSocketAddressHash(&address2))

	OTAssertEqual([sock receiveIntoBuffer: buffer
				       length: 5
				       sender: &address2], 5);
	OTAssertEqual(memcmp(buffer, "Hello", 5), 0);
	OTAssertTrue(OFSocketAddressEqual(&address1, &address2));
	OTAssertEqual(OFSocketAddressHash(&address1),
	    OFSocketAddressHash(&address2));
}
	objc_autoreleasePoolPop(pool);
}
@end

Modified tests/Makefile from [b466f143bd] to [33d6256e99].

29
30
31
32
33
34
35
36

37
38
39
40
41
42
43
44
45
29
30
31
32
33
34
35

36


37
38
39
40
41
42
43







-
+
-
-







       TestsAppDelegate.m		\
       ${USE_SRCS_FILES}		\
       ${USE_SRCS_SOCKETS}		\
       ${USE_SRCS_WINDOWS}
SRCS_SOCKETS = ${OF_HTTP_CLIENT_TESTS_M}	\
	       OFHTTPCookieTests.m		\
	       OFHTTPCookieManagerTests.m	\
	       OFKernelEventObserverTests.m	\
	       OFKernelEventObserverTests.m
	       ${USE_SRCS_APPLETALK}
SRCS_APPLETALK = OFDDPSocketTests.m
SRCS_WINDOWS = OFWindowsRegistryKeyTests.m

IOS_USER ?= mobile
IOS_TMP ?= /tmp/objfw-test

include ../buildsys.mk

Modified tests/TestsAppDelegate.h from [eb02d80761] to [d0f720ed69].

55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
55
56
57
58
59
60
61




62
63
64
65
66
67
68







-
-
-
-







}

- (void)outputTesting: (OFString *)test inModule: (OFString *)module;
- (void)outputSuccess: (OFString *)test inModule: (OFString *)module;
- (void)outputFailure: (OFString *)test inModule: (OFString *)module;
@end

@interface TestsAppDelegate (OFDDPSocketTests)
- (void)DDPSocketTests;
@end

@interface TestsAppDelegate (OFDataTests)
- (void)dataTests;
@end

@interface TestsAppDelegate (OFDictionaryTests)
- (void)dictionaryTests;
@end

Modified tests/TestsAppDelegate.m from [ee32dd4840] to [01275bfcd5].

379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
379
380
381
382
383
384
385



386
387
388
389
390
391
392







-
-
-







	[self dictionaryTests];
	[self listTests];
	[self valueTests];
	[self streamTests];
	[self memoryStreamTests];
	[self notificationCenterTests];
#ifdef OF_HAVE_SOCKETS
# ifdef OF_HAVE_APPLETALK
	[self DDPSocketTests];
# endif
	[self kernelEventObserverTests];
#endif
#if defined(OF_HAVE_SOCKETS) && defined(OF_HAVE_THREADS)
	[self HTTPClientTests];
#endif
#ifdef OF_HAVE_SOCKETS
	[self HTTPCookieTests];