Example #1
0
    def test_informacoes(self):
        estacao = Estacao(123, 'MAQ1-GRH', '500GB', '4GB', 'Setor RH')
        servidor = ServidorDeImpressora(1234, 'Ricks', 500, 4, 500, 6)
        impressora = Impressora(123, 'HP 2341', '100')
        servidor.adicionar_impressora(impressora)
        impressora.status = 'ocupada'
        arquivo = Arquivo('tcc.pdf', 20, 1)
        usuario = Usuario('linus', '1234')
        usuario.conectar_se_a_rede()
        usuario.enviar_arquivo_para_impressao(arquivo, usuario, impressora)

        estacao.listar_informacoes() |should| equal_to({'MAQ1-GRH': [123, 'linus', '19/09/2013 - 16:00'], \
                                                        'arquivos': [['tcc.pdf', 1]]})
 def test_lista_arquivos_em_espera_de_cada_impressora(self):
     usuario = Usuario('linus', '1234')
     estacao = Estacao(123, 'MAQ1-GRH', '500GB', '4GB', 'Setor RH')
     impressora1 = Impressora(123, 'HP 2341', '100')
     impressora2 = Impressora(456, 'HP 1111', '100')
     self.servidor.adicionar_impressora(impressora1)
     self.servidor.adicionar_impressora(impressora2)
     impressora1.status = 'ocupada'
     impressora2.status = 'ocupada'
     arquivo1 = Arquivo('tcc.pdf', 20, 1)
     arquivo2 = Arquivo('imagem.jpg', 20, 1)
     arquivo3 = Arquivo('texto.pdf', 20, 1)
     usuario.conectar_se_a_rede()
     usuario.enviar_arquivo_para_impressao(arquivo1, usuario, impressora1)
     usuario.enviar_arquivo_para_impressao(arquivo2, usuario, impressora1)
     usuario.enviar_arquivo_para_impressao(arquivo3, usuario, impressora2)
     self.servidor.listar_arquivos_em_espera_de_impressoras() \
         |should| equal_to({'HP 2341': [['tcc.pdf', 'linus'], ['imagem.jpg', 'linus']], \
                            'HP 1111': [['texto.pdf', 'linus']]})
Example #3
0
class TestUsuario(unittest.TestCase):
    def setUp(self):
        self.usuario = Usuario('linus', '1234')
        Estacao.estacoes = []

    def test_usuario_utiliza_estacao(self):
        estacao = Estacao(123, 'MAQ1-GRH', '500GB', '4GB', 'Setor RH')
        Estacao.adicionar_estacao(estacao)
        self.usuario.utilizar_estacao()
        self.usuario.estacao |should| equal_to(estacao)

    def test_se_nao_houver_estacao_disponivel_retorna_erro(self):
        (self.usuario.utilizar_estacao) |should| throw(TypeError("Nenhuma estacao disponivel"))

    def test_conectar_se_a_rede(self):
        estacao = Estacao(123, 'MAQ1-GRH', '500GB', '4GB', 'Setor RH')
        Estacao.adicionar_estacao(estacao)
        self.usuario.conectar_se_a_rede()
        self.usuario.status_da_conexao |should| equal_to('ativa')

    def test_so_pode_haver_uma_unica_conexao_por_usuario(self):
        estacao1 = Estacao(123, 'MAQ1-GRH', '500GB', '4GB', 'Setor RH')
        estacao2 = Estacao(456, 'MAQ2-CBB', '100GB', '2GB', 'Secretaria CBB')
        Estacao.adicionar_estacao(estacao1)
        Estacao.adicionar_estacao(estacao2)
        self.usuario.conectar_se_a_rede()
        (self.usuario.conectar_se_a_rede) |should| throw(TypeError("Usuario ja conectado a rede"))

    def test_desconectar_se_da_rede(self):
        estacao1 = Estacao(123, 'MAQ1-GRH', '500GB', '4GB', 'Setor RH')
        Estacao.adicionar_estacao(estacao1)
        self.usuario.conectar_se_a_rede()
        self.usuario.desconectar_se_da_rede()
        self.usuario.status_da_conexao |should| equal_to('desativada')

    def test_mostra_usuarios_ativos(self):
        estacao = Estacao(123, 'MAQ1-GRH', '500GB', '4GB', 'Setor RH')
        Estacao.adicionar_estacao(estacao)
        self.usuario.conectar_se_a_rede()
        Usuario.adicionar_usuario_ativo(self.usuario)
        Usuario.usuarios_ativos |should| equal_to([self.usuario])

    def test_imprimir_arquivo(self):
        estacao = Estacao(123, 'MAQ1-GRH', '500GB', '4GB', 'Setor RH')
        servidor = ServidorDeImpressora(1234, 'Ricks', 500, 4, 500, 6)
        impressora = Impressora(123, 'HP 2341', '100')
        servidor.adicionar_impressora(impressora)
        arquivo = Arquivo('tcc.pdf', 20, 1)
        self.usuario.conectar_se_a_rede()
        self.usuario.enviar_arquivo_para_impressao(arquivo, self.usuario, impressora) |should| equal_to('Impressao realizada com sucesso')

    def test_imprimir_dois_arquivos_iguais_para_mesmo_usuario_altera_numero_de_copias(self):
        estacao = Estacao(123, 'MAQ1-GRH', '500GB', '4GB', 'Setor RH')
        servidor = ServidorDeImpressora(1234, 'Ricks', 500, 4, 500, 6)
        impressora = Impressora(123, 'HP 2341', '100')
        impressora.status = 'ocupada'
        servidor.adicionar_impressora(impressora)
        arquivo1 = Arquivo('tcc.pdf', 20, 1)
        arquivo2 = Arquivo('tcc.pdf', 20, 1)
        self.usuario.conectar_se_a_rede()
        self.usuario.enviar_arquivo_para_impressao(arquivo1, self.usuario, impressora)
        self.usuario.enviar_arquivo_para_impressao(arquivo2, self.usuario, impressora)
        servidor.arquivos_em_espera[0][0].copias |should| equal_to(2)