using System.Text;
using System.Text.RegularExpressions;
using System.Windows.Forms;
-using OpenTween.Api;
using OpenTween.Api.DataModel;
-using OpenTween.Connection;
using OpenTween.Models;
using OpenTween.OpenTweenCustomControl;
using OpenTween.Setting;
+using OpenTween.SocialProtocol;
using OpenTween.Thumbnail;
using Xunit;
using Xunit.Extensions;
{
var settings = new SettingManager("");
var tabinfo = new TabInformations();
- using var twitterApi = new TwitterApi();
- using var twitter = new Twitter(twitterApi);
+ using var accounts = new AccountCollection();
using var imageCache = new ImageCache();
using var iconAssets = new IconAssetsManager();
var thumbnailGenerator = new ThumbnailGenerator(new(autoupdate: false));
BindingFlags.NonPublic | BindingFlags.Static | BindingFlags.SetField);
field.SetValue(null, tabinfo);
- using var tweenMain = new TweenMain(settings, tabinfo, twitter, imageCache, iconAssets, thumbnailGenerator);
+ tabinfo.AddDefaultTabs();
+
+ using var tweenMain = new TweenMain(settings, tabinfo, accounts, imageCache, iconAssets, thumbnailGenerator);
var context = new TestContext(settings, tabinfo);
func(tweenMain, context);
}
[WinFormsFact]
+ public void RemoveSpecifiedTab_Test()
+ {
+ this.UsingTweenMain((tweenMain, context) =>
+ {
+ Assert.Equal(4, tweenMain.ListTab.TabPages.Count);
+
+ var tab = new PublicSearchTabModel("hoge")
+ {
+ SearchWords = "#OpenTween",
+ SearchLang = "ja",
+ };
+ context.TabInfo.AddTab(tab);
+ tweenMain.AddNewTab(tab, startup: false);
+ Assert.Equal(5, tweenMain.ListTab.TabPages.Count);
+
+ var tabPage = tweenMain.ListTab.TabPages[4];
+ var listView = (DetailsListView)tabPage.Controls[0];
+ var searchPanel = (Panel)tabPage.Controls[1];
+ Assert.Equal("hoge", tabPage.Text);
+
+ tweenMain.RemoveSpecifiedTab("hoge", confirm: false);
+
+ Assert.Equal(4, tweenMain.ListTab.TabPages.Count);
+ Assert.False(context.TabInfo.ContainsTab("hoge"));
+ Assert.True(tabPage.IsDisposed);
+ Assert.True(listView.IsDisposed);
+ Assert.True(searchPanel.IsDisposed);
+ });
+ }
+
+ [WinFormsFact]
public void RefreshTimeline_Test()
{
this.UsingTweenMain((tweenMain, context) =>