OSDN Git Service

IApiConnection, IHttpRequest, ApiResponseで構成する新しいTwitterApiConnectionを実装
[opentween/open-tween.git] / OpenTween.Tests / MyCommonTest.cs
index dff7e0a..1261d47 100644 (file)
@@ -128,17 +128,25 @@ namespace OpenTween
         public static readonly TheoryData<string, JsonData> CreateDataFromJsonTestCase = new()
         {
             {
-                @"{""id"":""1"", ""body"":""hogehoge""}",
+                """{"id":"1", "body":"hogehoge"}""",
                 new JsonData { Id = "1", Body = "hogehoge" }
             },
         };
 
         [Theory]
         [MemberData(nameof(CreateDataFromJsonTestCase))]
-        public void CreateDataFromJsonTest<T>(string json, T expected)
+        public void CreateDataFromJson_StringTest<T>(string json, T expected)
             => Assert.Equal(expected, MyCommon.CreateDataFromJson<T>(json));
 
         [Theory]
+        [MemberData(nameof(CreateDataFromJsonTestCase))]
+        public void CreateDataFromJson_BytesTest<T>(string json, T expected)
+        {
+            var jsonBytes = Encoding.UTF8.GetBytes(json);
+            Assert.Equal(expected, MyCommon.CreateDataFromJson<T>(jsonBytes));
+        }
+
+        [Theory]
         [InlineData("hoge123@example.com", true)]
         [InlineData("hogehoge", false)]
         [InlineData("foo.bar@example.com", true)]
@@ -189,11 +197,11 @@ namespace OpenTween
         public static readonly TheoryData<PostClass, string> GetStatusUrlTest1TestCase = new()
         {
             {
-                new PostClass { StatusId = 249493863826350080L, ScreenName = "Favstar_LM", RetweetedId = null, RetweetedBy = null },
+                new PostClass { StatusId = new TwitterStatusId("249493863826350080"), ScreenName = "Favstar_LM", RetweetedId = null, RetweetedBy = null },
                 "https://twitter.com/Favstar_LM/status/249493863826350080"
             },
             {
-                new PostClass { StatusId = 216033842434289664L, ScreenName = "haru067", RetweetedId = 200245741443235840L, RetweetedBy = "re4k" },
+                new PostClass { StatusId = new TwitterStatusId("216033842434289664"), ScreenName = "haru067", RetweetedId = new TwitterStatusId("200245741443235840"), RetweetedBy = "re4k" },
                 "https://twitter.com/haru067/status/200245741443235840"
             },
         };
@@ -207,7 +215,7 @@ namespace OpenTween
         [InlineData("Favstar_LM", 249493863826350080L, "https://twitter.com/Favstar_LM/status/249493863826350080")]
         [InlineData("haru067", 200245741443235840L, "https://twitter.com/haru067/status/200245741443235840")]
         public void GetStatusUrlTest2(string screenName, long statusId, string expected)
-            => Assert.Equal(expected, MyCommon.GetStatusUrl(screenName, statusId));
+            => Assert.Equal(expected, MyCommon.GetStatusUrl(screenName, new TwitterStatusId(statusId)));
 
         [Fact]
         public void GetErrorLogPathTest()
@@ -311,15 +319,6 @@ namespace OpenTween
         }
 
         [Fact]
-        public void CreateBrowserProcessStartInfo_DefaultBrowserTest()
-        {
-            var startInfo = MyCommon.CreateBrowserProcessStartInfo(browserPathWithArgs: null, "https://example.com/");
-            Assert.Equal("https://example.com/", startInfo.FileName);
-            Assert.Equal("", startInfo.Arguments);
-            Assert.True(startInfo.UseShellExecute);
-        }
-
-        [Fact]
         public void CreateBrowserProcessStartInfo_BrowserPathTest()
         {
             var startInfo = MyCommon.CreateBrowserProcessStartInfo("C:\\browser.exe", "https://example.com/");
@@ -355,7 +354,7 @@ namespace OpenTween
             Assert.False(startInfo.UseShellExecute);
         }
 
-        public static readonly TheoryData<int[], (int, int)[]> ToRangeChunkTestCase = new()
+        public static readonly TheoryData<int[], (int Start, int End)[]> ToRangeChunkTestCase = new()
         {
             {
                 new[] { 1 },