         broadcaster.add(delegate: subscriberC)
         broadcaster.remove(delegate: subscriberB)
         broadcaster.broadcast(that: "We are beautiful")
-        if !messageRecipients.ip_contains(all: ["A", "C"]) || messageRecipients.count != 2 {
-            XCTFail("Intended recipients are A and C. Actual recipients: \(messageRecipients)")
-        }
+
+        XCTAssert(messageRecipients.ip_contains(all: ["A", "C"]), "Message not broadcasted to all recipients.")
+        XCTAssert(messageRecipients.count == 2, "Message was broadcasted to too many recipients.")
     }
 
     func testRemovingMultipleDelegates() {

        broadcaster.add(delegate: subscriberC)
        broadcaster.add(delegate: subscriberA)
        broadcaster.broadcast(that: "We are intrepid") // get it?
        if !messageRecipients.ip_contains(all: ["A", "B", "C"]) || messageRecipients.count != 3 {
            XCTFail("Intended recipients are A, B, and C. Actual recipients: \(messageRecipients)")
        }
    }

    func testRemovingOneDelegate() {


class MulticastTests: XCTestCase {

    func testBroadcastShouldBroadcastToAllDelegates() {
        var messageRecipients = [String]()
        let subscriberA = Subscriber { message in
            if message == "We are wonderful" {
                messageRecipients.append("A")
            }
        }
        let subscriberB = Subscriber { message in
            if message == "We are wonderful" {
                messageRecipients.append("B")
            }
        }
        let subscriberC = Subscriber { message in
            if message == "We are wonderful" {
                messageRecipients.append("C")
            }
        }

        let broadcaster = Broadcaster()
        broadcaster.add(delegate: subscriberA)
        broadcaster.add(delegate: subscriberB)
        broadcaster.add(delegate: subscriberC)
        broadcaster.broadcast(that: "We are wonderful")

        XCTAssert(messageRecipients.ip_contains(all: ["A", "B", "C"]), "Message not broadcasted to all recipients.")
        XCTAssert(messageRecipients.count == 3, "Message was broadcasted to too many recipients.")
    }

    func testAddingSameDelegateShouldNotReadd() {
        var messageRecipients = [String]()
        let subscriberA = Subscriber { message in
            if message == "We are intrepid" {
