 
                 it("sends new status when reserve status changes") {
                     var invocations = 0
-                    saleArtwork.numberOfBidsWithReserveSignal.subscribeNext { (newReserveStatus) -> Void in
+                    saleArtwork.viewModel.numberOfBidsWithReserveSignal.subscribeNext { (newReserveStatus) -> Void in
                         invocations++
                     }
                     


                it("sends new status when highest bid changes") {
                    var invocations = 0
                    saleArtwork.numberOfBidsWithReserveSignal.subscribeNext { (newReserveStatus) -> Void in
                        invocations++
                    }



        describe("estimates") {
            it("gives no estimtates when no estimates present") {
                expect(saleArtwork.viewModel.estimateString) == "No Estimate"
            }
            
            it("gives estimtate range when low and high are present") {
                saleArtwork.lowEstimateCents = 100_00
                saleArtwork.highEstimateCents = 200_00
                expect(saleArtwork.viewModel.estimateString) == "Estimate: $100–$200"
            }

            it("gives estimate if present") {
                saleArtwork.estimateCents = 200_00
                expect(saleArtwork.viewModel.estimateString) == "Estimate: $200"
            }

            it("give estimate if estimate both and low/high are present") {
                saleArtwork.highEstimateCents = 300_00
                saleArtwork.lowEstimateCents = 100_00
                saleArtwork.estimateCents = 200_00
                expect(saleArtwork.viewModel.estimateString) == "Estimate: $200"
            }
            
            it("gives no estimate if only high is present") {
                saleArtwork.highEstimateCents = 100_00
                expect(saleArtwork.viewModel.estimateString) == "No Estimate"
            }

            it("gives no estimate if only low is present") {
                saleArtwork.lowEstimateCents = 100_00
                expect(saleArtwork.viewModel.estimateString) == "No Estimate"
            }

            it("indicates that an artwork is not for sale") {
                saleArtwork.artwork.soldStatus = "sold"
                expect((saleArtwork.viewModel.forSaleSignal.first() as! Bool)).toEventually( beFalse() )
            }

            it("indicates that an artwork is for sale") {
                saleArtwork.artwork.soldStatus = "anything else"
                expect((saleArtwork.viewModel.forSaleSignal.first() as! Bool)).toEventually( beTrue() )
            }
        }

        describe("reserve status") {
            it("gives default number of bids") {
                let reserveStatus = saleArtwork.viewModel.numberOfBidsWithReserveSignal.first() as! String

                expect(reserveStatus) == "0 bids placed"
            }
