mirror of
https://github.com/vicliu624/trail-mate.git
synced 2026-10-23 21:43:28 +00:00
0.1.26-alpha release
* refactor: render chat rows from presentation state * Fix Meshtastic channel sync and add MeshCore CN preset * Add granular chat notification settings * Add SD settings backup and restore * Prepare 0.1.26-alpha release --------- Co-authored-by: vicliu624 <vicliu@outlook.com>
This commit is contained in:
1 parent
adf33068d7
commit
bf7068b02b
1071 files changed
+78913
-14110
No files matched your search
@@ -0,0 +1,80 @@
|
||||
#include "fake/fake_chat_action_sink.h"
|
||||
#include "fake/fake_chat_presentation_source.h"
|
||||
#include "fake/fake_device_status_source.h"
|
||||
#include "fake/fake_gps_status_source.h"
|
||||
#include "fake/fake_map_action_sink.h"
|
||||
#include "fake/fake_map_presentation_source.h"
|
||||
#include "fake/fake_mesh_status_source.h"
|
||||
#include "fake/fake_settings_action_sink.h"
|
||||
#include "fake/fake_settings_source.h"
|
||||
|
||||
#include "ui_presentation/workspace/presentation_workspace.h"
|
||||
|
||||
#include <cassert>
|
||||
|
||||
int main()
|
||||
{
|
||||
ui::tests::FakeDeviceStatusSource device_source;
|
||||
ui::device::DeviceStatusModel device(device_source);
|
||||
|
||||
ui::tests::FakeGpsStatusSource gps_source;
|
||||
ui::gps::GpsStatusModel gps(gps_source);
|
||||
|
||||
ui::tests::FakeMeshStatusSource mesh_source;
|
||||
ui::mesh::MeshStatusModel mesh(mesh_source);
|
||||
|
||||
ui::tests::FakeSettingsSource settings_source;
|
||||
ui::tests::FakeSettingsActionSink settings_sink;
|
||||
ui::settings::SettingsModel settings(settings_source, settings_sink);
|
||||
|
||||
ui::tests::FakeChatPresentationSource chat_source;
|
||||
ui::tests::FakeChatActionSink chat_sink;
|
||||
ui::chat::ChatWorkspaceModel chat(chat_source, chat_sink);
|
||||
|
||||
ui::tests::FakeChatPresentationSource team_chat_source;
|
||||
ui::tests::FakeChatActionSink team_chat_sink;
|
||||
ui::chat::ChatWorkspaceModel team_chat(team_chat_source, team_chat_sink);
|
||||
|
||||
ui::tests::FakeMapPresentationSource map_source;
|
||||
ui::tests::FakeMapActionSink map_sink;
|
||||
ui::map::MapWorkspaceModel map(map_source, map_sink);
|
||||
|
||||
ui::workspace::PresentationWorkspace empty;
|
||||
assert(!empty.hasDevice());
|
||||
assert(!empty.hasGps());
|
||||
assert(!empty.hasMesh());
|
||||
assert(!empty.hasSettings());
|
||||
assert(!empty.hasChat());
|
||||
assert(!empty.hasTeamChat());
|
||||
assert(!empty.hasMap());
|
||||
assert(!ui::workspace::hasCoreStatusModels(empty));
|
||||
assert(!ui::workspace::hasInteractiveWorkspaceModels(empty));
|
||||
|
||||
ui::workspace::PresentationWorkspace workspace;
|
||||
workspace.device = &device;
|
||||
workspace.gps = &gps;
|
||||
workspace.mesh = &mesh;
|
||||
workspace.settings = &settings;
|
||||
workspace.chat = &chat;
|
||||
workspace.team_chat = &team_chat;
|
||||
workspace.map = ↦
|
||||
|
||||
assert(workspace.hasDevice());
|
||||
assert(workspace.hasGps());
|
||||
assert(workspace.hasMesh());
|
||||
assert(workspace.hasSettings());
|
||||
assert(workspace.hasChat());
|
||||
assert(workspace.hasTeamChat());
|
||||
assert(workspace.hasMap());
|
||||
assert(ui::workspace::hasCoreStatusModels(workspace));
|
||||
assert(ui::workspace::hasInteractiveWorkspaceModels(workspace));
|
||||
|
||||
ui::workspace::PresentationWorkspace status_only;
|
||||
status_only.device = &device;
|
||||
status_only.gps = &gps;
|
||||
status_only.mesh = &mesh;
|
||||
assert(ui::workspace::hasCoreStatusModels(status_only));
|
||||
assert(!ui::workspace::hasInteractiveWorkspaceModels(status_only));
|
||||
|
||||
return 0;
|
||||
}
|
||||
Reference in new issue
Block a user