From a19db17df418ef1a3e9b57631d08b4aa222a017a Mon Sep 17 00:00:00 2001 From: Nicola Pero Date: Fri, 4 Jun 2004 01:23:12 +0000 Subject: [PATCH] New testcases From-SVN: r82620 --- .../objc/execute/protocol-isEqual-1.m | 20 +++++++++++++++++ .../objc/execute/protocol-isEqual-2.m | 22 +++++++++++++++++++ .../objc/execute/protocol-isEqual-3.m | 18 +++++++++++++++ .../objc/execute/protocol-isEqual-4.m | 19 ++++++++++++++++ 4 files changed, 79 insertions(+) create mode 100644 gcc/testsuite/objc/execute/protocol-isEqual-1.m create mode 100644 gcc/testsuite/objc/execute/protocol-isEqual-2.m create mode 100644 gcc/testsuite/objc/execute/protocol-isEqual-3.m create mode 100644 gcc/testsuite/objc/execute/protocol-isEqual-4.m diff --git a/gcc/testsuite/objc/execute/protocol-isEqual-1.m b/gcc/testsuite/objc/execute/protocol-isEqual-1.m new file mode 100644 index 00000000000..df1382d3395 --- /dev/null +++ b/gcc/testsuite/objc/execute/protocol-isEqual-1.m @@ -0,0 +1,20 @@ +/* Contributed by Nicola Pero - Fri Jun 4 03:16:17 BST 2004 */ +/* Test that a protocol is equal to itself. */ +#include + +@protocol Foo +- (void)foo; +@end + +int main (void) +{ + Protocol *protocol = @protocol(Foo); + + if (! [protocol isEqual: protocol]) + { + abort (); + } + + return 0; +} + diff --git a/gcc/testsuite/objc/execute/protocol-isEqual-2.m b/gcc/testsuite/objc/execute/protocol-isEqual-2.m new file mode 100644 index 00000000000..035ab3b685c --- /dev/null +++ b/gcc/testsuite/objc/execute/protocol-isEqual-2.m @@ -0,0 +1,22 @@ +/* Contributed by Nicola Pero - Fri Jun 4 03:16:17 BST 2004 */ +/* Test that protocols with different names are different. */ +#include + +@protocol Foo1 +- (void)foo1; +@end + +@protocol Foo2 +- (void)foo2; +@end + +int main (void) +{ + if ([@protocol(Foo1) isEqual: @protocol(Foo2)]) + { + abort (); + } + + return 0; +} + diff --git a/gcc/testsuite/objc/execute/protocol-isEqual-3.m b/gcc/testsuite/objc/execute/protocol-isEqual-3.m new file mode 100644 index 00000000000..2827448a98f --- /dev/null +++ b/gcc/testsuite/objc/execute/protocol-isEqual-3.m @@ -0,0 +1,18 @@ +/* Contributed by Nicola Pero - Fri Jun 4 03:16:17 BST 2004 */ +/* Test that a protocol is not equal to nil. */ +#include + +@protocol Foo +- (void)foo; +@end + +int main (void) +{ + if ([@protocol(Foo) isEqual: nil]) + { + abort (); + } + + return 0; +} + diff --git a/gcc/testsuite/objc/execute/protocol-isEqual-4.m b/gcc/testsuite/objc/execute/protocol-isEqual-4.m new file mode 100644 index 00000000000..58ec1083600 --- /dev/null +++ b/gcc/testsuite/objc/execute/protocol-isEqual-4.m @@ -0,0 +1,19 @@ +/* Contributed by David Ayers - Fri Jun 4 03:16:17 BST 2004 */ +/* Test that a protocol is not equal to something which is not a protocol. */ +#include + +@protocol Foo +- (void)foo; +@end + +int main (void) +{ + /* A Protocol object should not be equal to a Class object. */ + if ([@protocol(Foo) isEqual: [Protocol class]]) + { + abort (); + } + + return 0; +} + -- 2.30.2