blob: cb898bb023ae011df40204569af72f455d63d98c [file] [log] [blame]
// Copyright 2018 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef SRC_MODULAR_LIB_TESTING_TEST_WITH_SESSION_STORAGE_H_
#define SRC_MODULAR_LIB_TESTING_TEST_WITH_SESSION_STORAGE_H_
#include <fuchsia/modular/cpp/fidl.h>
#include <lib/gtest/real_loop_fixture.h>
#include "src/modular/bin/sessionmgr/storage/session_storage.h"
#include "src/modular/bin/sessionmgr/storage/story_storage.h"
namespace modular_testing {
class TestWithSessionStorage : public gtest::RealLoopFixture {
public:
TestWithSessionStorage();
~TestWithSessionStorage() override;
protected:
std::unique_ptr<modular::SessionStorage> MakeSessionStorage();
std::shared_ptr<modular::StoryStorage> GetStoryStorage(modular::SessionStorage* storage,
std::string story_id);
void WriteModuleData(modular::StoryStorage* story_storage,
fuchsia::modular::ModuleData module_data);
private:
// Implements CreateStory on behalf of protected variants
fidl::StringPtr CreateStoryImpl(fidl::StringPtr story_id, modular::SessionStorage* storage);
};
} // namespace modular_testing
#endif // SRC_MODULAR_LIB_TESTING_TEST_WITH_SESSION_STORAGE_H_