Index: ios/web/public/test/test_web_state.mm |
diff --git a/ios/web/public/test/test_web_state.mm b/ios/web/public/test/test_web_state.mm |
index 3906434aad0d174b0b23fe0a9107ab3f534dcc77..3d35c1f7abdc2ec3507677c20a0759967d431967 100644 |
--- a/ios/web/public/test/test_web_state.mm |
+++ b/ios/web/public/test/test_web_state.mm |
@@ -7,16 +7,30 @@ |
#include <stdint.h> |
#include "base/callback.h" |
+#include "ios/web/public/web_state/web_state_observer.h" |
namespace web { |
+void TestWebState::AddObserver(WebStateObserver* observer) { |
+ observers_.AddObserver(observer); |
+} |
+ |
+void TestWebState::RemoveObserver(WebStateObserver* observer) { |
+ observers_.RemoveObserver(observer); |
+} |
+ |
TestWebState::TestWebState() |
: web_usage_enabled_(false), |
is_loading_(false), |
trust_level_(kAbsolute), |
content_is_html_(true) {} |
-TestWebState::~TestWebState() = default; |
+TestWebState::~TestWebState() { |
+ for (auto& observer : observers_) |
+ observer.WebStateDestroyed(); |
+ for (auto& observer : observers_) |
+ observer.ResetWebState(); |
+}; |
WebStateDelegate* TestWebState::GetDelegate() { |
return nil; |