public void IsMuted_MuteTabRules_NotInHomeTimelineTest() { this.tabinfo.MuteUserIds = new HashSet <long> { }; var muteTab = new MuteTabModel(); muteTab.AddFilter(new PostFilterRule { FilterName = "foo", MoveMatches = true, }); this.tabinfo.AddTab(muteTab); // ミュートタブによるミュートはリプライも対象とする var post = new PostClass { UserId = 12345L, ScreenName = "foo", Text = "@hoge hogehoge", IsReply = true, }; Assert.True(this.tabinfo.IsMuted(post, isHomeTimeline: false)); }
public void IsMuted_MuteTabRulesTest() { this.tabinfo.MuteUserIds = new HashSet <long> { }; var muteTab = new MuteTabModel(); muteTab.AddFilter(new PostFilterRule { FilterName = "foo", MoveMatches = true, }); this.tabinfo.AddTab(muteTab); var post = new PostClass { UserId = 12345L, ScreenName = "foo", Text = "hogehoge", }; Assert.True(this.tabinfo.IsMuted(post, isHomeTimeline: true)); }
public void IsMuted_MuteTabRules_NotInHomeTimelineTest() { this.tabinfo.MuteUserIds = new HashSet<long> { }; var muteTab = new MuteTabModel(); muteTab.AddFilter(new PostFilterRule { FilterName = "foo", MoveMatches = true, }); this.tabinfo.AddTab(muteTab); // ミュートタブによるミュートはリプライも対象とする var post = new PostClass { UserId = 12345L, ScreenName = "foo", Text = "@hoge hogehoge", IsReply = true, }; Assert.True(this.tabinfo.IsMuted(post, isHomeTimeline: false)); }
private void LoadConfig() { _cfgCommon = SettingCommon.Load(); SettingCommon.Instance = this._cfgCommon; if (_cfgCommon.UserAccounts == null || _cfgCommon.UserAccounts.Count == 0) { _cfgCommon.UserAccounts = new List<UserAccount>(); if (!string.IsNullOrEmpty(_cfgCommon.UserName)) { UserAccount account = new UserAccount(); account.Username = _cfgCommon.UserName; account.UserId = _cfgCommon.UserId; account.Token = _cfgCommon.Token; account.TokenSecret = _cfgCommon.TokenSecret; _cfgCommon.UserAccounts.Add(account); } } _cfgLocal = SettingLocal.Load(); // v1.2.4 以前の設定には ScaleDimension の項目がないため、現在の DPI と同じとして扱う if (_cfgLocal.ScaleDimension.IsEmpty) _cfgLocal.ScaleDimension = this.CurrentAutoScaleDimensions; var tabsSetting = SettingTabs.Load().Tabs; foreach (var tabSetting in tabsSetting) { TabModel tab; switch (tabSetting.TabType) { case MyCommon.TabUsageType.Home: tab = new HomeTabModel(tabSetting.TabName); break; case MyCommon.TabUsageType.Mentions: tab = new MentionsTabModel(tabSetting.TabName); break; case MyCommon.TabUsageType.DirectMessage: tab = new DirectMessagesTabModel(tabSetting.TabName); break; case MyCommon.TabUsageType.Favorites: tab = new FavoritesTabModel(tabSetting.TabName); break; case MyCommon.TabUsageType.UserDefined: tab = new FilterTabModel(tabSetting.TabName); break; case MyCommon.TabUsageType.UserTimeline: tab = new UserTimelineTabModel(tabSetting.TabName, tabSetting.User); break; case MyCommon.TabUsageType.PublicSearch: tab = new PublicSearchTabModel(tabSetting.TabName) { SearchWords = tabSetting.SearchWords, SearchLang = tabSetting.SearchLang, }; break; case MyCommon.TabUsageType.Lists: tab = new ListTimelineTabModel(tabSetting.TabName, tabSetting.ListInfo); break; case MyCommon.TabUsageType.Mute: tab = new MuteTabModel(tabSetting.TabName); break; default: continue; } tab.UnreadManage = tabSetting.UnreadManage; tab.Protected = tabSetting.Protected; tab.Notify = tabSetting.Notify; tab.SoundFile = tabSetting.SoundFile; if (tab.IsDistributableTabType) { var filterTab = (FilterTabModel)tab; filterTab.FilterArray = tabSetting.FilterArray; filterTab.FilterModified = false; } if (this._statuses.ContainsTab(tab.TabName)) tab.TabName = this._statuses.MakeTabName("MyTab"); this._statuses.AddTab(tab); } if (_statuses.Tabs.Count == 0) { _statuses.AddTab(new HomeTabModel()); _statuses.AddTab(new MentionsTabModel()); _statuses.AddTab(new DirectMessagesTabModel()); _statuses.AddTab(new FavoritesTabModel()); } }
public void IsMuted_MuteTabRulesTest() { this.tabinfo.MuteUserIds = new HashSet<long> { }; var muteTab = new MuteTabModel(); muteTab.AddFilter(new PostFilterRule { FilterName = "foo", MoveMatches = true, }); this.tabinfo.AddTab(muteTab); var post = new PostClass { UserId = 12345L, ScreenName = "foo", Text = "hogehoge", }; Assert.True(this.tabinfo.IsMuted(post, isHomeTimeline: true)); }