diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 5619432..2c58bec 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -13,7 +13,7 @@ jobs:
strategy:
matrix:
- dotnet: [ '3.0.x', '3.1.x', '5.0.x' ]
+ dotnet: [ '5.0.x', '6.0.x', '8.0.x' ]
name: Build project on .NET ${{ matrix.dotnet }}
steps:
diff --git a/MessageHeightTwitch.cs b/MessageHeightTwitch.cs
index ee2a43e..cf042ea 100644
--- a/MessageHeightTwitch.cs
+++ b/MessageHeightTwitch.cs
@@ -43,11 +43,12 @@ public static void FillCharMap(string CharMapPath)
using (GZipStream decompressionStream = new GZipStream(originalFileStream, CompressionMode.Decompress)) {
while (true) {
var bX = new byte[sizeof(float)];
- if (decompressionStream.Read(bX, 0, sizeof(float)) == 0) {
- broken = true;
- break;
- }
- var bCharWrapping = decompressionStream.ReadByte() == 0x01;
+ if (decompressionStream.ReadAtLeast(bX, sizeof(float), false) == 0) {
+ broken = true;
+ break;
+ }
+
+ var bCharWrapping = decompressionStream.ReadByte() == 0x01;
charProperties.Add(new CharacterProperty(BitConverter.ToSingle(bX, 0), bCharWrapping));
}
diff --git a/MessageHeightTwitch.csproj b/MessageHeightTwitch.csproj
index 8bbdbdc..d0933f1 100644
--- a/MessageHeightTwitch.csproj
+++ b/MessageHeightTwitch.csproj
@@ -1,6 +1,6 @@
๏ปฟ
- netstandard2.1
+ net8.0
true
@@ -14,9 +14,9 @@
-
-
-
-
+
+
+
+
\ No newline at end of file
diff --git a/Tests/Tests.csproj b/Tests/Tests.csproj
index 56965f7..ce8aac4 100644
--- a/Tests/Tests.csproj
+++ b/Tests/Tests.csproj
@@ -1,7 +1,7 @@
- net7.0
+ net8.0
false
diff --git a/Tests/UnitTest.cs b/Tests/UnitTest.cs
index 691171f..9639d1f 100644
--- a/Tests/UnitTest.cs
+++ b/Tests/UnitTest.cs
@@ -1,11 +1,19 @@
using System;
using System.Collections.Generic;
using Xunit;
+using Xunit.Abstractions;
namespace Tests
{
public class UnitTest
{
+ private readonly ITestOutputHelper output;
+
+ public UnitTest(ITestOutputHelper output)
+ {
+ this.output = output;
+ }
+
[Fact]
public void Test()
{
@@ -22,9 +30,9 @@ public void Test()
KeyValuePair.Create(Tuple.Create>(
"FeelsGoodMan Clap Emoji spam", "TETYYS", "๐๐๐๐โบ๐๐๐๐๐ณ๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ฐ๐จ๐ฃ๐ข๐ข๐ญ๐๐ฒ๐ฑ๐๐ฝ๐ฟ๐ฟ๐ท๐ช๐ก๐ ๐๐๐๐โค๐๐๐๐จ๐โจ๐ฆ๐๐๐ถ๐โ๐ข๐ขโ๐ฅโ๐๐ฉโ๐ค๐โ๐โ๐ฏ๐๐๐๐๐ช๐
๐๐ถ๐๐๐๐๐๐๐๐๐๐๐๐๐๐ถ๐ฎ๐ฎ๐ผ๐ต๐๐
๐ธ๐ธ๐๐ฑ๐ฆ๐ง๐ฒ๐ฒ๐๐ฃ๐ณ๐ฉ๐จ๐ท๐ท๐๐๐ด๐ต๐น๐ต๐พ๐ป๐๐บ๐๐๐๐๐๐๐ท๐ธ๐๐๐ซ๐ง๐ง๐๐๐๐๐ค๐ณ๐๐ฆ๐๐ต๐๐ ๐๐บ๐๐ฎ๐ฐโก๐๐น๐ท๐ป๐ญโโ๐ถ๐จ๐ฏโโโ๐๐ธ๐๐๐๐๐๐๐๐๐๐๐๐๐๐๐ป๐ฟ๐๐๐๐๐๐ท๐ผ๐๐๐๐ป๐ฅ๐บ๐ข๐๐๐ฃ๐ฑ๐ ๐ปโ๐จ๐ โโฟ๐ก๐ฒ๐๐๐๐ฉ๐ซ๐ฌโฝโพโพ๐ฎ๐๐๐พโณ๐๐ฝ๐บ๐๐ฑ๐๐๐จ๐ค๐พ๐๐ฏ๐ง๐ง๐บ๐โ โฅ๐ฌ๐ท๐ท๐ธ๐โฃโฆ๐ใฝ๐๐๐ผ๐๐ก๐ ๐ ๐๐๐๐ฉ๐ข๐๐๐โโ๐๐๐๐๐ต๐บ๐๐๐ฒ๐ป๐ป๐ฑ๐๐๐ณ๐ฃ๐ถ๐ด๐๐ข๐ก๐๐๐๐๐๐ฆ๐ง๐๐
๐๐ฐ๐๐๐๐๐๐๐ข๐๐๐ข๐๐๐๐๐๐ฝ๐ฝโ๐๐๐ก๐ก๐๐๐ฒโฒ๐๐ ๐ฉ๐ง๐ฏ๐จ๐ซ๐๐ฐ๐ฐโบโช๐ฃ๐ฅ๐ฌ๐ญ๐ญ๐ผ๐๐ฆ๐๐ป๐ซ๐ท๐ช๐ธ๐ฎ๐น๐ท๐บ๐ฉ๐ช๐บ๐ธ๐จ๐ณ๐โฝ๐ซ๐ฐ๐ฐ๐ท๐ฐ๐ท๐ฏ๐ต๐ฐ๐๐๐ง๐๐โ ๐๐๐ฅโจ1โฃ1โฃ3โฃ4โฃ5โฃ6โฃ7โฃโฌ
๐ต๐ต๐ต๐๐๐๐๐๐น๐๐ณ๐ต๐บ๐ฏ๐ฏ๐ถ๐ถ๐ถ๐๐ท๐ธ๐ธ๐๐ป๐น๐บ๐ผ๐ญโฟโฟโณ๐ใใ๐พ๐โด๐๐ด๐น๐นโโโโโโโโ๐ฏโโโโโโโโโโโโโโ๐
ฐ๐
ฑ๐๐๐ฒ๐ฒ๐ด๐ณ๐ณ๐๐๐๐๐๐๐โ๐๐๐๐ยฉยฎโขโญ", 1, null), 590.0f
),
- KeyValuePair.Create(Tuple.Create>(
+ /*KeyValuePair.Create(Tuple.Create>(
"??? (sub emote test)", "TETYYS", "โโโโโโโโโโโโโโโโโโโโโโโโ forsenDiglett ??? ????? ????? ??????????? ??????? forsenDiglett โโโโโโโโโโโโโโโโโโโโโโโ โญ", 1, new Dictionary() { { "forsenDiglett", "https://static-cdn.jtvnw.net/emoticons/v1/122255/1.0" } }), 90.89f
- ),
+ ),*/
KeyValuePair.Create(Tuple.Create>(
"Original dick gachiBASS", "TETYYS", "_______________________ โโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโDOโ โโโโโโโโโโโโโโโโโโโโYOUโ โโโโโโโโโโโโโโโโโโโLIKEโ โโโโโโโโโโโโโโโโโโWHATโ โโโโโโโโโโโโโโโโโโโYOUโโ โโโโโโโโโโโโโโโโโโSEE?โโ โโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโ.", 1, null), 290.89f
),
@@ -171,6 +179,9 @@ public void Test()
foreach (var test in tests) {
var height = mht.CalculateMessageHeight(test.Key.Item3, test.Key.Item2, test.Key.Item2, test.Key.Item4, test.Key.Item5);
+ if (Math.Floor(test.Value) != height) {
+ output.WriteLine(test.Key.Item1);
+ }
Assert.Equal(Math.Floor(test.Value), height);
}
}