libs-gui/Tests/gui/NSPasteboard/lazy_copy.m
Richard Frith-MacDonald 1b8dd0b36b Regression test improvments
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@39755 72102866-910b-0410-8b05-ffd578937521
2016-05-13 15:41:27 +00:00

52 lines
1.1 KiB
Objective-C

/*
copyright 2004 Alexander Malmberg <alexander@malmberg.org>
*/
#include "Testing.h"
#include <Foundation/NSArray.h>
#include <Foundation/NSAutoreleasePool.h>
#include <Foundation/NSString.h>
#include <AppKit/NSPasteboard.h>
static NSString *theString=@"QUUX!!1!!\"$!";
@interface Foo : NSObject
@end
@implementation Foo
+(void) pasteboard: (NSPasteboard *)pb
provideDataForType: (NSString *)type
{
// printf("pasteboard: %@ provideDataForType: %@\n",pb,type);
[pb setString: theString
forType: NSStringPboardType];
}
@end
int main(int argc, char **argv)
{
CREATE_AUTORELEASE_POOL(arp);
NSPasteboard *pb=[NSPasteboard pasteboardWithName: @"lazy copy test"];
int i;
NSString *s;
i=[pb declareTypes: [NSArray arrayWithObject: NSStringPboardType]
owner: [Foo self]];
DESTROY(arp);
arp=[NSAutoreleasePool new];
pb=[NSPasteboard pasteboardWithName: @"lazy copy test"];
s=[pb stringForType: NSStringPboardType];
testHopeful = YES;
pass([s isEqual: theString], "NSPasteboard handles lazy setting of data");
testHopeful = NO;
DESTROY(arp);
return 0;
}