blob: f82edfe7072dd3c0be542e715a59fcc9d874cdbf [file] [log] [blame]
// Copyright 2016 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#import "ios/showcase/test/showcase_test_case.h"
#import <EarlGrey/EarlGrey.h>
#include "base/logging.h"
#import "base/mac/foundation_util.h"
#import "ios/showcase/core/app_delegate.h"
#include "testing/coverage_util_ios.h"
#if !defined(__has_feature) || !__has_feature(objc_arc)
#error "This file requires ARC support."
#endif
@implementation ShowcaseTestCase
+ (void)setUp {
coverage_util::ConfigureCoverageReportPath();
}
// Overrides testInvocations so the set of tests run can be modified, as
// necessary.
+ (NSArray*)testInvocations {
NSError* error = nil;
[[EarlGrey selectElementWithMatcher:grey_systemAlertViewShown()]
assertWithMatcher:grey_nil()
error:&error];
if (error != nil) {
LOG(ERROR) << "System alert view is present, so skipping all tests.";
return @[];
}
return [super testInvocations];
}
- (void)setUp {
AppDelegate* delegate = base::mac::ObjCCastStrict<AppDelegate>(
[UIApplication sharedApplication].delegate);
[delegate setupUI];
}
@end