Example #1
0
    def definirClasseSubstituicaoPaginaClasse2Test():
        print("definirClasseSubstituicaoPaginaClasse2Test: ")
        processo = Processo()
        segmento = Segmento()
        classeEsperada = -1
        processo.bitR = 1
        processo.bitM = 0

        # Execução
        if (processo.bitR == 0 and processo.bitM == 0):
            classeEsperada = 0

        elif (processo.bitR == 0 and processo.bitM == 1):
            classeEsperada = 1

        elif (processo.bitR == 1 and processo.bitM == 0):
            classeEsperada = 2

        elif (processo.bitR == 1 and processo.bitM == 1):
            classeEsperada = 3

        else:
            classeEsperada = -1

        segmento.processo = processo

        # Validação
        segmento.definirClasseSubstituicaoPagina()
        if (classeEsperada == segmento.classeSubstituicao):
            print("Esperado: {} == Retornado: {}".format(
                classeEsperada, segmento.classeSubstituicao))
        else:
            print("Esperado: {} != Retornado: {}".format(
                classeEsperada, segmento.classeSubstituicao))
    def executarTest():
        # Configuração

        for id in range(10):
            processo = Processo()
            processo.idProcesso = id

            processoEsperado = id

            processo.tamanhoProcesso = randint(1, 50)
            processo.tempoExecucao = randint(1, 50)
            processo.tempoVida = randint(1, 50)
            processo.prioridade = randint(0, 4)
            processo.bitR = randint(0, 1)
            processo.bitM = randint(0, 1)

            # Execução
            processo.executar()

            if (processoEsperado == processo.idProcesso):
                print("Esperado: {} == Retornado: {}".format(
                    processo.idProcesso, processoEsperado))
            else:
                print("Esperado: {} != Retornado: {}".format(
                    processo.idProcesso, processoEsperado))
    def exibirProcessoTest():
        # Configuração

        for id in range(10):
            processo = Processo()
            processo.idProcesso = id
            processo.tamanhoProcesso = randint(1, 50)
            processo.tempoExecucao = randint(1, 50)
            processo.tempoVida = randint(1, 50)
            processo.prioridade = randint(0, 4)
            processo.bitR = randint(0, 1)
            processo.bitM = randint(0, 1)

            # Execução
            processo.exibirInfoProcesso()
    def nomeProcessoTest():
        # Configuração

        for id in range(10):
            processo = Processo()
            processo.idProcesso = id
            processo.tamanhoProcesso = randint(1, 50)
            processo.tempoExecucao = randint(1, 50)
            processo.tempoVida = randint(1, 50)
            processo.prioridade = randint(0, 4)
            processo.bitR = randint(0, 1)
            processo.bitM = randint(0, 1)

            # Execução
            nomeProcessoEsperado = str(processo.idProcesso) + str(
                processo.tamanhoProcesso) + str(processo.prioridade) + str(
                    processo.tempoVida)

            if (nomeProcessoEsperado == processo.nomeProcesso):
                print("{} == {}".format(processo.nomeProcesso,
                                        nomeProcessoEsperado))
            else:
                print("{} != {}".format(processo.nomeProcesso,
                                        nomeProcessoEsperado))
    def popularMapaBits(cls, listaTamanhoProcesso):
        processo = Processo()
        processo.bitR = 0
        processo.bitM = 0
        processo.tamanhoProcesso = listaTamanhoProcesso[0]

        processo1 = Processo()
        processo1.bitR = 0
        processo1.bitM = 0
        processo1.tamanhoProcesso = listaTamanhoProcesso[1]

        processo2 = Processo()
        processo2.bitR = 0
        processo2.bitM = 1
        processo2.tamanhoProcesso = listaTamanhoProcesso[2]

        processo3 = Processo()
        processo3.bitR = 1
        processo3.bitM = 1
        processo3.tamanhoProcesso = listaTamanhoProcesso[3]

        processo4 = Processo()
        processo4.bitR = 1
        processo4.bitM = 0
        processo4.tamanhoProcesso = listaTamanhoProcesso[4]

        mapeamentoEncadeadoBits = MapeamentoEncadeadoBits()

        segmento = Segmento()
        segmento.processo = processo
        segmento.definirClasseSubstituicaoPagina()
        segmento.posicaoInicial = mapeamentoEncadeadoBits.indiceMemoriaLivre
        segmento.quantidadePosicoes = processo.tamanhoProcesso

        mapeamentoEncadeadoBits.adicionarSegmento(segmento)

        segmento1 = Segmento()
        segmento1.processo = processo1
        segmento1.definirClasseSubstituicaoPagina()
        segmento1.posicaoInicial = mapeamentoEncadeadoBits.indiceMemoriaLivre
        segmento1.quantidadePosicoes = processo1.tamanhoProcesso

        mapeamentoEncadeadoBits.adicionarSegmento(segmento1)

        segmento2 = Segmento()
        segmento2.processo = processo2
        segmento2.definirClasseSubstituicaoPagina()
        segmento2.posicaoInicial = mapeamentoEncadeadoBits.indiceMemoriaLivre
        segmento2.quantidadePosicoes = processo2.tamanhoProcesso

        mapeamentoEncadeadoBits.adicionarSegmento(segmento2)

        segmento3 = Segmento()
        segmento3.processo = processo3
        segmento3.definirClasseSubstituicaoPagina()
        segmento3.posicaoInicial = mapeamentoEncadeadoBits.indiceMemoriaLivre
        segmento3.quantidadePosicoes = processo3.tamanhoProcesso

        mapeamentoEncadeadoBits.adicionarSegmento(segmento3)

        segmento4 = Segmento()
        segmento4.processo = processo4
        segmento4.definirClasseSubstituicaoPagina()
        segmento4.posicaoInicial = mapeamentoEncadeadoBits.indiceMemoriaLivre
        segmento4.quantidadePosicoes = processo4.tamanhoProcesso

        mapeamentoEncadeadoBits.adicionarSegmento(segmento4)

        return mapeamentoEncadeadoBits