feat: implement cross-platform features and UI integration
- iOS: Add BackgroundSyncService, SyncScheduler, SyncWorker, BookmarkViewModel, FeedViewModel - iOS: Add BackgroundSyncService, SyncScheduler, SyncWorker services - Linux: Add settings-store.vala, State.vala signals, view widgets (FeedList, FeedDetail, AddFeed, Search, Settings, Bookmark) - Linux: Add bookmark-store.vala, bookmark vala model, search-service.vala - Android: Add NotificationService, NotificationManager, NotificationPreferencesStore - Android: Add BookmarkDao, BookmarkRepository, SettingsStore - Add unit tests for iOS, Android, Linux - Add integration tests - Add performance benchmarks - Update tasks and documentation Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
82
linux/src/tests/notification-manager-tests.vala
Normal file
82
linux/src/tests/notification-manager-tests.vala
Normal file
@@ -0,0 +1,82 @@
|
||||
/*
|
||||
* NotificationManagerTests.vala
|
||||
*
|
||||
* Unit tests for Linux notification manager.
|
||||
*/
|
||||
|
||||
using Gio;
|
||||
using GLib;
|
||||
using Gtk;
|
||||
|
||||
public class RSSuper.NotificationManagerTests {
|
||||
|
||||
public static int main(string[] args) {
|
||||
Test.init(ref args);
|
||||
|
||||
Test.add_func("/notification-manager/instance", () => {
|
||||
var manager = NotificationManager.get_instance();
|
||||
assert(manager != null);
|
||||
});
|
||||
|
||||
Test.add_func("/notification-manager/initialize", () => {
|
||||
var manager = NotificationManager.get_instance();
|
||||
manager.initialize();
|
||||
assert(manager.get_badge() != null);
|
||||
});
|
||||
|
||||
Test.add_func("/notification-manager/set-unread-count", () => {
|
||||
var manager = NotificationManager.get_instance();
|
||||
manager.initialize();
|
||||
|
||||
manager.set_unread_count(5);
|
||||
assert(manager.get_unread_count() == 5);
|
||||
});
|
||||
|
||||
Test.add_func("/notification-manager/clear-unread-count", () => {
|
||||
var manager = NotificationManager.get_instance();
|
||||
manager.initialize();
|
||||
|
||||
manager.set_unread_count(5);
|
||||
manager.clear_unread_count();
|
||||
assert(manager.get_unread_count() == 0);
|
||||
});
|
||||
|
||||
Test.add_func("/notification-manager/badge-visibility", () => {
|
||||
var manager = NotificationManager.get_instance();
|
||||
manager.initialize();
|
||||
|
||||
manager.set_badge_visibility(true);
|
||||
assert(manager.should_show_badge() == false);
|
||||
|
||||
manager.set_unread_count(1);
|
||||
assert(manager.should_show_badge() == true);
|
||||
});
|
||||
|
||||
Test.add_func("/notification-manager/show-badge", () => {
|
||||
var manager = NotificationManager.get_instance();
|
||||
manager.initialize();
|
||||
|
||||
manager.show_badge();
|
||||
assert(manager.get_badge() != null);
|
||||
});
|
||||
|
||||
Test.add_func("/notification-manager/hide-badge", () => {
|
||||
var manager = NotificationManager.get_instance();
|
||||
manager.initialize();
|
||||
|
||||
manager.hide_badge();
|
||||
var badge = manager.get_badge();
|
||||
assert(badge != null);
|
||||
});
|
||||
|
||||
Test.add_func("/notification-manager/show-badge-with-count", () => {
|
||||
var manager = NotificationManager.get_instance();
|
||||
manager.initialize();
|
||||
|
||||
manager.show_badge_with_count(10);
|
||||
assert(manager.get_badge() != null);
|
||||
});
|
||||
|
||||
return Test.run();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user