Index: ios/chrome/browser/ui/settings/utils/fake_observable_boolean.mm |
diff --git a/ios/chrome/browser/ui/settings/utils/fake_observable_boolean.mm b/ios/chrome/browser/ui/settings/utils/fake_observable_boolean.mm |
new file mode 100644 |
index 0000000000000000000000000000000000000000..d8d25f29c9db4738243330dd59d8f31c0cc76b3c |
--- /dev/null |
+++ b/ios/chrome/browser/ui/settings/utils/fake_observable_boolean.mm |
@@ -0,0 +1,29 @@ |
+// 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/chrome/browser/ui/settings/utils/fake_observable_boolean.h" |
+ |
+@implementation FakeObservableBoolean |
+ |
+@synthesize value = _value; |
+@synthesize observer = _observer; |
+ |
+- (void)setValue:(BOOL)value { |
+ bool changed = value != _value; |
+ _value = value; |
+ if (changed) |
+ [self.observer booleanDidChange:self]; |
+} |
+ |
+@end |
+ |
+@implementation TestBooleanObserver |
+ |
+@synthesize updateCount = _updateCount; |
+ |
+- (void)booleanDidChange:(id<ObservableBoolean>)observableBoolean { |
+ self.updateCount++; |
+} |
+ |
+@end |