/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package infoObjects;

import java.io.Serializable;
import java.util.ArrayList;

import utils.ConstantsErr;

/**
 * Clase que guarda información del resultado de correr el código del alumno con todos los tests asociados a la tarea que el profesor a creado
 *
 * @author Enrique M.L
 */
public class InfoResults implements Serializable,ConstantsErr{
    
    /**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	/**
	 * idError guarda el id del error
	 */
    private int idError;
    /**
     * tests guarda el resultado de todos los tests
     */
    private ArrayList<InfoResult> tests;
    /**
     * err guarda un mensaje correspondiente al error producido
     */
    private String err;
    
    /**
     * Constructor de InfoResult
     */
    public InfoResults(){
    	tests = new ArrayList<InfoResult>();
    }
	
    public void addResultTest(Long pidTest, ArrayList<String> ptest){
    	tests.add(new InfoResult(pidTest,ptest));
    }
    
    public void setError(int pidError){
    	idError = pidError;
        if (idError == ERROR_NO_EXIST_TASK){
        	err = "NO EXISTE LA TAREA EN EL SSCP";	
        }else if (idError == ERROR_INTERN){
        	err = "ERROR INTERNO DEL SSCP";
        }else if (idError == ERROR_NURSE){
        	err =  "SSCP HA PARADO LA EJECUCIÓN DEL PROGRAMA";
        }else if (idError == ERROR_EXECUTION){
        	err = "ERROR EN LA EJECUCIÓN DEL PROGRAMA";
        }else{
        	err = "DESCONOCIDO";
        }
    }
    
    public String getErr(){
    	return err;
    }
    
    public int getIdError(){
    	return idError;
    }
    
    public ArrayList<InfoResult> getTests(){
    	return tests;
    }
}
