public void escutaAdicaoDeProduto()
        {
            CarrinhoCompras        c    = new CarrinhoCompras();
            MockObservadorCarrinho mock = new MockObservadorCarrinho();

            c.adicionarObservador(mock);
            c.adicionaProduto(new Produto("tenis", 100));
            mock.verificaRecebimentoProduto("tenis", 100);
        }
        public void AdicionarDoisObservadores()
        {
            CarrinhoCompras        c     = new CarrinhoCompras();
            MockObservadorCarrinho mock1 = new MockObservadorCarrinho();
            MockObservadorCarrinho mock2 = new MockObservadorCarrinho();

            c.adicionarObservador(mock1);
            c.adicionarObservador(mock2);
            c.adicionaProduto(new Produto("tenis", 100));
            mock1.verificaRecebimentoProduto("tenis", 100);
            mock2.verificaRecebimentoProduto("tenis", 100);
        }
        public void ContinuaNotificandoComErroEmObservador()
        {
            CarrinhoCompras        c     = new CarrinhoCompras();
            MockObservadorCarrinho mock1 = new MockObservadorCarrinho();
            IObservadorCarrinho    mock2 = new MockObservadorComProblema();
            MockObservadorCarrinho mock3 = new MockObservadorCarrinho();

            c.adicionarObservador(mock1);
            c.adicionarObservador(mock2);
            c.adicionarObservador(mock3);
            c.adicionaProduto(new Produto("tenis", 100));
            mock1.verificaRecebimentoProduto("tenis", 100);
            mock3.verificaRecebimentoProduto("tenis", 100);
        }