Skip to content

Commit f052a1a

Browse files
committed
Adding Url property to UrlLinkFrame
Adding Url and Description to UserUrlLinkFrame Fixing serialization format to conform to specification at https://id3lib.sourceforge.net/id3/id3v2.3.0.html#sec4.3
1 parent 74687bf commit f052a1a

File tree

3 files changed

+182
-142
lines changed

3 files changed

+182
-142
lines changed

Diff for: src/TaglibSharp.Tests/TaggingFormats/Id3V2Test.cs

+40-1
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ public class Id3V2Test
1818
static readonly string[] val_gnre = {"Rap",
1919
"Jazz", "Non-Genre", "Blues"};
2020

21+
static readonly string val_url = "https://example.com/data";
22+
2123
[Test]
2224
public void TestTitle ()
2325
{
@@ -1555,6 +1557,43 @@ public void TestUserTextInformationFrame ()
15551557
});
15561558
}
15571559

1560+
[Test]
1561+
public void TestUrlLinkFrame ()
1562+
{
1563+
var frame = new UrlLinkFrame ("WPUB") {
1564+
Url = val_url
1565+
};
1566+
1567+
FrameTest (frame, 3,
1568+
delegate (Frame f, StringType e) { },
1569+
(d, v) => new UrlLinkFrame (d, v),
1570+
1571+
delegate (Frame f, string m) {
1572+
var g = (f as UrlLinkFrame);
1573+
Assert.AreEqual ("WPUB", g.FrameId, m);
1574+
Assert.AreEqual (val_url, g.Url, m);
1575+
});
1576+
}
1577+
1578+
[Test]
1579+
public void TestUserUrlLinkFrame ()
1580+
{
1581+
var frame = new UserUrlLinkFrame(val_sing) {
1582+
Url = val_url
1583+
};
1584+
1585+
FrameTest (frame, 3,
1586+
delegate (Frame f, StringType e) { },
1587+
(d, v) => new UserUrlLinkFrame (d, v),
1588+
1589+
delegate (Frame f, string m) {
1590+
var g = (f as UserUrlLinkFrame);
1591+
Assert.AreEqual ("WXXX", g.FrameId, m);
1592+
Assert.AreEqual (val_sing, g.Description, m);
1593+
Assert.AreEqual (val_url, g.Url, m);
1594+
});
1595+
}
1596+
15581597
[Test]
15591598
public void TestMovementNameFrame ()
15601599
{
@@ -1777,7 +1816,7 @@ void FrameTest (Frame frame, byte minVersion,
17771816
var tmp = frame.Render (version);
17781817
//Extras.DumpHex (tmp.Data);
17791818
frame = createFunc (tmp, version);
1780-
testFunc (frame, "Render: Version " + version + "; Encoding " + (StringType)encoding);
1819+
testFunc (frame, "Render: Version " + version + "; Encoding " + (StringType)encoding);
17811820
frame = frame.Clone ();
17821821
testFunc (frame, "Clone: Version " + version + "; Encoding " + (StringType)encoding);
17831822
}

0 commit comments

Comments
 (0)