blob: 7b40da131d23f5ecb12aa21dc9858fafa532ae43 [file] [log] [blame]
// Copyright 2013 The Flutter 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 <XCTest/XCTest.h>
@import webview_flutter_wkwebview;
@interface FWFInstanceManagerTests : XCTestCase
@end
@implementation FWFInstanceManagerTests
- (void)testAddInstance {
FWFInstanceManager *instanceManager = [[FWFInstanceManager alloc] init];
NSObject *object = [[NSObject alloc] init];
[instanceManager addInstance:object withIdentifier:5];
XCTAssertEqualObjects([instanceManager instanceForIdentifier:5], object);
XCTAssertEqual([instanceManager identifierForInstance:object], 5);
}
- (void)testRemoveInstance {
FWFInstanceManager *instanceManager = [[FWFInstanceManager alloc] init];
NSObject *object = [[NSObject alloc] init];
[instanceManager addInstance:object withIdentifier:5];
[instanceManager removeInstance:object];
XCTAssertNil([instanceManager instanceForIdentifier:5]);
XCTAssertEqual([instanceManager identifierForInstance:object], NSNotFound);
}
- (void)testRemoveInstanceWithIdentifier {
FWFInstanceManager *instanceManager = [[FWFInstanceManager alloc] init];
NSObject *object = [[NSObject alloc] init];
[instanceManager addInstance:object withIdentifier:5];
[instanceManager removeInstanceWithIdentifier:5];
XCTAssertNil([instanceManager instanceForIdentifier:5]);
XCTAssertEqual([instanceManager identifierForInstance:object], NSNotFound);
}
@end