                 
                 context("with new observedBitrate value") {
                     it("changes the bandwidth") {
-                        let avfoundationPlayback = AVFoundationPlayback(options: [:])
-                        avfoundationPlayback.render()
-                        let accessLog = AccessLogEventMock()
                         accessLog.setObservedBitrate(13.0)
                         let player = PlayerMock(accessLogEvent: accessLog)
-                        avfoundationPlayback.player = player
+                        avFoundationPlayback.player = player
 
                         NotificationCenter.default.post(
                             name: .AVPlayerItemNewAccessLogEntry,
                             object: player.currentItem
                         )
 
-                        expect(avfoundationPlayback.bandwidth).toEventually(equal(13.0))
+                        expect(avFoundationPlayback.bandwidth).toEventually(equal(13.0))
                     }
                 }
 
                 describe("droppedFrames") {
                     context("with new numberOfDroppedVideoFrames value") {
                         it("changes the droppedFrames") {
-                            let avfoundationPlayback = AVFoundationPlayback(options: [:])
-                            avfoundationPlayback.render()
-                            let accessLog = AccessLogEventMock()
                             accessLog.setDroppedFrames(2)
                             let player = PlayerMock(accessLogEvent: accessLog)
-                            avfoundationPlayback.player = player
+                            avFoundationPlayback.player = player
                             
                             NotificationCenter.default.post(
                                 name: .AVPlayerItemNewAccessLogEntry,
                                 object: player.currentItem
                             )
                             
-                            expect(avfoundationPlayback.droppedFrames).toEventually(equal(2))
+                            expect(avFoundationPlayback.droppedFrames).toEventually(equal(2))
                         }
                         
                         context("when occurs another AVPlayerItemNewAccessLogEntry event") {
                             it("changes the droppedFrames to an accumulated value") {
-                                let avfoundationPlayback = AVFoundationPlayback(options: [:])
-                                avfoundationPlayback.render()
-                                let accessLog = AccessLogEventMock()
                                 accessLog.setDroppedFrames(2)
                                 let player = PlayerMock(accessLogEvent: accessLog)
-                                avfoundationPlayback.player = player
+                                avFoundationPlayback.player = player
                                 
                                 NotificationCenter.default.post(
                                     name: .AVPlayerItemNewAccessLogEntry,

                        kSourceUrl: "http://clappr.io/highline.mp4"
                    ]

                    let avfoundationPlayback = AVFoundationPlayback(options: options)
                    avfoundationPlayback.render()

                    expect(avfoundationPlayback.domainHost).toEventually(equal("clappr.io"))
                }

                it("makes available the decoded frames value") {

                    
                    context("when call stop") {
                        it("clears droppedFrames value") {
                            accessLog.setDroppedFrames(24)
                            let player = PlayerMock(accessLogEvent: accessLog)
                            avFoundationPlayback.player = player

                            NotificationCenter.default.post(
                                name: .AVPlayerItemNewAccessLogEntry,
                                object: player.currentItem
                            )
                            avFoundationPlayback.state = .playing
                            
                            avFoundationPlayback.stop()
                            
                            expect(avFoundationPlayback.droppedFrames).toEventually(equal(0))
                        }
                    }
                    
                    context("when playback did end") {
                        it("clears droppedFrames value") {
                            accessLog.setDroppedFrames(76)
                            let player = PlayerMock(accessLogEvent: accessLog, isFinished: true)
                            avFoundationPlayback.player = player
                            
                            NotificationCenter.default.post(
                                name: .AVPlayerItemNewAccessLogEntry,
