69 lines
2.0 KiB
Objective-C
69 lines
2.0 KiB
Objective-C
/**
|
|
* Copyright (c) 2015-present, Facebook, Inc.
|
|
* All rights reserved.
|
|
*
|
|
* This source code is licensed under the BSD-style license found in the
|
|
* LICENSE file in the root directory of this source tree.
|
|
*/
|
|
|
|
#import <XCTest/XCTest.h>
|
|
|
|
#import "FBIntegrationTestCase.h"
|
|
#import "XCUIElement.h"
|
|
#import "XCUIElement+FBTyping.h"
|
|
|
|
@interface FBTypingTest : FBIntegrationTestCase
|
|
@end
|
|
|
|
@implementation FBTypingTest
|
|
|
|
- (void)setUp
|
|
{
|
|
[super setUp];
|
|
[self launchApplication];
|
|
[self goToAttributesPage];
|
|
}
|
|
|
|
- (void)testTextTyping
|
|
{
|
|
NSString *text = @"Happy typing";
|
|
XCUIElement *textField = self.testedApplication.textFields[@"aIdentifier"];
|
|
NSError *error;
|
|
XCTAssertTrue([textField fb_typeText:text shouldClear:NO error:&error]);
|
|
XCTAssertNil(error);
|
|
XCTAssertEqualObjects(textField.value, text);
|
|
}
|
|
|
|
- (void)testTextTypingOnFocusedElement
|
|
{
|
|
NSString *text = @"Happy typing";
|
|
XCUIElement *textField = self.testedApplication.textFields[@"aIdentifier"];
|
|
[textField tap];
|
|
XCTAssertTrue(textField.hasKeyboardFocus);
|
|
NSError *error;
|
|
XCTAssertTrue([textField fb_typeText:text shouldClear:NO error:&error]);
|
|
XCTAssertNil(error);
|
|
XCTAssertTrue([textField fb_typeText:text shouldClear:NO error:&error]);
|
|
XCTAssertNil(error);
|
|
NSString *expectedText = [NSString stringWithFormat:@"%@%@", text, text];
|
|
XCTAssertEqualObjects(textField.value, expectedText);
|
|
}
|
|
|
|
- (void)testTextClearing
|
|
{
|
|
XCUIElement *textField = self.testedApplication.textFields[@"aIdentifier"];
|
|
[textField tap];
|
|
[textField typeText:@"Happy typing"];
|
|
XCTAssertTrue([textField.value length] > 0);
|
|
NSError *error;
|
|
XCTAssertTrue([textField fb_clearTextWithError:&error]);
|
|
XCTAssertNil(error);
|
|
XCTAssertEqualObjects(textField.value, @"");
|
|
XCTAssertTrue([textField fb_typeText:@"Happy typing" shouldClear:YES error:&error]);
|
|
XCTAssertTrue([textField fb_typeText:@"Happy typing 2" shouldClear:YES error:&error]);
|
|
XCTAssertEqualObjects(textField.value, @"Happy typing 2");
|
|
XCTAssertNil(error);
|
|
}
|
|
|
|
@end
|