aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicola Pero <nicola@gcc.gnu.org>2004-06-04 01:23:12 +0000
committerNicola Pero <nicola@gcc.gnu.org>2004-06-04 01:23:12 +0000
commita19db17df418ef1a3e9b57631d08b4aa222a017a (patch)
tree4865aed55f4e33b69f2b47ff805ab7fc6fe057ad
parent1600b7d6167562ce7dbf9cb9f18039e7db848a0e (diff)
downloadgcc-a19db17df418ef1a3e9b57631d08b4aa222a017a.zip
gcc-a19db17df418ef1a3e9b57631d08b4aa222a017a.tar.gz
gcc-a19db17df418ef1a3e9b57631d08b4aa222a017a.tar.bz2
New testcases
From-SVN: r82620
-rw-r--r--gcc/testsuite/objc/execute/protocol-isEqual-1.m20
-rw-r--r--gcc/testsuite/objc/execute/protocol-isEqual-2.m22
-rw-r--r--gcc/testsuite/objc/execute/protocol-isEqual-3.m18
-rw-r--r--gcc/testsuite/objc/execute/protocol-isEqual-4.m19
4 files changed, 79 insertions, 0 deletions
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 0000000..df1382d
--- /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 <objc/Protocol.h>
+
+@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 0000000..035ab3b
--- /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 <objc/Protocol.h>
+
+@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 0000000..2827448
--- /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 <objc/Protocol.h>
+
+@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 0000000..58ec108
--- /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 <objc/Protocol.h>
+
+@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;
+}
+