Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(52)

Side by Side Diff: Tools/TestWebKitAPI/Tests/mac/HTMLCollectionNamedItem.mm

Issue 13602008: Remove non-chromium code from TestWebKitAPI (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 7 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 /*
2 * Copyright (C) 2012 Apple Inc. All rights reserved.
3 * Copyright (C) 2012 Google Inc. All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright
11 * notice, this list of conditions and the following disclaimer in the
12 * documentation and/or other materials provided with the distribution.
13 *
14 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
15 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
16 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
17 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
18 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
19 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
20 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
21 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
22 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
23 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
24 * THE POSSIBILITY OF SUCH DAMAGE.
25 */
26
27 #include "config.h"
28 #include "PlatformUtilities.h"
29 #include "PlatformWebView.h"
30 #include <wtf/RetainPtr.h>
31
32 #import <WebKit/DOM.h>
33 #import <WebKit/WebViewPrivate.h>
34
35 @interface HTMLCollectionNamedItemTest : NSObject {
36 }
37 @end
38
39 static bool didFinishLoad;
40
41 @implementation HTMLCollectionNamedItemTest
42
43 - (void)webView:(WebView *)sender didFinishLoadForFrame:(WebFrame *)frame
44 {
45 didFinishLoad = true;
46 }
47 @end
48
49 namespace TestWebKitAPI {
50
51 TEST(WebKit1, HTMLCollectionNamedItemTest)
52 {
53 RetainPtr<WebView> webView(AdoptNS, [[WebView alloc] initWithFrame:NSMakeRec t(0, 0, 120, 200) frameName:nil groupName:nil]);
54 RetainPtr<HTMLCollectionNamedItemTest> testController(AdoptNS, [HTMLCollecti onNamedItemTest new]);
55
56 webView.get().frameLoadDelegate = testController.get();
57 [[webView.get() mainFrame] loadRequest:[NSURLRequest requestWithURL:[[NSBund le mainBundle]
58 URLForResource:@"HTMLCollectionNamedItem" withExtension:@"html" subdirec tory:@"TestWebKitAPI.resources"]]];
59
60 Util::run(&didFinishLoad);
61 didFinishLoad = false;
62
63 DOMDocument *document = webView.get().mainFrameDocument;
64 RetainPtr<DOMHTMLCollection> collection = [[document body] children];
65
66 EXPECT_EQ([collection.get() length], (unsigned)4);
67 EXPECT_WK_STREQ([[collection.get() item:0] value], @"firstItem");
68 EXPECT_WK_STREQ([[collection.get() item:1] value], @"secondItem");
69 EXPECT_WK_STREQ([[collection.get() namedItem:@"idForTwoTextFields"] value], @"firstItem");
70 EXPECT_WK_STREQ([[collection.get() item:1] value], @"secondItem");
71 EXPECT_WK_STREQ([[collection.get() item:0] value], @"firstItem");
72
73 EXPECT_WK_STREQ([(DOMHTMLElement*)[collection.get() item:2] title], @"thirdI tem");
74 EXPECT_WK_STREQ([(DOMHTMLElement*)[collection.get() item:3] title], @"fourth Item");
75 EXPECT_WK_STREQ([(DOMHTMLElement*)[collection.get() namedItem:@"nameForTwoIm ages"] title], @"thirdItem");
76 EXPECT_WK_STREQ([(DOMHTMLElement*)[collection.get() item:3] title], @"fourth Item");
77 EXPECT_WK_STREQ([(DOMHTMLElement*)[collection.get() item:2] title], @"thirdI tem");
78 }
79
80 } // namespace TestWebKitAPI
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698