@@ -15,116 +15,112 @@
#include "config.h"
#import "TestsAppDelegate.h"
-static OFString *module = @"OFXMLNode";
+static OFString *module;
@implementation TestsAppDelegate (OFXMLNodeTests)
- (void)XMLNodeTests
{
void *pool = objc_autoreleasePoolPush();
- id nodes[4];
- OFArray *a;
+ id node1, node2, node3, node4;
+ OFArray *array;
+
+ module = @"OFXMLNode";
TEST(@"+[elementWithName:]",
- (nodes[0] = [OFXMLElement elementWithName: @"foo"]) &&
- [[nodes[0] XMLString] isEqual: @""])
+ (node1 = [OFXMLElement elementWithName: @"foo"]) &&
+ [[node1 XMLString] isEqual: @""])
TEST(@"+[elementWithName:stringValue:]",
- (nodes[1] = [OFXMLElement elementWithName: @"foo"
- stringValue: @"b&ar"]) &&
- [[nodes[1] XMLString] isEqual: @"b&ar"])
+ (node2 = [OFXMLElement elementWithName: @"foo"
+ stringValue: @"b&ar"]) &&
+ [[node2 XMLString] isEqual: @"b&ar"])
TEST(@"+[elementWithName:namespace:]",
- (nodes[2] = [OFXMLElement elementWithName: @"foo"
- namespace: @"urn:objfw:test"]) &&
- R([nodes[2] addAttributeWithName: @"test"
- stringValue: @"test"]) &&
- R([nodes[2] setPrefix: @"objfw-test"
- forNamespace: @"urn:objfw:test"]) &&
- [[nodes[2] XMLString] isEqual: @""] &&
- (nodes[3] = [OFXMLElement elementWithName: @"foo"
- namespace: @"urn:objfw:test"]) &&
- R([nodes[3] addAttributeWithName: @"test"
- stringValue: @"test"]) &&
- [[nodes[3] XMLString] isEqual:
+ (node3 = [OFXMLElement elementWithName: @"foo"
+ namespace: @"urn:objfw:test"]) &&
+ R([node3 addAttributeWithName: @"test" stringValue: @"test"]) &&
+ R([node3 setPrefix: @"objfw-test"
+ forNamespace: @"urn:objfw:test"]) &&
+ [[node3 XMLString] isEqual: @""] &&
+ (node4 = [OFXMLElement elementWithName: @"foo"
+ namespace: @"urn:objfw:test"]) &&
+ R([node4 addAttributeWithName: @"test" stringValue: @"test"]) &&
+ [[node4 XMLString] isEqual:
@""])
TEST(@"+[elementWithName:namespace:stringValue:]",
- (nodes[3] = [OFXMLElement elementWithName: @"foo"
- namespace: @"urn:objfw:test"
- stringValue: @"x"]) &&
- R([nodes[3] setPrefix: @"objfw-test"
- forNamespace: @"urn:objfw:test"]) &&
- [[nodes[3] XMLString] isEqual:
- @"x"])
+ (node4 = [OFXMLElement elementWithName: @"foo"
+ namespace: @"urn:objfw:test"
+ stringValue: @"x"]) &&
+ R([node4 setPrefix: @"objfw-test"
+ forNamespace: @"urn:objfw:test"]) &&
+ [[node4 XMLString] isEqual: @"x"])
TEST(@"+[charactersWithString:]",
- (nodes[3] = [OFXMLCharacters charactersWithString: @""]) &&
- [[nodes[3] XMLString] isEqual: @"<foo>"])
+ (node4 = [OFXMLCharacters charactersWithString: @""]) &&
+ [[node4 XMLString] isEqual: @"<foo>"])
TEST(@"+[CDATAWithString:]",
- (nodes[3] = [OFXMLCDATA CDATAWithString: @""]) &&
- [[nodes[3] XMLString] isEqual: @"]]>"]);
+ (node4 = [OFXMLCDATA CDATAWithString: @""]) &&
+ [[node4 XMLString] isEqual: @"]]>"]);
- TEST(@"+[commentWithString:]",
- (nodes[3] = [OFXMLComment commentWithString: @" comment "]) &&
- [[nodes[3] XMLString] isEqual: @""])
+ TEST(@"+[commentWithText:]",
+ (node4 = [OFXMLComment commentWithText: @" comment "]) &&
+ [[node4 XMLString] isEqual: @""])
module = @"OFXMLElement";
TEST(@"-[addAttributeWithName:stringValue:]",
- R([nodes[0] addAttributeWithName: @"foo"
- stringValue: @"b&ar"]) &&
- [[nodes[0] XMLString] isEqual: @""] &&
- R([nodes[1] addAttributeWithName: @"foo"
- stringValue: @"b&ar"]) &&
- [[nodes[1] XMLString] isEqual:
- @"b&ar"])
+ R([node1 addAttributeWithName: @"foo" stringValue: @"b&ar"]) &&
+ [[node1 XMLString] isEqual: @""] &&
+ R([node2 addAttributeWithName: @"foo" stringValue: @"b&ar"]) &&
+ [[node2 XMLString] isEqual: @"b&ar"])
TEST(@"-[setPrefix:forNamespace:]",
- R([nodes[1] setPrefix: @"objfw-test"
- forNamespace: @"urn:objfw:test"]))
+ R([node2 setPrefix: @"objfw-test"
+ forNamespace: @"urn:objfw:test"]))
TEST(@"-[addAttributeWithName:namespace:stringValue:]",
- R([nodes[1] addAttributeWithName: @"foo"
- namespace: @"urn:objfw:test"
- stringValue: @"bar"]) &&
- R([nodes[1] addAttributeWithName: @"foo"
- namespace: @"urn:objfw:test"
- stringValue: @"ignored"]) &&
- [[nodes[1] XMLString] isEqual:
+ R([node2 addAttributeWithName: @"foo"
+ namespace: @"urn:objfw:test"
+ stringValue: @"bar"]) &&
+ R([node2 addAttributeWithName: @"foo"
+ namespace: @"urn:objfw:test"
+ stringValue: @"ignored"]) &&
+ [[node2 XMLString] isEqual:
@"b&ar"])
TEST(@"-[removeAttributeForName:namespace:]",
- R([nodes[1] removeAttributeForName: @"foo"]) &&
- [[nodes[1] XMLString] isEqual:
+ R([node2 removeAttributeForName: @"foo"]) &&
+ [[node2 XMLString] isEqual:
@"b&ar"] &&
- R([nodes[1] removeAttributeForName: @"foo"
- namespace: @"urn:objfw:test"]) &&
- [[nodes[1] XMLString] isEqual: @"b&ar"])
+ R([node2 removeAttributeForName: @"foo"
+ namespace: @"urn:objfw:test"]) &&
+ [[node2 XMLString] isEqual: @"b&ar"])
TEST(@"-[addChild:]",
- R([nodes[0] addChild: [OFXMLElement elementWithName: @"bar"]]) &&
- [[nodes[0] XMLString] isEqual:
+ R([node1 addChild: [OFXMLElement elementWithName: @"bar"]]) &&
+ [[node1 XMLString] isEqual:
@""] &&
- R([nodes[2] addChild: [OFXMLElement elementWithName: @"bar"
- namespace: @"urn:objfw:test"]]) &&
- [[nodes[2] XMLString] isEqual:
+ R([node3 addChild: [OFXMLElement elementWithName: @"bar"
+ namespace: @"urn:objfw:test"]]) &&
+ [[node3 XMLString] isEqual:
@""])
TEST(@"+[elementWithXMLString:] and -[stringValue]",
[[[OFXMLElement elementWithXMLString:
@"\r\nfoo"
@"bazqux"] stringValue]
isEqual: @"foobarbazqux"])
TEST(@"-[elementsForName:namespace:]",
- (a = [nodes[2] elementsForName: @"bar"
- namespace: @"urn:objfw:test"]) &&
- a.count == 1 && [[[a firstObject] XMLString] isEqual:
+ (array = [node3 elementsForName: @"bar"
+ namespace: @"urn:objfw:test"]) &&
+ array.count == 1 && [[array.firstObject XMLString] isEqual:
@""])
TEST(@"-[isEqual:]",
[[OFXMLElement elementWithXMLString: @""] isEqual:
[OFXMLElement elementWithXMLString: @""]] &&