/Source Code/UnitTests/SongItemTest.vb
Visual Basic | 95 lines | 54 code | 22 blank | 19 comment | 0 complexity | 471d663b852eded173cf0058fc1b4ace MD5 | raw file
- Imports System
- Imports System.Collections.Generic
- Imports Microsoft.VisualStudio.TestTools.UnitTesting
- Imports PowerSong.SongDatabase.Items
-
- '''<summary>
- '''This is a test class for SongItemTest and is intended
- '''to contain all SongItemTest Unit Tests
- '''</summary>
- <TestClass()> _
- Public Class SongItemTest
-
- '''<summary>
- '''A test for SongID
- '''</summary>
- <TestMethod()> _
- Public Sub SongIDTest()
-
- Dim target As SongItem = New SongItem
- Dim ID As Guid = Guid.NewGuid
- target.SongID = ID
- Assert.AreEqual(ID, target.SongID)
-
- End Sub
-
- ''' <summary>
- ''' Checks that an exception is thrown whenever trying to access an ID of a song without an ID.
- ''' </summary>
- <TestMethod(), ExpectedException(GetType(ApplicationException))> _
- Public Sub SongIDInvalidTest()
-
- Dim target As SongItem = New SongItem
- Dim ID As Guid = target.SongID
-
- End Sub
-
- '''<summary>
- '''A test for Authors
- '''</summary>
- <TestMethod()> _
- Public Sub AuthorsTest()
-
- Dim target As New SongItem("Test Title", "Test Part 1", "Test part 2", "Test part 3")
-
- target.Authors.Add("A")
- target.Authors.Add("B")
- target.Authors.Add("C")
-
- Dim actual As List(Of String) = target.Authors
- Assert.AreEqual(3, actual.Count)
- Assert.AreEqual("A", actual(0))
- Assert.AreEqual("B", actual(1))
- Assert.AreEqual("C", actual(2))
-
- End Sub
-
- '''<summary>
- '''A test for SongItem Constructor
- '''</summary>
- <TestMethod()> _
- Public Sub SongItemConstructorTest1()
-
- Dim Song As SongItem = New SongItem
-
- Assert.AreEqual("", Song.Title)
- Assert.AreEqual(0, Song.Parts.Count)
- Assert.AreEqual(0, Song.Authors.Count)
- Assert.AreEqual(0, Song.Categories.Count)
- Assert.IsTrue(Song.CopyrightLine = "")
-
- End Sub
-
- '''<summary>
- '''A test for SongItem Constructor
- '''</summary>
- <TestMethod()> _
- Public Sub SongItemConstructorTest()
-
- Dim title As String = "Test Title"
- Dim parts() As String = {"Part 1", "Part 2", "Part 3"}
- Dim Song As SongItem = New SongItem(title, parts)
-
- Assert.AreEqual("Test Title", Song.Title)
- Assert.AreEqual(3, Song.Parts.Count)
- Assert.AreEqual("Part 1", Song.Parts(0))
- Assert.AreEqual("Part 2", Song.Parts(1))
- Assert.AreEqual("Part 3", Song.Parts(2))
-
- Assert.AreEqual(0, Song.Authors.Count)
- Assert.AreEqual(0, Song.Categories.Count)
- Assert.IsTrue(Song.CopyrightLine = "")
-
- End Sub
-
- End Class