diff --git a/UyTube_aplicacion/.jacocoverage/jacoco.latest.exec b/UyTube_aplicacion/.jacocoverage/jacoco.latest.exec
new file mode 100644
index 0000000000000000000000000000000000000000..cd825ce508eb1fbf02ac0774969d41cc108739c9
Binary files /dev/null and b/UyTube_aplicacion/.jacocoverage/jacoco.latest.exec differ
diff --git a/UyTube_aplicacion/.jacocoverage/jacoco.latest.xml b/UyTube_aplicacion/.jacocoverage/jacoco.latest.xml
new file mode 100644
index 0000000000000000000000000000000000000000..072b51ad79dd30cbc2d065a0a7b85276280b3f58
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/jacoco.latest.xml
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?><!DOCTYPE report PUBLIC "-//JACOCO//DTD Report 1.0//EN" "report.dtd"><report name="JaCoCoverage analysis (powered by JaCoCo from EclEmma)"><sessioninfo id="PCcarlosBM-41d03708" start="1566791730145" dump="1566791730593"/><sessioninfo id="PCcarlosBM-d98ca87a" start="1566791730890" dump="1566791731373"/><sessioninfo id="PCcarlosBM-8b7b6231" start="1566791731664" dump="1566791732075"/><package name="Logica/DataType"><class name="Logica/DataType/DtVideo"><method name="&lt;init&gt;" desc="(ILjava/lang/String;Ljava/lang/String;Ljava/sql/Time;Ljava/sql/Date;Ljava/lang/String;LLogica/Enumerados/Privacidad;Ljava/lang/String;II)V" line="19"><counter type="INSTRUCTION" missed="0" covered="33"/><counter type="LINE" missed="0" covered="12"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getId" desc="()I" line="33"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getNombre" desc="()Ljava/lang/String;" line="37"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getDescripcion" desc="()Ljava/lang/String;" line="41"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getDuracion" desc="()Ljava/sql/Time;" line="45"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getFechaPublicacion" desc="()Ljava/sql/Date;" line="49"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getUrlVideoOriginal" desc="()Ljava/lang/String;" line="53"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getPrivacidad" desc="()LLogica/Enumerados/Privacidad;" line="57"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getCategoria" desc="()Ljava/lang/String;" line="61"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getCantLikes" desc="()I" line="65"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getCantDisLikes" desc="()I" line="69"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="toString" desc="()Ljava/lang/String;" line="74"><counter type="INSTRUCTION" missed="0" covered="57"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="0" covered="120"/><counter type="LINE" missed="0" covered="23"/><counter type="COMPLEXITY" missed="0" covered="12"/><counter type="METHOD" missed="0" covered="12"/><counter type="CLASS" missed="0" covered="1"/></class><class name="Logica/DataType/DtCategoria"><method name="&lt;init&gt;" desc="()V" line="6"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;init&gt;" desc="(Ljava/lang/String;)V" line="8"><counter type="INSTRUCTION" missed="6" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getNombre" desc="()Ljava/lang/String;" line="13"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="toString" desc="()Ljava/lang/String;" line="18"><counter type="INSTRUCTION" missed="12" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="24" covered="0"/><counter type="LINE" missed="6" covered="0"/><counter type="COMPLEXITY" missed="4" covered="0"/><counter type="METHOD" missed="4" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><class name="Logica/DataType/DtUsuario"><method name="&lt;init&gt;" desc="()V" line="12"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;init&gt;" desc="(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/sql/Date;Ljava/lang/String;I)V" line="18"><counter type="INSTRUCTION" missed="21" covered="0"/><counter type="LINE" missed="7" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getNickname" desc="()Ljava/lang/String;" line="28"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getCorreo" desc="()Ljava/lang/String;" line="32"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getFechaNacimiento" desc="()Ljava/sql/Date;" line="36"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getImagen" desc="()Ljava/lang/String;" line="40"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getCantSeguidores" desc="()I" line="44"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="toString" desc="()Ljava/lang/String;" line="49"><counter type="INSTRUCTION" missed="37" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="76" covered="0"/><counter type="LINE" missed="14" covered="0"/><counter type="COMPLEXITY" missed="8" covered="0"/><counter type="METHOD" missed="8" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><class name="Logica/DataType/DtValoracion"><method name="&lt;init&gt;" desc="()V" line="9"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;init&gt;" desc="(LLogica/Enumerados/TipoValoracion;Ljava/lang/String;)V" line="11"><counter type="INSTRUCTION" missed="0" covered="9"/><counter type="LINE" missed="0" covered="4"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getNickname" desc="()Ljava/lang/String;" line="16"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getVal" desc="()LLogica/Enumerados/TipoValoracion;" line="19"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="toString" desc="()Ljava/lang/String;" line="24"><counter type="INSTRUCTION" missed="0" covered="17"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="6" covered="29"/><counter type="LINE" missed="2" covered="6"/><counter type="COMPLEXITY" missed="2" covered="3"/><counter type="METHOD" missed="2" covered="3"/><counter type="CLASS" missed="0" covered="1"/></class><class name="Logica/DataType/DtPersona"><method name="&lt;init&gt;" desc="()V" line="8"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;init&gt;" desc="(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V" line="10"><counter type="INSTRUCTION" missed="12" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getNombre" desc="()Ljava/lang/String;" line="19"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getApellido" desc="()Ljava/lang/String;" line="23"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getContrasenia" desc="()Ljava/lang/String;" line="27"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="toString" desc="()Ljava/lang/String;" line="32"><counter type="INSTRUCTION" missed="22" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="46" covered="0"/><counter type="LINE" missed="10" covered="0"/><counter type="COMPLEXITY" missed="6" covered="0"/><counter type="METHOD" missed="6" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><class name="Logica/DataType/DtComentario"><method name="&lt;init&gt;" desc="()V" line="12"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;init&gt;" desc="(ILjava/lang/String;Ljava/sql/Date;Ljava/lang/String;I)V" line="14"><counter type="INSTRUCTION" missed="0" covered="18"/><counter type="LINE" missed="0" covered="7"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getId" desc="()I" line="23"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getNickname" desc="()Ljava/lang/String;" line="27"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getFecha" desc="()Ljava/sql/Date;" line="31"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getTexto" desc="()Ljava/lang/String;" line="35"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getNivelSubComentario" desc="()I" line="39"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="toString" desc="()Ljava/lang/String;" line="44"><counter type="INSTRUCTION" missed="0" covered="32"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="12" covered="56"/><counter type="LINE" missed="4" covered="10"/><counter type="COMPLEXITY" missed="4" covered="4"/><counter type="METHOD" missed="4" covered="4"/><counter type="CLASS" missed="0" covered="1"/></class><class name="Logica/DataType/DtCanal"><method name="&lt;init&gt;" desc="()V" line="11"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;init&gt;" desc="(ILjava/lang/String;Ljava/lang/String;LLogica/Enumerados/Privacidad;)V" line="13"><counter type="INSTRUCTION" missed="0" covered="15"/><counter type="LINE" missed="0" covered="6"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getId" desc="()I" line="21"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getNombre" desc="()Ljava/lang/String;" line="25"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getDescripcion" desc="()Ljava/lang/String;" line="29"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getPrivacidad" desc="()LLogica/Enumerados/Privacidad;" line="33"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="toString" desc="()Ljava/lang/String;" line="38"><counter type="INSTRUCTION" missed="27" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="33" covered="24"/><counter type="LINE" missed="3" covered="9"/><counter type="COMPLEXITY" missed="3" covered="4"/><counter type="METHOD" missed="3" covered="4"/><counter type="CLASS" missed="0" covered="1"/></class><class name="Logica/DataType/DtListaDeReproduccion"><method name="&lt;init&gt;" desc="()V" line="13"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;init&gt;" desc="(ILjava/lang/String;LLogica/Enumerados/Privacidad;LLogica/Enumerados/TipoListaDeReproduccion;Ljava/lang/String;)V" line="15"><counter type="INSTRUCTION" missed="18" covered="0"/><counter type="LINE" missed="7" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getId" desc="()I" line="24"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getNombre" desc="()Ljava/lang/String;" line="28"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getPrivacidad" desc="()LLogica/Enumerados/Privacidad;" line="32"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getTipo" desc="()LLogica/Enumerados/TipoListaDeReproduccion;" line="36"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getCategoria" desc="()Ljava/lang/String;" line="40"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="toString" desc="()Ljava/lang/String;" line="45"><counter type="INSTRUCTION" missed="32" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="68" covered="0"/><counter type="LINE" missed="14" covered="0"/><counter type="COMPLEXITY" missed="8" covered="0"/><counter type="METHOD" missed="8" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><sourcefile name="DtUsuario.java"><line nr="12" mi="3" ci="0" mb="0" cb="0"/><line nr="18" mi="5" ci="0" mb="0" cb="0"/><line nr="20" mi="3" ci="0" mb="0" cb="0"/><line nr="21" mi="3" ci="0" mb="0" cb="0"/><line nr="22" mi="3" ci="0" mb="0" cb="0"/><line nr="23" mi="3" ci="0" mb="0" cb="0"/><line nr="24" mi="3" ci="0" mb="0" cb="0"/><line nr="25" mi="1" ci="0" mb="0" cb="0"/><line nr="28" mi="3" ci="0" mb="0" cb="0"/><line nr="32" mi="3" ci="0" mb="0" cb="0"/><line nr="36" mi="3" ci="0" mb="0" cb="0"/><line nr="40" mi="3" ci="0" mb="0" cb="0"/><line nr="44" mi="3" ci="0" mb="0" cb="0"/><line nr="49" mi="37" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="76" covered="0"/><counter type="LINE" missed="14" covered="0"/><counter type="COMPLEXITY" missed="8" covered="0"/><counter type="METHOD" missed="8" covered="0"/><counter type="CLASS" missed="1" covered="0"/></sourcefile><sourcefile name="DtCanal.java"><line nr="11" mi="3" ci="0" mb="0" cb="0"/><line nr="13" mi="0" ci="2" mb="0" cb="0"/><line nr="14" mi="0" ci="3" mb="0" cb="0"/><line nr="15" mi="0" ci="3" mb="0" cb="0"/><line nr="16" mi="0" ci="3" mb="0" cb="0"/><line nr="17" mi="0" ci="3" mb="0" cb="0"/><line nr="18" mi="0" ci="1" mb="0" cb="0"/><line nr="21" mi="3" ci="0" mb="0" cb="0"/><line nr="25" mi="0" ci="3" mb="0" cb="0"/><line nr="29" mi="0" ci="3" mb="0" cb="0"/><line nr="33" mi="0" ci="3" mb="0" cb="0"/><line nr="38" mi="27" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="33" covered="24"/><counter type="LINE" missed="3" covered="9"/><counter type="COMPLEXITY" missed="3" covered="4"/><counter type="METHOD" missed="3" covered="4"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="DtValoracion.java"><line nr="9" mi="3" ci="0" mb="0" cb="0"/><line nr="11" mi="0" ci="2" mb="0" cb="0"/><line nr="12" mi="0" ci="3" mb="0" cb="0"/><line nr="13" mi="0" ci="3" mb="0" cb="0"/><line nr="14" mi="0" ci="1" mb="0" cb="0"/><line nr="16" mi="3" ci="0" mb="0" cb="0"/><line nr="19" mi="0" ci="3" mb="0" cb="0"/><line nr="24" mi="0" ci="17" mb="0" cb="0"/><counter type="INSTRUCTION" missed="6" covered="29"/><counter type="LINE" missed="2" covered="6"/><counter type="COMPLEXITY" missed="2" covered="3"/><counter type="METHOD" missed="2" covered="3"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="DtVideo.java"><line nr="19" mi="0" ci="2" mb="0" cb="0"/><line nr="20" mi="0" ci="3" mb="0" cb="0"/><line nr="21" mi="0" ci="3" mb="0" cb="0"/><line nr="22" mi="0" ci="3" mb="0" cb="0"/><line nr="23" mi="0" ci="3" mb="0" cb="0"/><line nr="24" mi="0" ci="3" mb="0" cb="0"/><line nr="25" mi="0" ci="3" mb="0" cb="0"/><line nr="26" mi="0" ci="3" mb="0" cb="0"/><line nr="27" mi="0" ci="3" mb="0" cb="0"/><line nr="28" mi="0" ci="3" mb="0" cb="0"/><line nr="29" mi="0" ci="3" mb="0" cb="0"/><line nr="30" mi="0" ci="1" mb="0" cb="0"/><line nr="33" mi="0" ci="3" mb="0" cb="0"/><line nr="37" mi="0" ci="3" mb="0" cb="0"/><line nr="41" mi="0" ci="3" mb="0" cb="0"/><line nr="45" mi="0" ci="3" mb="0" cb="0"/><line nr="49" mi="0" ci="3" mb="0" cb="0"/><line nr="53" mi="0" ci="3" mb="0" cb="0"/><line nr="57" mi="0" ci="3" mb="0" cb="0"/><line nr="61" mi="0" ci="3" mb="0" cb="0"/><line nr="65" mi="0" ci="3" mb="0" cb="0"/><line nr="69" mi="0" ci="3" mb="0" cb="0"/><line nr="74" mi="0" ci="57" mb="0" cb="0"/><counter type="INSTRUCTION" missed="0" covered="120"/><counter type="LINE" missed="0" covered="23"/><counter type="COMPLEXITY" missed="0" covered="12"/><counter type="METHOD" missed="0" covered="12"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="DtComentario.java"><line nr="12" mi="3" ci="0" mb="0" cb="0"/><line nr="14" mi="0" ci="2" mb="0" cb="0"/><line nr="15" mi="0" ci="3" mb="0" cb="0"/><line nr="16" mi="0" ci="3" mb="0" cb="0"/><line nr="17" mi="0" ci="3" mb="0" cb="0"/><line nr="18" mi="0" ci="3" mb="0" cb="0"/><line nr="19" mi="0" ci="3" mb="0" cb="0"/><line nr="20" mi="0" ci="1" mb="0" cb="0"/><line nr="23" mi="3" ci="0" mb="0" cb="0"/><line nr="27" mi="3" ci="0" mb="0" cb="0"/><line nr="31" mi="0" ci="3" mb="0" cb="0"/><line nr="35" mi="0" ci="3" mb="0" cb="0"/><line nr="39" mi="3" ci="0" mb="0" cb="0"/><line nr="44" mi="0" ci="32" mb="0" cb="0"/><counter type="INSTRUCTION" missed="12" covered="56"/><counter type="LINE" missed="4" covered="10"/><counter type="COMPLEXITY" missed="4" covered="4"/><counter type="METHOD" missed="4" covered="4"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="DtCategoria.java"><line nr="6" mi="3" ci="0" mb="0" cb="0"/><line nr="8" mi="2" ci="0" mb="0" cb="0"/><line nr="9" mi="3" ci="0" mb="0" cb="0"/><line nr="10" mi="1" ci="0" mb="0" cb="0"/><line nr="13" mi="3" ci="0" mb="0" cb="0"/><line nr="18" mi="12" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="24" covered="0"/><counter type="LINE" missed="6" covered="0"/><counter type="COMPLEXITY" missed="4" covered="0"/><counter type="METHOD" missed="4" covered="0"/><counter type="CLASS" missed="1" covered="0"/></sourcefile><sourcefile name="DtPersona.java"><line nr="8" mi="3" ci="0" mb="0" cb="0"/><line nr="10" mi="2" ci="0" mb="0" cb="0"/><line nr="13" mi="3" ci="0" mb="0" cb="0"/><line nr="14" mi="3" ci="0" mb="0" cb="0"/><line nr="15" mi="3" ci="0" mb="0" cb="0"/><line nr="16" mi="1" ci="0" mb="0" cb="0"/><line nr="19" mi="3" ci="0" mb="0" cb="0"/><line nr="23" mi="3" ci="0" mb="0" cb="0"/><line nr="27" mi="3" ci="0" mb="0" cb="0"/><line nr="32" mi="22" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="46" covered="0"/><counter type="LINE" missed="10" covered="0"/><counter type="COMPLEXITY" missed="6" covered="0"/><counter type="METHOD" missed="6" covered="0"/><counter type="CLASS" missed="1" covered="0"/></sourcefile><sourcefile name="DtListaDeReproduccion.java"><line nr="13" mi="3" ci="0" mb="0" cb="0"/><line nr="15" mi="2" ci="0" mb="0" cb="0"/><line nr="16" mi="3" ci="0" mb="0" cb="0"/><line nr="17" mi="3" ci="0" mb="0" cb="0"/><line nr="18" mi="3" ci="0" mb="0" cb="0"/><line nr="19" mi="3" ci="0" mb="0" cb="0"/><line nr="20" mi="3" ci="0" mb="0" cb="0"/><line nr="21" mi="1" ci="0" mb="0" cb="0"/><line nr="24" mi="3" ci="0" mb="0" cb="0"/><line nr="28" mi="3" ci="0" mb="0" cb="0"/><line nr="32" mi="3" ci="0" mb="0" cb="0"/><line nr="36" mi="3" ci="0" mb="0" cb="0"/><line nr="40" mi="3" ci="0" mb="0" cb="0"/><line nr="45" mi="32" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="68" covered="0"/><counter type="LINE" missed="14" covered="0"/><counter type="COMPLEXITY" missed="8" covered="0"/><counter type="METHOD" missed="8" covered="0"/><counter type="CLASS" missed="1" covered="0"/></sourcefile><counter type="INSTRUCTION" missed="265" covered="229"/><counter type="LINE" missed="53" covered="48"/><counter type="COMPLEXITY" missed="35" covered="23"/><counter type="METHOD" missed="35" covered="23"/><counter type="CLASS" missed="4" covered="4"/></package><package name="Logica/InterfacesYControladores"><class name="Logica/InterfacesYControladores/CAdmin"><method name="&lt;init&gt;" desc="()V" line="31"><counter type="INSTRUCTION" missed="30" covered="0"/><counter type="LINE" missed="9" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getInstancia" desc="()LLogica/InterfacesYControladores/CAdmin;" line="42"><counter type="INSTRUCTION" missed="8" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="agregarVideoAListaDeReproduccion" desc="()V" line="52"><counter type="INSTRUCTION" missed="42" covered="0"/><counter type="BRANCH" missed="8" covered="0"/><counter type="LINE" missed="10" covered="0"/><counter type="COMPLEXITY" missed="5" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="altaCategoria" desc="(Ljava/lang/String;)V" line="71"><counter type="INSTRUCTION" missed="28" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="6" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="altaComentario" desc="(LLogica/DataType/DtComentario;)V" line="84"><counter type="INSTRUCTION" missed="40" covered="0"/><counter type="BRANCH" missed="8" covered="0"/><counter type="LINE" missed="10" covered="0"/><counter type="COMPLEXITY" missed="5" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="altaComentario" desc="(LLogica/DataType/DtComentario;I)V" line="104"><counter type="INSTRUCTION" missed="41" covered="0"/><counter type="BRANCH" missed="8" covered="0"/><counter type="LINE" missed="10" covered="0"/><counter type="COMPLEXITY" missed="5" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="altaListaDeReproduccionParticular" desc="(LLogica/DataType/DtListaDeReproduccion;)V" line="123"><counter type="INSTRUCTION" missed="20" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="6" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="altaListaDeReproduccionPorDefecto" desc="(LLogica/DataType/DtListaDeReproduccion;)V" line="138"><counter type="INSTRUCTION" missed="48" covered="0"/><counter type="BRANCH" missed="8" covered="0"/><counter type="LINE" missed="11" covered="0"/><counter type="COMPLEXITY" missed="5" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="altaUsuarioCanal" desc="(LLogica/DataType/DtUsuario;LLogica/DataType/DtCanal;)V" line="158"><counter type="INSTRUCTION" missed="61" covered="0"/><counter type="BRANCH" missed="8" covered="0"/><counter type="LINE" missed="18" covered="0"/><counter type="COMPLEXITY" missed="5" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="altaValoracion" desc="(LLogica/DataType/DtValoracion;)V" line="188"><counter type="INSTRUCTION" missed="40" covered="0"/><counter type="BRANCH" missed="8" covered="0"/><counter type="LINE" missed="10" covered="0"/><counter type="COMPLEXITY" missed="5" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="altaVideo" desc="(LLogica/DataType/DtVideo;)V" line="207"><counter type="INSTRUCTION" missed="20" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="6" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="existeCategoria" desc="(Ljava/lang/String;)Z" line="220"><counter type="INSTRUCTION" missed="5" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="existeEmail" desc="(Ljava/lang/String;)Z" line="227"><counter type="INSTRUCTION" missed="23" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="existeNickname" desc="(Ljava/lang/String;)Z" line="239"><counter type="INSTRUCTION" missed="5" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="iniciarSesionAdministrador" desc="(ILjava/lang/String;)Z" line="242"><counter type="INSTRUCTION" missed="15" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="iniciarSesionUsuario" desc="(Ljava/lang/String;Ljava/lang/String;)Z" line="250"><counter type="INSTRUCTION" missed="21" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="7" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="liberarMemoriaListaDeReproduccion" desc="()V" line="262"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="liberarMemoriaUsuario" desc="()V" line="266"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="liberarMemoriaUsuarioActual" desc="()V" line="270"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="liberarMemoriaVideo" desc="()V" line="274"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarCategorias" desc="()Ljava/util/ArrayList;" line="281"><counter type="INSTRUCTION" missed="26" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarComentariosDeVideo" desc="()Ljava/util/ArrayList;" line="292"><counter type="INSTRUCTION" missed="22" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarListasDeReproduccionEnCategoria" desc="(Ljava/lang/String;)Ljava/util/ArrayList;" line="306"><counter type="INSTRUCTION" missed="36" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="7" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarListasDeReproduccionDeUsuario" desc="(Ljava/lang/String;)Ljava/util/ArrayList;" line="320"><counter type="INSTRUCTION" missed="53" covered="0"/><counter type="BRANCH" missed="14" covered="0"/><counter type="LINE" missed="9" covered="0"/><counter type="COMPLEXITY" missed="8" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarListasDeReproduccionParticularesDeUsuario" desc="()Ljava/util/ArrayList;" line="340"><counter type="INSTRUCTION" missed="13" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarUsuarioSeguidores" desc="()Ljava/util/ArrayList;" line="350"><counter type="INSTRUCTION" missed="12" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarUsuarioSeguidos" desc="()Ljava/util/ArrayList;" line="360"><counter type="INSTRUCTION" missed="12" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarUsuarios" desc="()Ljava/util/ArrayList;" line="370"><counter type="INSTRUCTION" missed="26" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarVideosEnCategoria" desc="(Ljava/lang/String;)Ljava/util/ArrayList;" line="381"><counter type="INSTRUCTION" missed="36" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="7" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarVideosDeUsuario" desc="()Ljava/util/ArrayList;" line="395"><counter type="INSTRUCTION" missed="12" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarVideosDeListaDeReproduccion" desc="()Ljava/util/ArrayList;" line="405"><counter type="INSTRUCTION" missed="22" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="modificarListaDeReproduccion" desc="(LLogica/DataType/DtListaDeReproduccion;)V" line="418"><counter type="INSTRUCTION" missed="35" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="11" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="modificarUsuarioYCanal" desc="(LLogica/DataType/DtUsuario;LLogica/DataType/DtCanal;)V" line="440"><counter type="INSTRUCTION" missed="28" covered="0"/><counter type="BRANCH" missed="6" covered="0"/><counter type="LINE" missed="8" covered="0"/><counter type="COMPLEXITY" missed="4" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="modificarVideo" desc="(LLogica/DataType/DtVideo;)V" line="456"><counter type="INSTRUCTION" missed="50" covered="0"/><counter type="BRANCH" missed="6" covered="0"/><counter type="LINE" missed="16" covered="0"/><counter type="COMPLEXITY" missed="4" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="obtenerCanalDeUsuario" desc="()LLogica/DataType/DtCanal;" line="486"><counter type="INSTRUCTION" missed="12" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="obtenerValoracionesDeVideo" desc="()Ljava/util/ArrayList;" line="496"><counter type="INSTRUCTION" missed="22" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="obtenerValoracionDada" desc="()LLogica/DataType/DtValoracion;" line="510"><counter type="INSTRUCTION" missed="33" covered="0"/><counter type="BRANCH" missed="6" covered="0"/><counter type="LINE" missed="7" covered="0"/><counter type="COMPLEXITY" missed="4" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="quitarVideoDeListaDeReproduccion" desc="()V" line="527"><counter type="INSTRUCTION" missed="32" covered="0"/><counter type="BRANCH" missed="6" covered="0"/><counter type="LINE" missed="8" covered="0"/><counter type="COMPLEXITY" missed="4" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="seleccionarUsuario" desc="(Ljava/lang/String;)LLogica/DataType/DtUsuario;" line="544"><counter type="INSTRUCTION" missed="19" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="seleccionarUsuarioActual" desc="(Ljava/lang/String;)LLogica/DataType/DtUsuario;" line="556"><counter type="INSTRUCTION" missed="19" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="seleccionarVideo" desc="(I)LLogica/DataType/DtVideo;" line="568"><counter type="INSTRUCTION" missed="18" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="seleccionarListaDeReproduccion" desc="(I)LLogica/DataType/DtListaDeReproduccion;" line="581"><counter type="INSTRUCTION" missed="18" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="seguirUsuario" desc="()V" line="594"><counter type="INSTRUCTION" missed="22" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="6" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="validarNuevaListaParticular" desc="(Ljava/lang/String;)Z" line="607"><counter type="INSTRUCTION" missed="13" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="validarNuevaListaPorDefecto" desc="(Ljava/lang/String;)Z" line="618"><counter type="INSTRUCTION" missed="23" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;clinit&gt;" desc="()V" line="21"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="1080" covered="0"/><counter type="BRANCH" missed="166" covered="0"/><counter type="LINE" missed="271" covered="0"/><counter type="COMPLEXITY" missed="129" covered="0"/><counter type="METHOD" missed="46" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><sourcefile name="CAdmin.java"><line nr="21" mi="3" ci="0" mb="0" cb="0"/><line nr="31" mi="2" ci="0" mb="0" cb="0"/><line nr="32" mi="5" ci="0" mb="0" cb="0"/><line nr="33" mi="5" ci="0" mb="0" cb="0"/><line nr="34" mi="5" ci="0" mb="0" cb="0"/><line nr="35" mi="3" ci="0" mb="0" cb="0"/><line nr="36" mi="3" ci="0" mb="0" cb="0"/><line nr="37" mi="3" ci="0" mb="0" cb="0"/><line nr="38" mi="3" ci="0" mb="0" cb="0"/><line nr="39" mi="1" ci="0" mb="0" cb="0"/><line nr="42" mi="2" ci="0" mb="2" cb="0"/><line nr="43" mi="4" ci="0" mb="0" cb="0"/><line nr="45" mi="2" ci="0" mb="0" cb="0"/><line nr="52" mi="3" ci="0" mb="2" cb="0"/><line nr="53" mi="5" ci="0" mb="0" cb="0"/><line nr="55" mi="3" ci="0" mb="2" cb="0"/><line nr="56" mi="5" ci="0" mb="0" cb="0"/><line nr="58" mi="3" ci="0" mb="2" cb="0"/><line nr="59" mi="5" ci="0" mb="0" cb="0"/><line nr="61" mi="3" ci="0" mb="2" cb="0"/><line nr="62" mi="5" ci="0" mb="0" cb="0"/><line nr="64" mi="9" ci="0" mb="0" cb="0"/><line nr="65" mi="1" ci="0" mb="0" cb="0"/><line nr="71" mi="4" ci="0" mb="2" cb="0"/><line nr="72" mi="5" ci="0" mb="0" cb="0"/><line nr="74" mi="4" ci="0" mb="2" cb="0"/><line nr="75" mi="5" ci="0" mb="0" cb="0"/><line nr="77" mi="9" ci="0" mb="0" cb="0"/><line nr="78" mi="1" ci="0" mb="0" cb="0"/><line nr="84" mi="3" ci="0" mb="2" cb="0"/><line nr="85" mi="5" ci="0" mb="0" cb="0"/><line nr="87" mi="3" ci="0" mb="2" cb="0"/><line nr="88" mi="5" ci="0" mb="0" cb="0"/><line nr="90" mi="2" ci="0" mb="2" cb="0"/><line nr="91" mi="5" ci="0" mb="0" cb="0"/><line nr="93" mi="3" ci="0" mb="2" cb="0"/><line nr="94" mi="5" ci="0" mb="0" cb="0"/><line nr="96" mi="8" ci="0" mb="0" cb="0"/><line nr="98" mi="1" ci="0" mb="0" cb="0"/><line nr="104" mi="3" ci="0" mb="2" cb="0"/><line nr="105" mi="5" ci="0" mb="0" cb="0"/><line nr="107" mi="3" ci="0" mb="2" cb="0"/><line nr="108" mi="5" ci="0" mb="0" cb="0"/><line nr="110" mi="2" ci="0" mb="2" cb="0"/><line nr="111" mi="5" ci="0" mb="0" cb="0"/><line nr="113" mi="3" ci="0" mb="2" cb="0"/><line nr="114" mi="5" ci="0" mb="0" cb="0"/><line nr="116" mi="9" ci="0" mb="0" cb="0"/><line nr="117" mi="1" ci="0" mb="0" cb="0"/><line nr="123" mi="3" ci="0" mb="2" cb="0"/><line nr="124" mi="5" ci="0" mb="0" cb="0"/><line nr="126" mi="2" ci="0" mb="2" cb="0"/><line nr="127" mi="5" ci="0" mb="0" cb="0"/><line nr="129" mi="4" ci="0" mb="0" cb="0"/><line nr="131" mi="1" ci="0" mb="0" cb="0"/><line nr="138" mi="2" ci="0" mb="2" cb="0"/><line nr="139" mi="5" ci="0" mb="0" cb="0"/><line nr="141" mi="5" ci="0" mb="2" cb="0"/><line nr="142" mi="5" ci="0" mb="0" cb="0"/><line nr="144" mi="5" ci="0" mb="2" cb="0"/><line nr="145" mi="5" ci="0" mb="0" cb="0"/><line nr="147" mi="3" ci="0" mb="0" cb="0"/><line nr="149" mi="12" ci="0" mb="2" cb="0"/><line nr="150" mi="4" ci="0" mb="0" cb="0"/><line nr="151" mi="1" ci="0" mb="0" cb="0"/><line nr="152" mi="1" ci="0" mb="0" cb="0"/><line nr="158" mi="2" ci="0" mb="2" cb="0"/><line nr="159" mi="5" ci="0" mb="0" cb="0"/><line nr="161" mi="2" ci="0" mb="2" cb="0"/><line nr="162" mi="5" ci="0" mb="0" cb="0"/><line nr="164" mi="5" ci="0" mb="2" cb="0"/><line nr="165" mi="5" ci="0" mb="0" cb="0"/><line nr="167" mi="5" ci="0" mb="2" cb="0"/><line nr="168" mi="5" ci="0" mb="0" cb="0"/><line nr="171" mi="3" ci="0" mb="0" cb="0"/><line nr="172" mi="2" ci="0" mb="0" cb="0"/><line nr="173" mi="2" ci="0" mb="0" cb="0"/><line nr="174" mi="2" ci="0" mb="0" cb="0"/><line nr="175" mi="2" ci="0" mb="0" cb="0"/><line nr="176" mi="2" ci="0" mb="0" cb="0"/><line nr="177" mi="2" ci="0" mb="0" cb="0"/><line nr="178" mi="4" ci="0" mb="0" cb="0"/><line nr="180" mi="7" ci="0" mb="0" cb="0"/><line nr="181" mi="1" ci="0" mb="0" cb="0"/><line nr="188" mi="3" ci="0" mb="2" cb="0"/><line nr="189" mi="5" ci="0" mb="0" cb="0"/><line nr="191" mi="3" ci="0" mb="2" cb="0"/><line nr="192" mi="5" ci="0" mb="0" cb="0"/><line nr="194" mi="2" ci="0" mb="2" cb="0"/><line nr="195" mi="5" ci="0" mb="0" cb="0"/><line nr="197" mi="3" ci="0" mb="2" cb="0"/><line nr="198" mi="5" ci="0" mb="0" cb="0"/><line nr="200" mi="8" ci="0" mb="0" cb="0"/><line nr="201" mi="1" ci="0" mb="0" cb="0"/><line nr="207" mi="3" ci="0" mb="2" cb="0"/><line nr="208" mi="5" ci="0" mb="0" cb="0"/><line nr="210" mi="2" ci="0" mb="2" cb="0"/><line nr="211" mi="5" ci="0" mb="0" cb="0"/><line nr="213" mi="4" ci="0" mb="0" cb="0"/><line nr="214" mi="1" ci="0" mb="0" cb="0"/><line nr="220" mi="5" ci="0" mb="0" cb="0"/><line nr="227" mi="12" ci="0" mb="2" cb="0"/><line nr="228" mi="6" ci="0" mb="2" cb="0"/><line nr="229" mi="2" ci="0" mb="0" cb="0"/><line nr="231" mi="1" ci="0" mb="0" cb="0"/><line nr="232" mi="2" ci="0" mb="0" cb="0"/><line nr="239" mi="5" ci="0" mb="0" cb="0"/><line nr="242" mi="7" ci="0" mb="0" cb="0"/><line nr="243" mi="2" ci="0" mb="2" cb="0"/><line nr="244" mi="2" ci="0" mb="0" cb="0"/><line nr="246" mi="4" ci="0" mb="0" cb="0"/><line nr="250" mi="6" ci="0" mb="0" cb="0"/><line nr="251" mi="2" ci="0" mb="2" cb="0"/><line nr="252" mi="2" ci="0" mb="0" cb="0"/><line nr="254" mi="4" ci="0" mb="0" cb="0"/><line nr="255" mi="2" ci="0" mb="2" cb="0"/><line nr="256" mi="3" ci="0" mb="0" cb="0"/><line nr="258" mi="2" ci="0" mb="0" cb="0"/><line nr="262" mi="3" ci="0" mb="0" cb="0"/><line nr="263" mi="1" ci="0" mb="0" cb="0"/><line nr="266" mi="3" ci="0" mb="0" cb="0"/><line nr="267" mi="1" ci="0" mb="0" cb="0"/><line nr="270" mi="3" ci="0" mb="0" cb="0"/><line nr="271" mi="1" ci="0" mb="0" cb="0"/><line nr="274" mi="3" ci="0" mb="0" cb="0"/><line nr="275" mi="1" ci="0" mb="0" cb="0"/><line nr="281" mi="4" ci="0" mb="0" cb="0"/><line nr="282" mi="12" ci="0" mb="2" cb="0"/><line nr="283" mi="7" ci="0" mb="0" cb="0"/><line nr="284" mi="1" ci="0" mb="0" cb="0"/><line nr="285" mi="2" ci="0" mb="0" cb="0"/><line nr="292" mi="3" ci="0" mb="2" cb="0"/><line nr="293" mi="5" ci="0" mb="0" cb="0"/><line nr="295" mi="3" ci="0" mb="2" cb="0"/><line nr="296" mi="5" ci="0" mb="0" cb="0"/><line nr="298" mi="6" ci="0" mb="0" cb="0"/><line nr="306" mi="4" ci="0" mb="2" cb="0"/><line nr="307" mi="5" ci="0" mb="0" cb="0"/><line nr="309" mi="4" ci="0" mb="0" cb="0"/><line nr="310" mi="12" ci="0" mb="2" cb="0"/><line nr="311" mi="8" ci="0" mb="0" cb="0"/><line nr="312" mi="1" ci="0" mb="0" cb="0"/><line nr="313" mi="2" ci="0" mb="0" cb="0"/><line nr="320" mi="4" ci="0" mb="2" cb="0"/><line nr="321" mi="5" ci="0" mb="0" cb="0"/><line nr="323" mi="6" ci="0" mb="4" cb="0"/><line nr="324" mi="5" ci="0" mb="0" cb="0"/><line nr="327" mi="9" ci="0" mb="4" cb="0"/><line nr="328" mi="5" ci="0" mb="0" cb="0"/><line nr="330" mi="9" ci="0" mb="4" cb="0"/><line nr="331" mi="5" ci="0" mb="0" cb="0"/><line nr="333" mi="5" ci="0" mb="0" cb="0"/><line nr="340" mi="3" ci="0" mb="2" cb="0"/><line nr="341" mi="5" ci="0" mb="0" cb="0"/><line nr="343" mi="5" ci="0" mb="0" cb="0"/><line nr="350" mi="3" ci="0" mb="2" cb="0"/><line nr="351" mi="5" ci="0" mb="0" cb="0"/><line nr="353" mi="4" ci="0" mb="0" cb="0"/><line nr="360" mi="3" ci="0" mb="2" cb="0"/><line nr="361" mi="5" ci="0" mb="0" cb="0"/><line nr="363" mi="4" ci="0" mb="0" cb="0"/><line nr="370" mi="4" ci="0" mb="0" cb="0"/><line nr="371" mi="12" ci="0" mb="2" cb="0"/><line nr="372" mi="7" ci="0" mb="0" cb="0"/><line nr="373" mi="1" ci="0" mb="0" cb="0"/><line nr="374" mi="2" ci="0" mb="0" cb="0"/><line nr="381" mi="4" ci="0" mb="2" cb="0"/><line nr="382" mi="5" ci="0" mb="0" cb="0"/><line nr="384" mi="4" ci="0" mb="0" cb="0"/><line nr="385" mi="12" ci="0" mb="2" cb="0"/><line nr="386" mi="8" ci="0" mb="0" cb="0"/><line nr="387" mi="1" ci="0" mb="0" cb="0"/><line nr="388" mi="2" ci="0" mb="0" cb="0"/><line nr="395" mi="3" ci="0" mb="2" cb="0"/><line nr="396" mi="5" ci="0" mb="0" cb="0"/><line nr="398" mi="4" ci="0" mb="0" cb="0"/><line nr="405" mi="3" ci="0" mb="2" cb="0"/><line nr="406" mi="5" ci="0" mb="0" cb="0"/><line nr="408" mi="3" ci="0" mb="2" cb="0"/><line nr="409" mi="5" ci="0" mb="0" cb="0"/><line nr="411" mi="6" ci="0" mb="0" cb="0"/><line nr="418" mi="3" ci="0" mb="2" cb="0"/><line nr="419" mi="5" ci="0" mb="0" cb="0"/><line nr="421" mi="3" ci="0" mb="2" cb="0"/><line nr="422" mi="5" ci="0" mb="0" cb="0"/><line nr="427" mi="5" ci="0" mb="0" cb="0"/><line nr="429" mi="2" ci="0" mb="0" cb="0"/><line nr="430" mi="2" ci="0" mb="0" cb="0"/><line nr="431" mi="2" ci="0" mb="0" cb="0"/><line nr="432" mi="3" ci="0" mb="0" cb="0"/><line nr="433" mi="4" ci="0" mb="0" cb="0"/><line nr="434" mi="1" ci="0" mb="0" cb="0"/><line nr="440" mi="3" ci="0" mb="2" cb="0"/><line nr="441" mi="5" ci="0" mb="0" cb="0"/><line nr="443" mi="2" ci="0" mb="2" cb="0"/><line nr="444" mi="5" ci="0" mb="0" cb="0"/><line nr="446" mi="2" ci="0" mb="2" cb="0"/><line nr="447" mi="5" ci="0" mb="0" cb="0"/><line nr="449" mi="5" ci="0" mb="0" cb="0"/><line nr="450" mi="1" ci="0" mb="0" cb="0"/><line nr="456" mi="3" ci="0" mb="2" cb="0"/><line nr="457" mi="5" ci="0" mb="0" cb="0"/><line nr="459" mi="3" ci="0" mb="2" cb="0"/><line nr="460" mi="5" ci="0" mb="0" cb="0"/><line nr="462" mi="2" ci="0" mb="2" cb="0"/><line nr="463" mi="5" ci="0" mb="0" cb="0"/><line nr="468" mi="5" ci="0" mb="0" cb="0"/><line nr="470" mi="2" ci="0" mb="0" cb="0"/><line nr="471" mi="2" ci="0" mb="0" cb="0"/><line nr="472" mi="2" ci="0" mb="0" cb="0"/><line nr="473" mi="2" ci="0" mb="0" cb="0"/><line nr="474" mi="2" ci="0" mb="0" cb="0"/><line nr="475" mi="2" ci="0" mb="0" cb="0"/><line nr="476" mi="5" ci="0" mb="0" cb="0"/><line nr="479" mi="4" ci="0" mb="0" cb="0"/><line nr="480" mi="1" ci="0" mb="0" cb="0"/><line nr="486" mi="3" ci="0" mb="2" cb="0"/><line nr="487" mi="5" ci="0" mb="0" cb="0"/><line nr="489" mi="4" ci="0" mb="0" cb="0"/><line nr="496" mi="3" ci="0" mb="2" cb="0"/><line nr="497" mi="5" ci="0" mb="0" cb="0"/><line nr="499" mi="3" ci="0" mb="2" cb="0"/><line nr="500" mi="5" ci="0" mb="0" cb="0"/><line nr="502" mi="6" ci="0" mb="0" cb="0"/><line nr="510" mi="3" ci="0" mb="2" cb="0"/><line nr="511" mi="5" ci="0" mb="0" cb="0"/><line nr="513" mi="3" ci="0" mb="2" cb="0"/><line nr="514" mi="5" ci="0" mb="0" cb="0"/><line nr="516" mi="3" ci="0" mb="2" cb="0"/><line nr="517" mi="5" ci="0" mb="0" cb="0"/><line nr="520" mi="9" ci="0" mb="0" cb="0"/><line nr="527" mi="3" ci="0" mb="2" cb="0"/><line nr="528" mi="5" ci="0" mb="0" cb="0"/><line nr="530" mi="3" ci="0" mb="2" cb="0"/><line nr="531" mi="5" ci="0" mb="0" cb="0"/><line nr="533" mi="3" ci="0" mb="2" cb="0"/><line nr="534" mi="5" ci="0" mb="0" cb="0"/><line nr="536" mi="7" ci="0" mb="0" cb="0"/><line nr="537" mi="1" ci="0" mb="0" cb="0"/><line nr="544" mi="7" ci="0" mb="0" cb="0"/><line nr="545" mi="3" ci="0" mb="2" cb="0"/><line nr="546" mi="5" ci="0" mb="0" cb="0"/><line nr="548" mi="4" ci="0" mb="0" cb="0"/><line nr="556" mi="7" ci="0" mb="0" cb="0"/><line nr="557" mi="3" ci="0" mb="2" cb="0"/><line nr="558" mi="5" ci="0" mb="0" cb="0"/><line nr="560" mi="4" ci="0" mb="0" cb="0"/><line nr="568" mi="3" ci="0" mb="2" cb="0"/><line nr="569" mi="5" ci="0" mb="0" cb="0"/><line nr="571" mi="5" ci="0" mb="0" cb="0"/><line nr="572" mi="3" ci="0" mb="0" cb="0"/><line nr="573" mi="2" ci="0" mb="0" cb="0"/><line nr="581" mi="3" ci="0" mb="2" cb="0"/><line nr="582" mi="5" ci="0" mb="0" cb="0"/><line nr="584" mi="5" ci="0" mb="0" cb="0"/><line nr="585" mi="3" ci="0" mb="0" cb="0"/><line nr="586" mi="2" ci="0" mb="0" cb="0"/><line nr="594" mi="3" ci="0" mb="2" cb="0"/><line nr="595" mi="5" ci="0" mb="0" cb="0"/><line nr="597" mi="3" ci="0" mb="2" cb="0"/><line nr="598" mi="5" ci="0" mb="0" cb="0"/><line nr="600" mi="5" ci="0" mb="0" cb="0"/><line nr="601" mi="1" ci="0" mb="0" cb="0"/><line nr="607" mi="3" ci="0" mb="2" cb="0"/><line nr="608" mi="5" ci="0" mb="0" cb="0"/><line nr="610" mi="5" ci="0" mb="0" cb="0"/><line nr="618" mi="12" ci="0" mb="2" cb="0"/><line nr="619" mi="6" ci="0" mb="2" cb="0"/><line nr="620" mi="2" ci="0" mb="0" cb="0"/><line nr="622" mi="1" ci="0" mb="0" cb="0"/><line nr="623" mi="2" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="1080" covered="0"/><counter type="BRANCH" missed="166" covered="0"/><counter type="LINE" missed="271" covered="0"/><counter type="COMPLEXITY" missed="129" covered="0"/><counter type="METHOD" missed="46" covered="0"/><counter type="CLASS" missed="1" covered="0"/></sourcefile><counter type="INSTRUCTION" missed="1080" covered="0"/><counter type="BRANCH" missed="166" covered="0"/><counter type="LINE" missed="271" covered="0"/><counter type="COMPLEXITY" missed="129" covered="0"/><counter type="METHOD" missed="46" covered="0"/><counter type="CLASS" missed="1" covered="0"/></package><package name="Logica/Clases"><class name="Logica/Clases/Video"><method name="&lt;init&gt;" desc="()V" line="20"><counter type="INSTRUCTION" missed="12" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;init&gt;" desc="(ILjava/lang/String;Ljava/lang/String;Ljava/sql/Time;Ljava/sql/Date;Ljava/lang/String;Ljava/lang/String;)V" line="20"><counter type="INSTRUCTION" missed="88" covered="0"/><counter type="BRANCH" missed="12" covered="0"/><counter type="LINE" missed="20" covered="0"/><counter type="COMPLEXITY" missed="7" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="agregarComentario" desc="(LLogica/DataType/DtComentario;LLogica/Clases/Usuario;)V" line="52"><counter type="INSTRUCTION" missed="35" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="8" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="agregarComentario" desc="(ILLogica/DataType/DtComentario;LLogica/Clases/Usuario;)V" line="66"><counter type="INSTRUCTION" missed="37" covered="0"/><counter type="BRANCH" missed="8" covered="0"/><counter type="LINE" missed="9" covered="0"/><counter type="COMPLEXITY" missed="5" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="agregarModificarValoracion" desc="(LLogica/DataType/DtValoracion;LLogica/Clases/Usuario;)V" line="82"><counter type="INSTRUCTION" missed="89" covered="0"/><counter type="BRANCH" missed="14" covered="0"/><counter type="LINE" missed="20" covered="0"/><counter type="COMPLEXITY" missed="8" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getDt" desc="()LLogica/DataType/DtVideo;" line="122"><counter type="INSTRUCTION" missed="24" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarComentarios" desc="()Ljava/util/ArrayList;" line="126"><counter type="INSTRUCTION" missed="33" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="6" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarValoraciones" desc="()Ljava/util/ArrayList;" line="138"><counter type="INSTRUCTION" missed="24" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="modificar" desc="(LLogica/DataType/DtVideo;)V" line="148"><counter type="INSTRUCTION" missed="66" covered="0"/><counter type="BRANCH" missed="10" covered="0"/><counter type="LINE" missed="17" covered="0"/><counter type="COMPLEXITY" missed="6" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="obtenerValoracion" desc="(Ljava/lang/String;)LLogica/DataType/DtValoracion;" line="180"><counter type="INSTRUCTION" missed="35" covered="0"/><counter type="BRANCH" missed="6" covered="0"/><counter type="LINE" missed="6" covered="0"/><counter type="COMPLEXITY" missed="4" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="quitarValoracion" desc="(Ljava/lang/String;)V" line="192"><counter type="INSTRUCTION" missed="55" covered="0"/><counter type="BRANCH" missed="8" covered="0"/><counter type="LINE" missed="10" covered="0"/><counter type="COMPLEXITY" missed="5" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getNuevoId" desc="()I" line="216"><counter type="INSTRUCTION" missed="8" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getId" desc="()I" line="222"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="setId" desc="(I)V" line="226"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getNombre" desc="()Ljava/lang/String;" line="230"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="setNombre" desc="(Ljava/lang/String;)V" line="234"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getDescripcion" desc="()Ljava/lang/String;" line="238"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="setDescripcion" desc="(Ljava/lang/String;)V" line="242"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getDuracion" desc="()Ljava/sql/Time;" line="246"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="setDuracion" desc="(Ljava/sql/Time;)V" line="250"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getFechaPublicacion" desc="()Ljava/sql/Date;" line="254"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="setFechaPublicacion" desc="(Ljava/sql/Date;)V" line="258"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getUrlVideoOriginal" desc="()Ljava/lang/String;" line="262"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="setUrlVideoOriginal" desc="(Ljava/lang/String;)V" line="266"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getPrivacidad" desc="()LLogica/Enumerados/Privacidad;" line="270"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="setPrivacidad" desc="(LLogica/Enumerados/Privacidad;)V" line="274"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getCategoria" desc="()Ljava/lang/String;" line="278"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="setCategoria" desc="(Ljava/lang/String;)V" line="282"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getCantLikes" desc="()I" line="286"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="setCantLikes" desc="(I)V" line="290"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getCantDisLikes" desc="()I" line="294"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="setCantDisLikes" desc="(I)V" line="298"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="toString" desc="()Ljava/lang/String;" line="303"><counter type="INSTRUCTION" missed="57" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;clinit&gt;" desc="()V" line="26"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="636" covered="0"/><counter type="BRANCH" missed="66" covered="0"/><counter type="LINE" missed="137" covered="0"/><counter type="COMPLEXITY" missed="67" covered="0"/><counter type="METHOD" missed="34" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><class name="Logica/Clases/ListaDeReproduccion"><method name="&lt;init&gt;" desc="(ILjava/lang/String;LLogica/Enumerados/Privacidad;LLogica/Enumerados/TipoListaDeReproduccion;Ljava/lang/String;)V" line="23"><counter type="INSTRUCTION" missed="15" covered="37"/><counter type="BRANCH" missed="4" covered="4"/><counter type="LINE" missed="3" covered="11"/><counter type="COMPLEXITY" missed="4" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getNuevoId" desc="()I" line="42"><counter type="INSTRUCTION" missed="0" covered="6"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="agregarListaPorDefecto" desc="(Ljava/lang/String;)V" line="45"><counter type="INSTRUCTION" missed="14" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarNombresDeListasPorDefecto" desc="()Ljava/util/ArrayList;" line="52"><counter type="INSTRUCTION" missed="0" covered="7"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getId" desc="()I" line="57"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getNombre" desc="()Ljava/lang/String;" line="61"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getPrivacidad" desc="()LLogica/Enumerados/Privacidad;" line="65"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="setPrivacidad" desc="(LLogica/Enumerados/Privacidad;)V" line="69"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getTipo" desc="()LLogica/Enumerados/TipoListaDeReproduccion;" line="73"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getCategoria" desc="()Ljava/lang/String;" line="77"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="toString" desc="()Ljava/lang/String;" line="82"><counter type="INSTRUCTION" missed="38" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="agregarVideoA" desc="(LLogica/Clases/Video;)V" line="88"><counter type="INSTRUCTION" missed="16" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getDt" desc="()LLogica/DataType/DtListaDeReproduccion;" line="97"><counter type="INSTRUCTION" missed="14" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarVideos" desc="()Ljava/util/ArrayList;" line="102"><counter type="INSTRUCTION" missed="26" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="modificar" desc="(LLogica/DataType/DtListaDeReproduccion;)V" line="120"><counter type="INSTRUCTION" missed="39" covered="0"/><counter type="BRANCH" missed="6" covered="0"/><counter type="LINE" missed="10" covered="0"/><counter type="COMPLEXITY" missed="4" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="quitarVideo" desc="(I)V" line="138"><counter type="INSTRUCTION" missed="7" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;clinit&gt;" desc="()V" line="13"><counter type="INSTRUCTION" missed="0" covered="14"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="188" covered="64"/><counter type="BRANCH" missed="16" covered="4"/><counter type="LINE" missed="37" covered="16"/><counter type="COMPLEXITY" missed="23" covered="4"/><counter type="METHOD" missed="13" covered="4"/><counter type="CLASS" missed="0" covered="1"/></class><class name="Logica/Clases/Usuario"><method name="&lt;init&gt;" desc="(Ljava/lang/String;Ljava/lang/String;Ljava/sql/Date;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;LLogica/DataType/DtCanal;)V" line="21"><counter type="INSTRUCTION" missed="20" covered="53"/><counter type="BRANCH" missed="4" covered="4"/><counter type="LINE" missed="4" covered="14"/><counter type="COMPLEXITY" missed="4" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getNickname" desc="()Ljava/lang/String;" line="48"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getCorreo" desc="()Ljava/lang/String;" line="52"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getFechaNacimiento" desc="()Ljava/sql/Date;" line="56"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getImagen" desc="()Ljava/lang/String;" line="60"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getSeguidores" desc="()I" line="64"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getDT" desc="()LLogica/DataType/DtUsuario;" line="68"><counter type="INSTRUCTION" missed="20" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="actualizarListasPorDefecto" desc="()V" line="72"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="agregarComentarioAVideo" desc="(ILLogica/DataType/DtComentario;LLogica/Clases/Usuario;)V" line="76"><counter type="INSTRUCTION" missed="21" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="6" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="agregarComentarioAVideo" desc="(IILLogica/DataType/DtComentario;LLogica/Clases/Usuario;)V" line="87"><counter type="INSTRUCTION" missed="22" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="6" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="agregarListaParticular" desc="(LLogica/DataType/DtListaDeReproduccion;)V" line="98"><counter type="INSTRUCTION" missed="12" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="agregarModificarValoracionDeVideo" desc="(ILLogica/DataType/DtValoracion;LLogica/Clases/Usuario;)V" line="106"><counter type="INSTRUCTION" missed="21" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="6" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="agregarOQuitarSeguido" desc="(LLogica/Clases/Usuario;)V" line="117"><counter type="INSTRUCTION" missed="39" covered="0"/><counter type="BRANCH" missed="6" covered="0"/><counter type="LINE" missed="9" covered="0"/><counter type="COMPLEXITY" missed="4" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="agregarOQuitarSeguidor" desc="(LLogica/Clases/Usuario;)V" line="135"><counter type="INSTRUCTION" missed="40" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="8" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="agregarVideoACanal" desc="(LLogica/DataType/DtVideo;)V" line="149"><counter type="INSTRUCTION" missed="12" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="agregarVideoALista" desc="(IILLogica/Clases/Usuario;)V" line="157"><counter type="INSTRUCTION" missed="32" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="7" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarComentariosDeVideo" desc="(I)Ljava/util/ArrayList;" line="169"><counter type="INSTRUCTION" missed="5" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarListasDeReproduccionDeCanal" desc="(Z)Ljava/util/ArrayList;" line="173"><counter type="INSTRUCTION" missed="5" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarUsuariosSeguidos" desc="()Ljava/util/ArrayList;" line="178"><counter type="INSTRUCTION" missed="26" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarUsuariosSeguidores" desc="()Ljava/util/ArrayList;" line="189"><counter type="INSTRUCTION" missed="26" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarValoracionesDeVideo" desc="(I)Ljava/util/ArrayList;" line="199"><counter type="INSTRUCTION" missed="5" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarVideosDeCanal" desc="()Ljava/util/ArrayList;" line="203"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarVideosDeListaDeReproduccion" desc="(I)Ljava/util/ArrayList;" line="207"><counter type="INSTRUCTION" missed="5" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="modificar" desc="(LLogica/DataType/DtUsuario;LLogica/DataType/DtCanal;)V" line="211"><counter type="INSTRUCTION" missed="47" covered="0"/><counter type="BRANCH" missed="6" covered="0"/><counter type="LINE" missed="13" covered="0"/><counter type="COMPLEXITY" missed="4" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="modificarListaDeReproduccionDeCanal" desc="(LLogica/DataType/DtListaDeReproduccion;)V" line="231"><counter type="INSTRUCTION" missed="12" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="modificarVideoDeCanal" desc="(LLogica/DataType/DtVideo;)V" line="239"><counter type="INSTRUCTION" missed="12" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="obtenerCanal" desc="()LLogica/DataType/DtCanal;" line="246"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="obtenerListaDeReproduccion" desc="(I)LLogica/DataType/DtListaDeReproduccion;" line="251"><counter type="INSTRUCTION" missed="5" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="obtenerListasEnCategoria" desc="(Ljava/lang/String;)Ljava/util/ArrayList;" line="256"><counter type="INSTRUCTION" missed="13" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="obtenerValoracion" desc="(ILjava/lang/String;)LLogica/DataType/DtValoracion;" line="264"><counter type="INSTRUCTION" missed="14" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="obtenerVideo" desc="(I)LLogica/Clases/Video;" line="272"><counter type="INSTRUCTION" missed="5" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="obtenerVideoDeCanal" desc="(I)LLogica/DataType/DtVideo;" line="276"><counter type="INSTRUCTION" missed="5" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="obtenerVideosEnCategoria" desc="(Ljava/lang/String;)Ljava/util/ArrayList;" line="280"><counter type="INSTRUCTION" missed="13" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="quitarValoracion" desc="(ILjava/lang/String;)V" line="289"><counter type="INSTRUCTION" missed="14" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="quitarVideoDeListaDeReproduccion" desc="(II)V" line="296"><counter type="INSTRUCTION" missed="6" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="validarListaParticular" desc="(Ljava/lang/String;)Z" line="300"><counter type="INSTRUCTION" missed="13" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="494" covered="56"/><counter type="BRANCH" missed="58" covered="4"/><counter type="LINE" missed="119" covered="15"/><counter type="COMPLEXITY" missed="65" covered="2"/><counter type="METHOD" missed="34" covered="2"/><counter type="CLASS" missed="0" covered="1"/></class><class name="Logica/Clases/Categoria"><method name="&lt;init&gt;" desc="(Ljava/lang/String;)V" line="6"><counter type="INSTRUCTION" missed="6" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getNombre" desc="()Ljava/lang/String;" line="11"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="9" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="2" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><class name="Logica/Clases/Administrador"><method name="&lt;init&gt;" desc="(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V" line="8"><counter type="INSTRUCTION" missed="9" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getNuevoID" desc="()I" line="13"><counter type="INSTRUCTION" missed="6" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getIdAdmin" desc="()I" line="17"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;clinit&gt;" desc="()V" line="5"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="21" covered="0"/><counter type="LINE" missed="6" covered="0"/><counter type="COMPLEXITY" missed="4" covered="0"/><counter type="METHOD" missed="4" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><class name="Logica/Clases/Comentario"><method name="&lt;init&gt;" desc="(ILjava/sql/Date;Ljava/lang/String;ILLogica/Clases/Usuario;)V" line="18"><counter type="INSTRUCTION" missed="0" covered="37"/><counter type="BRANCH" missed="0" covered="4"/><counter type="LINE" missed="0" covered="12"/><counter type="COMPLEXITY" missed="0" covered="3"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getNuevoID" desc="()I" line="34"><counter type="INSTRUCTION" missed="0" covered="6"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getId" desc="()I" line="38"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getFecha" desc="()Ljava/sql/Date;" line="42"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getTexto" desc="()Ljava/lang/String;" line="45"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getNivelSubComentario" desc="()I" line="48"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getUsr" desc="()LLogica/Clases/Usuario;" line="52"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="toString" desc="()Ljava/lang/String;" line="57"><counter type="INSTRUCTION" missed="0" covered="27"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="agregarSubComentario" desc="(ILLogica/DataType/DtComentario;LLogica/Clases/Usuario;)Z" line="61"><counter type="INSTRUCTION" missed="0" covered="62"/><counter type="BRANCH" missed="0" covered="10"/><counter type="LINE" missed="0" covered="14"/><counter type="COMPLEXITY" missed="0" covered="6"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getDT" desc="()LLogica/DataType/DtComentario;" line="87"><counter type="INSTRUCTION" missed="0" covered="17"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="listarSubComentarios" desc="()Ljava/util/ArrayList;" line="92"><counter type="INSTRUCTION" missed="0" covered="33"/><counter type="BRANCH" missed="0" covered="2"/><counter type="LINE" missed="0" covered="5"/><counter type="COMPLEXITY" missed="0" covered="2"/><counter type="METHOD" missed="0" covered="1"/></method><method name="&lt;clinit&gt;" desc="()V" line="9"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="0" covered="200"/><counter type="BRANCH" missed="0" covered="16"/><counter type="LINE" missed="0" covered="41"/><counter type="COMPLEXITY" missed="0" covered="20"/><counter type="METHOD" missed="0" covered="12"/><counter type="CLASS" missed="0" covered="1"/></class><class name="Logica/Clases/Canal"><method name="&lt;init&gt;" desc="(ILjava/lang/String;Ljava/lang/String;LLogica/Enumerados/Privacidad;)V" line="24"><counter type="INSTRUCTION" missed="5" covered="58"/><counter type="BRANCH" missed="1" covered="3"/><counter type="LINE" missed="1" covered="14"/><counter type="COMPLEXITY" missed="1" covered="2"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getId" desc="()I" line="44"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getNombre" desc="()Ljava/lang/String;" line="48"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getDescripcion" desc="()Ljava/lang/String;" line="52"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getPrivacidad" desc="()LLogica/Enumerados/Privacidad;" line="56"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="setId" desc="(I)V" line="60"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="setNombre" desc="(Ljava/lang/String;)V" line="64"><counter type="INSTRUCTION" missed="13" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="setDescripcion" desc="(Ljava/lang/String;)V" line="71"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="setPrivacidad" desc="(LLogica/Enumerados/Privacidad;)V" line="76"><counter type="INSTRUCTION" missed="25" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="6" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getNuevoId" desc="()I" line="85"><counter type="INSTRUCTION" missed="0" covered="6"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="actualizarListasPorDefecto" desc="()V" line="90"><counter type="INSTRUCTION" missed="56" covered="0"/><counter type="BRANCH" missed="6" covered="0"/><counter type="LINE" missed="10" covered="0"/><counter type="COMPLEXITY" missed="4" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="agregarComentarioAVideo" desc="(ILLogica/DataType/DtComentario;LLogica/Clases/Usuario;)V" line="105"><counter type="INSTRUCTION" missed="22" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="agregarComentarioAVideo" desc="(IILLogica/DataType/DtComentario;LLogica/Clases/Usuario;)V" line="113"><counter type="INSTRUCTION" missed="23" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="agregarListaParticular" desc="(LLogica/DataType/DtListaDeReproduccion;)V" line="121"><counter type="INSTRUCTION" missed="89" covered="0"/><counter type="BRANCH" missed="14" covered="0"/><counter type="LINE" missed="20" covered="0"/><counter type="COMPLEXITY" missed="8" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="quitarValoracion" desc="(ILjava/lang/String;)V" line="152"><counter type="INSTRUCTION" missed="21" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="agregarModificarValoracion" desc="(ILLogica/DataType/DtValoracion;LLogica/Clases/Usuario;)V" line="161"><counter type="INSTRUCTION" missed="22" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="agregarVideo" desc="(LLogica/DataType/DtVideo;)V" line="170"><counter type="INSTRUCTION" missed="113" covered="0"/><counter type="BRANCH" missed="18" covered="0"/><counter type="LINE" missed="28" covered="0"/><counter type="COMPLEXITY" missed="10" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="agregarVideoALista" desc="(ILLogica/Clases/Video;)V" line="215"><counter type="INSTRUCTION" missed="21" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getDT" desc="()LLogica/DataType/DtCanal;" line="223"><counter type="INSTRUCTION" missed="12" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarComentariosDeVideo" desc="(I)Ljava/util/ArrayList;" line="230"><counter type="INSTRUCTION" missed="19" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarListasDeReproduccion" desc="(Z)Ljava/util/ArrayList;" line="238"><counter type="INSTRUCTION" missed="35" covered="0"/><counter type="BRANCH" missed="6" covered="0"/><counter type="LINE" missed="7" covered="0"/><counter type="COMPLEXITY" missed="4" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarValoracionesDeVideo" desc="(I)Ljava/util/ArrayList;" line="251"><counter type="INSTRUCTION" missed="19" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarVideos" desc="()Ljava/util/ArrayList;" line="259"><counter type="INSTRUCTION" missed="26" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="listarVideosDeListaDeReproduccion" desc="(I)Ljava/util/ArrayList;" line="276"><counter type="INSTRUCTION" missed="19" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="modificar" desc="(LLogica/DataType/DtCanal;)V" line="284"><counter type="INSTRUCTION" missed="67" covered="0"/><counter type="BRANCH" missed="10" covered="0"/><counter type="LINE" missed="13" covered="0"/><counter type="COMPLEXITY" missed="6" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="modificarListaDeReproduccion" desc="(LLogica/DataType/DtListaDeReproduccion;)V" line="304"><counter type="INSTRUCTION" missed="43" covered="0"/><counter type="BRANCH" missed="8" covered="0"/><counter type="LINE" missed="8" covered="0"/><counter type="COMPLEXITY" missed="5" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="modificarVideo" desc="(LLogica/DataType/DtVideo;)V" line="320"><counter type="INSTRUCTION" missed="43" covered="0"/><counter type="BRANCH" missed="8" covered="0"/><counter type="LINE" missed="8" covered="0"/><counter type="COMPLEXITY" missed="5" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="obtenerListaDeReproduccion" desc="(I)LLogica/DataType/DtListaDeReproduccion;" line="337"><counter type="INSTRUCTION" missed="17" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="obtenerListasEnCategoria" desc="(Ljava/lang/String;)Ljava/util/ArrayList;" line="346"><counter type="INSTRUCTION" missed="33" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="6" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="obtenerDtVideo" desc="(I)LLogica/DataType/DtVideo;" line="366"><counter type="INSTRUCTION" missed="19" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="obtenerVideo" desc="(I)LLogica/Clases/Video;" line="374"><counter type="INSTRUCTION" missed="18" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="obtenerVideosEnCategoria" desc="(Ljava/lang/String;)Ljava/util/ArrayList;" line="382"><counter type="INSTRUCTION" missed="33" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="6" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="quitarVideoDeListaDeReproduccion" desc="(II)V" line="402"><counter type="INSTRUCTION" missed="21" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="validarListaParticular" desc="(Ljava/lang/String;)Z" line="410"><counter type="INSTRUCTION" missed="30" covered="0"/><counter type="BRANCH" missed="6" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="4" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="obtenerValoracion" desc="(ILjava/lang/String;)LLogica/DataType/DtValoracion;" line="419"><counter type="INSTRUCTION" missed="20" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;clinit&gt;" desc="()V" line="16"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="904" covered="67"/><counter type="BRANCH" missed="119" covered="3"/><counter type="LINE" missed="182" covered="16"/><counter type="COMPLEXITY" missed="93" covered="4"/><counter type="METHOD" missed="33" covered="3"/><counter type="CLASS" missed="0" covered="1"/></class><class name="Logica/Clases/Valoracion"><method name="&lt;init&gt;" desc="(LLogica/Enumerados/TipoValoracion;LLogica/Clases/Usuario;)V" line="10"><counter type="INSTRUCTION" missed="0" covered="16"/><counter type="BRANCH" missed="0" covered="2"/><counter type="LINE" missed="0" covered="6"/><counter type="COMPLEXITY" missed="0" covered="2"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getVal" desc="()LLogica/Enumerados/TipoValoracion;" line="19"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="setVal" desc="(LLogica/Enumerados/TipoValoracion;)V" line="23"><counter type="INSTRUCTION" missed="0" covered="4"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getNicknameDeUsuario" desc="()Ljava/lang/String;" line="27"><counter type="INSTRUCTION" missed="0" covered="4"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getDT" desc="()LLogica/DataType/DtValoracion;" line="31"><counter type="INSTRUCTION" missed="0" covered="11"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getDT" desc="(Ljava/lang/String;)LLogica/DataType/DtValoracion;" line="35"><counter type="INSTRUCTION" missed="0" covered="18"/><counter type="BRANCH" missed="0" covered="4"/><counter type="LINE" missed="0" covered="5"/><counter type="COMPLEXITY" missed="0" covered="3"/><counter type="METHOD" missed="0" covered="1"/></method><method name="modificar" desc="(LLogica/DataType/DtValoracion;Ljava/lang/String;)Z" line="46"><counter type="INSTRUCTION" missed="0" covered="28"/><counter type="BRANCH" missed="0" covered="6"/><counter type="LINE" missed="0" covered="8"/><counter type="COMPLEXITY" missed="0" covered="4"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="0" covered="84"/><counter type="BRANCH" missed="0" covered="12"/><counter type="LINE" missed="0" covered="25"/><counter type="COMPLEXITY" missed="0" covered="13"/><counter type="METHOD" missed="0" covered="7"/><counter type="CLASS" missed="0" covered="1"/></class><class name="Logica/Clases/Persona"><method name="&lt;init&gt;" desc="(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V" line="8"><counter type="INSTRUCTION" missed="5" covered="15"/><counter type="BRANCH" missed="1" covered="1"/><counter type="LINE" missed="1" covered="6"/><counter type="COMPLEXITY" missed="1" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getNombre" desc="()Ljava/lang/String;" line="18"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="setNombre" desc="(Ljava/lang/String;)V" line="22"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getApellido" desc="()Ljava/lang/String;" line="26"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="setApellido" desc="(Ljava/lang/String;)V" line="30"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getContrasena" desc="()Ljava/lang/String;" line="34"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="setContrasenia" desc="(Ljava/lang/String;)V" line="38"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="validarContrasenia" desc="(Ljava/lang/String;)Z" line="42"><counter type="INSTRUCTION" missed="5" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="31" covered="15"/><counter type="BRANCH" missed="1" covered="1"/><counter type="LINE" missed="11" covered="6"/><counter type="COMPLEXITY" missed="8" covered="1"/><counter type="METHOD" missed="7" covered="1"/><counter type="CLASS" missed="0" covered="1"/></class><sourcefile name="Valoracion.java"><line nr="10" mi="0" ci="2" mb="0" cb="0"/><line nr="11" mi="0" ci="2" mb="0" cb="2"/><line nr="12" mi="0" ci="5" mb="0" cb="0"/><line nr="14" mi="0" ci="3" mb="0" cb="0"/><line nr="15" mi="0" ci="3" mb="0" cb="0"/><line nr="16" mi="0" ci="1" mb="0" cb="0"/><line nr="19" mi="0" ci="3" mb="0" cb="0"/><line nr="23" mi="0" ci="3" mb="0" cb="0"/><line nr="24" mi="0" ci="1" mb="0" cb="0"/><line nr="27" mi="0" ci="4" mb="0" cb="0"/><line nr="31" mi="0" ci="9" mb="0" cb="0"/><line nr="32" mi="0" ci="2" mb="0" cb="0"/><line nr="35" mi="0" ci="2" mb="0" cb="2"/><line nr="36" mi="0" ci="5" mb="0" cb="0"/><line nr="39" mi="0" ci="6" mb="0" cb="2"/><line nr="40" mi="0" ci="3" mb="0" cb="0"/><line nr="42" mi="0" ci="2" mb="0" cb="0"/><line nr="46" mi="0" ci="2" mb="0" cb="2"/><line nr="47" mi="0" ci="5" mb="0" cb="0"/><line nr="49" mi="0" ci="2" mb="0" cb="2"/><line nr="50" mi="0" ci="5" mb="0" cb="0"/><line nr="52" mi="0" ci="6" mb="0" cb="2"/><line nr="53" mi="0" ci="4" mb="0" cb="0"/><line nr="54" mi="0" ci="2" mb="0" cb="0"/><line nr="56" mi="0" ci="2" mb="0" cb="0"/><counter type="INSTRUCTION" missed="0" covered="84"/><counter type="BRANCH" missed="0" covered="12"/><counter type="LINE" missed="0" covered="25"/><counter type="COMPLEXITY" missed="0" covered="13"/><counter type="METHOD" missed="0" covered="7"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="ListaDeReproduccion.java"><line nr="13" mi="0" ci="2" mb="0" cb="0"/><line nr="14" mi="0" ci="12" mb="0" cb="0"/><line nr="23" mi="0" ci="2" mb="0" cb="0"/><line nr="24" mi="0" ci="4" mb="1" cb="1"/><line nr="25" mi="5" ci="0" mb="0" cb="0"/><line nr="27" mi="0" ci="4" mb="1" cb="1"/><line nr="28" mi="5" ci="0" mb="0" cb="0"/><line nr="30" mi="0" ci="6" mb="2" cb="2"/><line nr="31" mi="5" ci="0" mb="0" cb="0"/><line nr="33" mi="0" ci="3" mb="0" cb="0"/><line nr="34" mi="0" ci="3" mb="0" cb="0"/><line nr="35" mi="0" ci="3" mb="0" cb="0"/><line nr="36" mi="0" ci="3" mb="0" cb="0"/><line nr="37" mi="0" ci="3" mb="0" cb="0"/><line nr="38" mi="0" ci="5" mb="0" cb="0"/><line nr="39" mi="0" ci="1" mb="0" cb="0"/><line nr="42" mi="0" ci="6" mb="0" cb="0"/><line nr="45" mi="4" ci="0" mb="2" cb="0"/><line nr="46" mi="5" ci="0" mb="0" cb="0"/><line nr="48" mi="4" ci="0" mb="0" cb="0"/><line nr="49" mi="1" ci="0" mb="0" cb="0"/><line nr="52" mi="0" ci="5" mb="0" cb="0"/><line nr="53" mi="0" ci="2" mb="0" cb="0"/><line nr="57" mi="3" ci="0" mb="0" cb="0"/><line nr="61" mi="3" ci="0" mb="0" cb="0"/><line nr="65" mi="3" ci="0" mb="0" cb="0"/><line nr="69" mi="3" ci="0" mb="0" cb="0"/><line nr="70" mi="1" ci="0" mb="0" cb="0"/><line nr="73" mi="3" ci="0" mb="0" cb="0"/><line nr="77" mi="3" ci="0" mb="0" cb="0"/><line nr="82" mi="38" ci="0" mb="0" cb="0"/><line nr="88" mi="2" ci="0" mb="2" cb="0"/><line nr="89" mi="5" ci="0" mb="0" cb="0"/><line nr="92" mi="8" ci="0" mb="0" cb="0"/><line nr="93" mi="1" ci="0" mb="0" cb="0"/><line nr="97" mi="14" ci="0" mb="0" cb="0"/><line nr="102" mi="4" ci="0" mb="0" cb="0"/><line nr="111" mi="12" ci="0" mb="2" cb="0"/><line nr="113" mi="7" ci="0" mb="0" cb="0"/><line nr="114" mi="1" ci="0" mb="0" cb="0"/><line nr="116" mi="2" ci="0" mb="0" cb="0"/><line nr="120" mi="4" ci="0" mb="2" cb="0"/><line nr="121" mi="5" ci="0" mb="0" cb="0"/><line nr="123" mi="2" ci="0" mb="2" cb="0"/><line nr="124" mi="5" ci="0" mb="0" cb="0"/><line nr="126" mi="5" ci="0" mb="2" cb="0"/><line nr="127" mi="5" ci="0" mb="0" cb="0"/><line nr="130" mi="4" ci="0" mb="0" cb="0"/><line nr="131" mi="4" ci="0" mb="0" cb="0"/><line nr="132" mi="4" ci="0" mb="0" cb="0"/><line nr="134" mi="1" ci="0" mb="0" cb="0"/><line nr="138" mi="6" ci="0" mb="0" cb="0"/><line nr="139" mi="1" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="188" covered="64"/><counter type="BRANCH" missed="16" covered="4"/><counter type="LINE" missed="37" covered="16"/><counter type="COMPLEXITY" missed="23" covered="4"/><counter type="METHOD" missed="13" covered="4"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="Persona.java"><line nr="8" mi="0" ci="2" mb="0" cb="0"/><line nr="9" mi="0" ci="3" mb="1" cb="1"/><line nr="10" mi="5" ci="0" mb="0" cb="0"/><line nr="12" mi="0" ci="3" mb="0" cb="0"/><line nr="13" mi="0" ci="3" mb="0" cb="0"/><line nr="14" mi="0" ci="3" mb="0" cb="0"/><line nr="15" mi="0" ci="1" mb="0" cb="0"/><line nr="18" mi="3" ci="0" mb="0" cb="0"/><line nr="22" mi="3" ci="0" mb="0" cb="0"/><line nr="23" mi="1" ci="0" mb="0" cb="0"/><line nr="26" mi="3" ci="0" mb="0" cb="0"/><line nr="30" mi="3" ci="0" mb="0" cb="0"/><line nr="31" mi="1" ci="0" mb="0" cb="0"/><line nr="34" mi="3" ci="0" mb="0" cb="0"/><line nr="38" mi="3" ci="0" mb="0" cb="0"/><line nr="39" mi="1" ci="0" mb="0" cb="0"/><line nr="42" mi="5" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="31" covered="15"/><counter type="BRANCH" missed="1" covered="1"/><counter type="LINE" missed="11" covered="6"/><counter type="COMPLEXITY" missed="8" covered="1"/><counter type="METHOD" missed="7" covered="1"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="Categoria.java"><line nr="6" mi="2" ci="0" mb="0" cb="0"/><line nr="7" mi="3" ci="0" mb="0" cb="0"/><line nr="8" mi="1" ci="0" mb="0" cb="0"/><line nr="11" mi="3" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="9" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="2" covered="0"/><counter type="CLASS" missed="1" covered="0"/></sourcefile><sourcefile name="Video.java"><line nr="20" mi="6" ci="0" mb="0" cb="0"/><line nr="22" mi="6" ci="0" mb="0" cb="0"/><line nr="23" mi="6" ci="0" mb="0" cb="0"/><line nr="26" mi="3" ci="0" mb="0" cb="0"/><line nr="28" mi="2" ci="0" mb="0" cb="0"/><line nr="30" mi="1" ci="0" mb="0" cb="0"/><line nr="32" mi="2" ci="0" mb="0" cb="0"/><line nr="33" mi="7" ci="0" mb="2" cb="0"/><line nr="34" mi="8" ci="0" mb="2" cb="0"/><line nr="35" mi="7" ci="0" mb="2" cb="0"/><line nr="36" mi="7" ci="0" mb="2" cb="0"/><line nr="37" mi="8" ci="0" mb="2" cb="0"/><line nr="38" mi="8" ci="0" mb="2" cb="0"/><line nr="39" mi="3" ci="0" mb="0" cb="0"/><line nr="40" mi="3" ci="0" mb="0" cb="0"/><line nr="41" mi="3" ci="0" mb="0" cb="0"/><line nr="42" mi="3" ci="0" mb="0" cb="0"/><line nr="43" mi="3" ci="0" mb="0" cb="0"/><line nr="44" mi="3" ci="0" mb="0" cb="0"/><line nr="45" mi="3" ci="0" mb="0" cb="0"/><line nr="46" mi="5" ci="0" mb="0" cb="0"/><line nr="47" mi="5" ci="0" mb="0" cb="0"/><line nr="48" mi="1" ci="0" mb="0" cb="0"/><line nr="52" mi="2" ci="0" mb="2" cb="0"/><line nr="53" mi="5" ci="0" mb="0" cb="0"/><line nr="55" mi="2" ci="0" mb="2" cb="0"/><line nr="56" mi="5" ci="0" mb="0" cb="0"/><line nr="59" mi="2" ci="0" mb="0" cb="0"/><line nr="60" mi="11" ci="0" mb="0" cb="0"/><line nr="61" mi="7" ci="0" mb="0" cb="0"/><line nr="62" mi="1" ci="0" mb="0" cb="0"/><line nr="66" mi="2" ci="0" mb="2" cb="0"/><line nr="67" mi="5" ci="0" mb="0" cb="0"/><line nr="69" mi="2" ci="0" mb="2" cb="0"/><line nr="70" mi="5" ci="0" mb="0" cb="0"/><line nr="73" mi="12" ci="0" mb="2" cb="0"/><line nr="74" mi="8" ci="0" mb="2" cb="0"/><line nr="75" mi="1" ci="0" mb="0" cb="0"/><line nr="77" mi="1" ci="0" mb="0" cb="0"/><line nr="78" mi="1" ci="0" mb="0" cb="0"/><line nr="82" mi="2" ci="0" mb="2" cb="0"/><line nr="83" mi="5" ci="0" mb="0" cb="0"/><line nr="85" mi="2" ci="0" mb="2" cb="0"/><line nr="86" mi="5" ci="0" mb="0" cb="0"/><line nr="89" mi="3" ci="0" mb="0" cb="0"/><line nr="92" mi="4" ci="0" mb="0" cb="0"/><line nr="94" mi="2" ci="0" mb="2" cb="0"/><line nr="96" mi="4" ci="0" mb="2" cb="0"/><line nr="97" mi="7" ci="0" mb="0" cb="0"/><line nr="99" mi="6" ci="0" mb="0" cb="0"/><line nr="102" mi="11" ci="0" mb="2" cb="0"/><line nr="103" mi="5" ci="0" mb="2" cb="0"/><line nr="104" mi="1" ci="0" mb="0" cb="0"/><line nr="106" mi="2" ci="0" mb="0" cb="0"/><line nr="108" mi="7" ci="0" mb="0" cb="0"/><line nr="109" mi="5" ci="0" mb="0" cb="0"/><line nr="113" mi="4" ci="0" mb="2" cb="0"/><line nr="114" mi="7" ci="0" mb="0" cb="0"/><line nr="116" mi="6" ci="0" mb="0" cb="0"/><line nr="119" mi="1" ci="0" mb="0" cb="0"/><line nr="122" mi="24" ci="0" mb="0" cb="0"/><line nr="126" mi="4" ci="0" mb="0" cb="0"/><line nr="128" mi="12" ci="0" mb="2" cb="0"/><line nr="130" mi="7" ci="0" mb="0" cb="0"/><line nr="132" mi="7" ci="0" mb="0" cb="0"/><line nr="133" mi="1" ci="0" mb="0" cb="0"/><line nr="134" mi="2" ci="0" mb="0" cb="0"/><line nr="138" mi="4" ci="0" mb="0" cb="0"/><line nr="140" mi="9" ci="0" mb="2" cb="0"/><line nr="142" mi="9" ci="0" mb="0" cb="0"/><line nr="144" mi="2" ci="0" mb="0" cb="0"/><line nr="148" mi="2" ci="0" mb="2" cb="0"/><line nr="149" mi="5" ci="0" mb="0" cb="0"/><line nr="153" mi="4" ci="0" mb="2" cb="0"/><line nr="154" mi="5" ci="0" mb="0" cb="0"/><line nr="157" mi="3" ci="0" mb="2" cb="0"/><line nr="158" mi="5" ci="0" mb="0" cb="0"/><line nr="161" mi="3" ci="0" mb="2" cb="0"/><line nr="162" mi="5" ci="0" mb="0" cb="0"/><line nr="165" mi="4" ci="0" mb="2" cb="0"/><line nr="166" mi="5" ci="0" mb="0" cb="0"/><line nr="169" mi="4" ci="0" mb="0" cb="0"/><line nr="170" mi="4" ci="0" mb="0" cb="0"/><line nr="171" mi="4" ci="0" mb="0" cb="0"/><line nr="172" mi="4" ci="0" mb="0" cb="0"/><line nr="173" mi="4" ci="0" mb="0" cb="0"/><line nr="174" mi="4" ci="0" mb="0" cb="0"/><line nr="176" mi="1" ci="0" mb="0" cb="0"/><line nr="180" mi="4" ci="0" mb="2" cb="0"/><line nr="181" mi="5" ci="0" mb="0" cb="0"/><line nr="183" mi="9" ci="0" mb="2" cb="0"/><line nr="184" mi="8" ci="0" mb="2" cb="0"/><line nr="185" mi="7" ci="0" mb="0" cb="0"/><line nr="188" mi="2" ci="0" mb="0" cb="0"/><line nr="192" mi="4" ci="0" mb="2" cb="0"/><line nr="193" mi="5" ci="0" mb="0" cb="0"/><line nr="197" mi="9" ci="0" mb="2" cb="0"/><line nr="198" mi="9" ci="0" mb="2" cb="0"/><line nr="201" mi="8" ci="0" mb="2" cb="0"/><line nr="202" mi="7" ci="0" mb="0" cb="0"/><line nr="204" mi="6" ci="0" mb="0" cb="0"/><line nr="208" mi="5" ci="0" mb="0" cb="0"/><line nr="209" mi="1" ci="0" mb="0" cb="0"/><line nr="212" mi="1" ci="0" mb="0" cb="0"/><line nr="216" mi="6" ci="0" mb="0" cb="0"/><line nr="217" mi="2" ci="0" mb="0" cb="0"/><line nr="222" mi="3" ci="0" mb="0" cb="0"/><line nr="226" mi="3" ci="0" mb="0" cb="0"/><line nr="227" mi="1" ci="0" mb="0" cb="0"/><line nr="230" mi="3" ci="0" mb="0" cb="0"/><line nr="234" mi="3" ci="0" mb="0" cb="0"/><line nr="235" mi="1" ci="0" mb="0" cb="0"/><line nr="238" mi="3" ci="0" mb="0" cb="0"/><line nr="242" mi="3" ci="0" mb="0" cb="0"/><line nr="243" mi="1" ci="0" mb="0" cb="0"/><line nr="246" mi="3" ci="0" mb="0" cb="0"/><line nr="250" mi="3" ci="0" mb="0" cb="0"/><line nr="251" mi="1" ci="0" mb="0" cb="0"/><line nr="254" mi="3" ci="0" mb="0" cb="0"/><line nr="258" mi="3" ci="0" mb="0" cb="0"/><line nr="259" mi="1" ci="0" mb="0" cb="0"/><line nr="262" mi="3" ci="0" mb="0" cb="0"/><line nr="266" mi="3" ci="0" mb="0" cb="0"/><line nr="267" mi="1" ci="0" mb="0" cb="0"/><line nr="270" mi="3" ci="0" mb="0" cb="0"/><line nr="274" mi="3" ci="0" mb="0" cb="0"/><line nr="275" mi="1" ci="0" mb="0" cb="0"/><line nr="278" mi="3" ci="0" mb="0" cb="0"/><line nr="282" mi="3" ci="0" mb="0" cb="0"/><line nr="283" mi="1" ci="0" mb="0" cb="0"/><line nr="286" mi="3" ci="0" mb="0" cb="0"/><line nr="290" mi="3" ci="0" mb="0" cb="0"/><line nr="291" mi="1" ci="0" mb="0" cb="0"/><line nr="294" mi="3" ci="0" mb="0" cb="0"/><line nr="298" mi="3" ci="0" mb="0" cb="0"/><line nr="299" mi="1" ci="0" mb="0" cb="0"/><line nr="303" mi="57" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="636" covered="0"/><counter type="BRANCH" missed="66" covered="0"/><counter type="LINE" missed="137" covered="0"/><counter type="COMPLEXITY" missed="67" covered="0"/><counter type="METHOD" missed="34" covered="0"/><counter type="CLASS" missed="1" covered="0"/></sourcefile><sourcefile name="Canal.java"><line nr="16" mi="0" ci="3" mb="0" cb="0"/><line nr="24" mi="0" ci="2" mb="0" cb="0"/><line nr="25" mi="0" ci="4" mb="1" cb="1"/><line nr="26" mi="5" ci="0" mb="0" cb="0"/><line nr="29" mi="0" ci="3" mb="0" cb="0"/><line nr="30" mi="0" ci="3" mb="0" cb="0"/><line nr="31" mi="0" ci="3" mb="0" cb="0"/><line nr="32" mi="0" ci="3" mb="0" cb="0"/><line nr="33" mi="0" ci="5" mb="0" cb="0"/><line nr="34" mi="0" ci="5" mb="0" cb="0"/><line nr="36" mi="0" ci="2" mb="0" cb="0"/><line nr="37" mi="0" ci="10" mb="0" cb="2"/><line nr="38" mi="0" ci="2" mb="0" cb="0"/><line nr="39" mi="0" ci="14" mb="0" cb="0"/><line nr="40" mi="0" ci="1" mb="0" cb="0"/><line nr="41" mi="0" ci="1" mb="0" cb="0"/><line nr="44" mi="3" ci="0" mb="0" cb="0"/><line nr="48" mi="3" ci="0" mb="0" cb="0"/><line nr="52" mi="3" ci="0" mb="0" cb="0"/><line nr="56" mi="3" ci="0" mb="0" cb="0"/><line nr="60" mi="3" ci="0" mb="0" cb="0"/><line nr="61" mi="1" ci="0" mb="0" cb="0"/><line nr="64" mi="4" ci="0" mb="2" cb="0"/><line nr="65" mi="5" ci="0" mb="0" cb="0"/><line nr="67" mi="3" ci="0" mb="0" cb="0"/><line nr="68" mi="1" ci="0" mb="0" cb="0"/><line nr="71" mi="3" ci="0" mb="0" cb="0"/><line nr="72" mi="1" ci="0" mb="0" cb="0"/><line nr="76" mi="3" ci="0" mb="2" cb="0"/><line nr="77" mi="12" ci="0" mb="2" cb="0"/><line nr="78" mi="5" ci="0" mb="0" cb="0"/><line nr="79" mi="1" ci="0" mb="0" cb="0"/><line nr="81" mi="3" ci="0" mb="0" cb="0"/><line nr="82" mi="1" ci="0" mb="0" cb="0"/><line nr="85" mi="0" ci="6" mb="0" cb="0"/><line nr="90" mi="2" ci="0" mb="0" cb="0"/><line nr="92" mi="12" ci="0" mb="2" cb="0"/><line nr="93" mi="6" ci="0" mb="2" cb="0"/><line nr="94" mi="7" ci="0" mb="0" cb="0"/><line nr="96" mi="1" ci="0" mb="0" cb="0"/><line nr="98" mi="10" ci="0" mb="2" cb="0"/><line nr="99" mi="2" ci="0" mb="0" cb="0"/><line nr="100" mi="14" ci="0" mb="0" cb="0"/><line nr="101" mi="1" ci="0" mb="0" cb="0"/><line nr="102" mi="1" ci="0" mb="0" cb="0"/><line nr="105" mi="6" ci="0" mb="2" cb="0"/><line nr="106" mi="10" ci="0" mb="0" cb="0"/><line nr="108" mi="5" ci="0" mb="0" cb="0"/><line nr="110" mi="1" ci="0" mb="0" cb="0"/><line nr="113" mi="6" ci="0" mb="2" cb="0"/><line nr="114" mi="11" ci="0" mb="0" cb="0"/><line nr="116" mi="5" ci="0" mb="0" cb="0"/><line nr="118" mi="1" ci="0" mb="0" cb="0"/><line nr="121" mi="2" ci="0" mb="0" cb="0"/><line nr="122" mi="2" ci="0" mb="2" cb="0"/><line nr="123" mi="5" ci="0" mb="0" cb="0"/><line nr="125" mi="5" ci="0" mb="2" cb="0"/><line nr="126" mi="5" ci="0" mb="0" cb="0"/><line nr="128" mi="8" ci="0" mb="4" cb="0"/><line nr="129" mi="5" ci="0" mb="0" cb="0"/><line nr="131" mi="5" ci="0" mb="2" cb="0"/><line nr="132" mi="5" ci="0" mb="0" cb="0"/><line nr="136" mi="12" ci="0" mb="2" cb="0"/><line nr="137" mi="8" ci="0" mb="2" cb="0"/><line nr="138" mi="5" ci="0" mb="0" cb="0"/><line nr="140" mi="1" ci="0" mb="0" cb="0"/><line nr="142" mi="4" ci="0" mb="0" cb="0"/><line nr="144" mi="2" ci="0" mb="0" cb="0"/><line nr="145" mi="2" ci="0" mb="0" cb="0"/><line nr="146" mi="2" ci="0" mb="0" cb="0"/><line nr="147" mi="3" ci="0" mb="0" cb="0"/><line nr="148" mi="7" ci="0" mb="0" cb="0"/><line nr="149" mi="1" ci="0" mb="0" cb="0"/><line nr="152" mi="6" ci="0" mb="2" cb="0"/><line nr="153" mi="9" ci="0" mb="0" cb="0"/><line nr="155" mi="5" ci="0" mb="0" cb="0"/><line nr="158" mi="1" ci="0" mb="0" cb="0"/><line nr="161" mi="6" ci="0" mb="2" cb="0"/><line nr="162" mi="10" ci="0" mb="0" cb="0"/><line nr="164" mi="5" ci="0" mb="0" cb="0"/><line nr="167" mi="1" ci="0" mb="0" cb="0"/><line nr="170" mi="2" ci="0" mb="2" cb="0"/><line nr="171" mi="5" ci="0" mb="0" cb="0"/><line nr="173" mi="5" ci="0" mb="2" cb="0"/><line nr="174" mi="5" ci="0" mb="0" cb="0"/><line nr="176" mi="3" ci="0" mb="2" cb="0"/><line nr="177" mi="5" ci="0" mb="0" cb="0"/><line nr="179" mi="3" ci="0" mb="2" cb="0"/><line nr="180" mi="5" ci="0" mb="0" cb="0"/><line nr="182" mi="5" ci="0" mb="2" cb="0"/><line nr="183" mi="5" ci="0" mb="0" cb="0"/><line nr="185" mi="5" ci="0" mb="2" cb="0"/><line nr="186" mi="5" ci="0" mb="0" cb="0"/><line nr="190" mi="12" ci="0" mb="2" cb="0"/><line nr="191" mi="8" ci="0" mb="2" cb="0"/><line nr="192" mi="5" ci="0" mb="0" cb="0"/><line nr="194" mi="1" ci="0" mb="0" cb="0"/><line nr="196" mi="2" ci="0" mb="0" cb="0"/><line nr="197" mi="4" ci="0" mb="0" cb="0"/><line nr="198" mi="2" ci="0" mb="0" cb="0"/><line nr="199" mi="2" ci="0" mb="0" cb="0"/><line nr="200" mi="2" ci="0" mb="0" cb="0"/><line nr="201" mi="2" ci="0" mb="0" cb="0"/><line nr="202" mi="2" ci="0" mb="0" cb="0"/><line nr="203" mi="3" ci="0" mb="0" cb="0"/><line nr="207" mi="4" ci="0" mb="2" cb="0"/><line nr="208" mi="3" ci="0" mb="0" cb="0"/><line nr="211" mi="7" ci="0" mb="0" cb="0"/><line nr="212" mi="1" ci="0" mb="0" cb="0"/><line nr="215" mi="6" ci="0" mb="2" cb="0"/><line nr="216" mi="9" ci="0" mb="0" cb="0"/><line nr="218" mi="5" ci="0" mb="0" cb="0"/><line nr="220" mi="1" ci="0" mb="0" cb="0"/><line nr="223" mi="12" ci="0" mb="0" cb="0"/><line nr="230" mi="6" ci="0" mb="2" cb="0"/><line nr="231" mi="8" ci="0" mb="0" cb="0"/><line nr="233" mi="5" ci="0" mb="0" cb="0"/><line nr="238" mi="4" ci="0" mb="0" cb="0"/><line nr="240" mi="12" ci="0" mb="2" cb="0"/><line nr="241" mi="8" ci="0" mb="4" cb="0"/><line nr="242" mi="1" ci="0" mb="0" cb="0"/><line nr="244" mi="7" ci="0" mb="0" cb="0"/><line nr="245" mi="1" ci="0" mb="0" cb="0"/><line nr="247" mi="2" ci="0" mb="0" cb="0"/><line nr="251" mi="6" ci="0" mb="2" cb="0"/><line nr="252" mi="8" ci="0" mb="0" cb="0"/><line nr="254" mi="5" ci="0" mb="0" cb="0"/><line nr="259" mi="4" ci="0" mb="0" cb="0"/><line nr="268" mi="12" ci="0" mb="2" cb="0"/><line nr="270" mi="7" ci="0" mb="0" cb="0"/><line nr="271" mi="1" ci="0" mb="0" cb="0"/><line nr="272" mi="2" ci="0" mb="0" cb="0"/><line nr="276" mi="6" ci="0" mb="2" cb="0"/><line nr="277" mi="8" ci="0" mb="0" cb="0"/><line nr="279" mi="5" ci="0" mb="0" cb="0"/><line nr="284" mi="5" ci="0" mb="2" cb="0"/><line nr="285" mi="5" ci="0" mb="0" cb="0"/><line nr="289" mi="8" ci="0" mb="4" cb="0"/><line nr="290" mi="12" ci="0" mb="2" cb="0"/><line nr="291" mi="5" ci="0" mb="0" cb="0"/><line nr="292" mi="1" ci="0" mb="0" cb="0"/><line nr="293" mi="12" ci="0" mb="2" cb="0"/><line nr="294" mi="5" ci="0" mb="0" cb="0"/><line nr="295" mi="1" ci="0" mb="0" cb="0"/><line nr="298" mi="4" ci="0" mb="0" cb="0"/><line nr="299" mi="4" ci="0" mb="0" cb="0"/><line nr="300" mi="4" ci="0" mb="0" cb="0"/><line nr="301" mi="1" ci="0" mb="0" cb="0"/><line nr="304" mi="2" ci="0" mb="2" cb="0"/><line nr="305" mi="5" ci="0" mb="0" cb="0"/><line nr="307" mi="7" ci="0" mb="2" cb="0"/><line nr="309" mi="8" ci="0" mb="4" cb="0"/><line nr="310" mi="5" ci="0" mb="0" cb="0"/><line nr="313" mi="10" ci="0" mb="0" cb="0"/><line nr="315" mi="5" ci="0" mb="0" cb="0"/><line nr="317" mi="1" ci="0" mb="0" cb="0"/><line nr="320" mi="2" ci="0" mb="2" cb="0"/><line nr="321" mi="5" ci="0" mb="0" cb="0"/><line nr="324" mi="7" ci="0" mb="2" cb="0"/><line nr="326" mi="8" ci="0" mb="4" cb="0"/><line nr="327" mi="5" ci="0" mb="0" cb="0"/><line nr="330" mi="10" ci="0" mb="0" cb="0"/><line nr="332" mi="5" ci="0" mb="0" cb="0"/><line nr="334" mi="1" ci="0" mb="0" cb="0"/><line nr="337" mi="7" ci="0" mb="0" cb="0"/><line nr="338" mi="2" ci="0" mb="2" cb="0"/><line nr="339" mi="5" ci="0" mb="0" cb="0"/><line nr="341" mi="3" ci="0" mb="0" cb="0"/><line nr="346" mi="4" ci="0" mb="0" cb="0"/><line nr="355" mi="12" ci="0" mb="2" cb="0"/><line nr="357" mi="7" ci="0" mb="2" cb="0"/><line nr="358" mi="7" ci="0" mb="0" cb="0"/><line nr="360" mi="1" ci="0" mb="0" cb="0"/><line nr="362" mi="2" ci="0" mb="0" cb="0"/><line nr="366" mi="6" ci="0" mb="2" cb="0"/><line nr="367" mi="8" ci="0" mb="0" cb="0"/><line nr="369" mi="5" ci="0" mb="0" cb="0"/><line nr="374" mi="6" ci="0" mb="2" cb="0"/><line nr="375" mi="7" ci="0" mb="0" cb="0"/><line nr="377" mi="5" ci="0" mb="0" cb="0"/><line nr="382" mi="4" ci="0" mb="0" cb="0"/><line nr="391" mi="12" ci="0" mb="2" cb="0"/><line nr="393" mi="7" ci="0" mb="2" cb="0"/><line nr="394" mi="7" ci="0" mb="0" cb="0"/><line nr="396" mi="1" ci="0" mb="0" cb="0"/><line nr="398" mi="2" ci="0" mb="0" cb="0"/><line nr="402" mi="6" ci="0" mb="2" cb="0"/><line nr="403" mi="9" ci="0" mb="0" cb="0"/><line nr="405" mi="5" ci="0" mb="0" cb="0"/><line nr="407" mi="1" ci="0" mb="0" cb="0"/><line nr="410" mi="12" ci="0" mb="2" cb="0"/><line nr="411" mi="13" ci="0" mb="4" cb="0"/><line nr="412" mi="2" ci="0" mb="0" cb="0"/><line nr="414" mi="1" ci="0" mb="0" cb="0"/><line nr="415" mi="2" ci="0" mb="0" cb="0"/><line nr="419" mi="6" ci="0" mb="2" cb="0"/><line nr="420" mi="9" ci="0" mb="0" cb="0"/><line nr="422" mi="5" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="904" covered="67"/><counter type="BRANCH" missed="119" covered="3"/><counter type="LINE" missed="182" covered="16"/><counter type="COMPLEXITY" missed="93" covered="4"/><counter type="METHOD" missed="33" covered="3"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="Comentario.java"><line nr="9" mi="0" ci="3" mb="0" cb="0"/><line nr="18" mi="0" ci="2" mb="0" cb="0"/><line nr="19" mi="0" ci="2" mb="0" cb="2"/><line nr="20" mi="0" ci="5" mb="0" cb="0"/><line nr="22" mi="0" ci="2" mb="0" cb="2"/><line nr="23" mi="0" ci="5" mb="0" cb="0"/><line nr="25" mi="0" ci="3" mb="0" cb="0"/><line nr="26" mi="0" ci="3" mb="0" cb="0"/><line nr="27" mi="0" ci="3" mb="0" cb="0"/><line nr="28" mi="0" ci="3" mb="0" cb="0"/><line nr="29" mi="0" ci="3" mb="0" cb="0"/><line nr="30" mi="0" ci="5" mb="0" cb="0"/><line nr="31" mi="0" ci="1" mb="0" cb="0"/><line nr="34" mi="0" ci="6" mb="0" cb="0"/><line nr="38" mi="0" ci="3" mb="0" cb="0"/><line nr="42" mi="0" ci="3" mb="0" cb="0"/><line nr="45" mi="0" ci="3" mb="0" cb="0"/><line nr="48" mi="0" ci="3" mb="0" cb="0"/><line nr="52" mi="0" ci="3" mb="0" cb="0"/><line nr="57" mi="0" ci="27" mb="0" cb="0"/><line nr="61" mi="0" ci="2" mb="0" cb="2"/><line nr="62" mi="0" ci="5" mb="0" cb="0"/><line nr="64" mi="0" ci="2" mb="0" cb="2"/><line nr="65" mi="0" ci="5" mb="0" cb="0"/><line nr="67" mi="0" ci="4" mb="0" cb="2"/><line nr="68" mi="0" ci="4" mb="0" cb="0"/><line nr="69" mi="0" ci="2" mb="0" cb="0"/><line nr="70" mi="0" ci="8" mb="0" cb="0"/><line nr="73" mi="0" ci="5" mb="0" cb="0"/><line nr="74" mi="0" ci="2" mb="0" cb="0"/><line nr="77" mi="0" ci="9" mb="0" cb="2"/><line nr="78" mi="0" ci="10" mb="0" cb="2"/><line nr="79" mi="0" ci="2" mb="0" cb="0"/><line nr="82" mi="0" ci="2" mb="0" cb="0"/><line nr="87" mi="0" ci="15" mb="0" cb="0"/><line nr="88" mi="0" ci="2" mb="0" cb="0"/><line nr="92" mi="0" ci="4" mb="0" cb="0"/><line nr="94" mi="0" ci="9" mb="0" cb="2"/><line nr="95" mi="0" ci="9" mb="0" cb="0"/><line nr="96" mi="0" ci="9" mb="0" cb="0"/><line nr="98" mi="0" ci="2" mb="0" cb="0"/><counter type="INSTRUCTION" missed="0" covered="200"/><counter type="BRANCH" missed="0" covered="16"/><counter type="LINE" missed="0" covered="41"/><counter type="COMPLEXITY" missed="0" covered="20"/><counter type="METHOD" missed="0" covered="12"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="Administrador.java"><line nr="5" mi="3" ci="0" mb="0" cb="0"/><line nr="8" mi="5" ci="0" mb="0" cb="0"/><line nr="9" mi="3" ci="0" mb="0" cb="0"/><line nr="10" mi="1" ci="0" mb="0" cb="0"/><line nr="13" mi="6" ci="0" mb="0" cb="0"/><line nr="17" mi="3" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="21" covered="0"/><counter type="LINE" missed="6" covered="0"/><counter type="COMPLEXITY" missed="4" covered="0"/><counter type="METHOD" missed="4" covered="0"/><counter type="CLASS" missed="1" covered="0"/></sourcefile><sourcefile name="Usuario.java"><line nr="21" mi="0" ci="5" mb="0" cb="0"/><line nr="23" mi="0" ci="2" mb="1" cb="1"/><line nr="24" mi="5" ci="0" mb="0" cb="0"/><line nr="26" mi="0" ci="2" mb="1" cb="1"/><line nr="27" mi="5" ci="0" mb="0" cb="0"/><line nr="29" mi="0" ci="3" mb="1" cb="1"/><line nr="30" mi="5" ci="0" mb="0" cb="0"/><line nr="33" mi="0" ci="3" mb="1" cb="1"/><line nr="34" mi="5" ci="0" mb="0" cb="0"/><line nr="37" mi="0" ci="3" mb="0" cb="0"/><line nr="38" mi="0" ci="3" mb="0" cb="0"/><line nr="39" mi="0" ci="3" mb="0" cb="0"/><line nr="40" mi="0" ci="3" mb="0" cb="0"/><line nr="41" mi="0" ci="3" mb="0" cb="0"/><line nr="42" mi="0" ci="12" mb="0" cb="0"/><line nr="43" mi="0" ci="5" mb="0" cb="0"/><line nr="44" mi="0" ci="5" mb="0" cb="0"/><line nr="45" mi="0" ci="1" mb="0" cb="0"/><line nr="48" mi="0" ci="3" mb="0" cb="0"/><line nr="52" mi="3" ci="0" mb="0" cb="0"/><line nr="56" mi="3" ci="0" mb="0" cb="0"/><line nr="60" mi="3" ci="0" mb="0" cb="0"/><line nr="64" mi="3" ci="0" mb="0" cb="0"/><line nr="68" mi="20" ci="0" mb="0" cb="0"/><line nr="72" mi="3" ci="0" mb="0" cb="0"/><line nr="73" mi="1" ci="0" mb="0" cb="0"/><line nr="76" mi="2" ci="0" mb="2" cb="0"/><line nr="77" mi="5" ci="0" mb="0" cb="0"/><line nr="79" mi="2" ci="0" mb="2" cb="0"/><line nr="80" mi="5" ci="0" mb="0" cb="0"/><line nr="83" mi="6" ci="0" mb="0" cb="0"/><line nr="84" mi="1" ci="0" mb="0" cb="0"/><line nr="87" mi="2" ci="0" mb="2" cb="0"/><line nr="88" mi="5" ci="0" mb="0" cb="0"/><line nr="90" mi="2" ci="0" mb="2" cb="0"/><line nr="91" mi="5" ci="0" mb="0" cb="0"/><line nr="94" mi="7" ci="0" mb="0" cb="0"/><line nr="95" mi="1" ci="0" mb="0" cb="0"/><line nr="98" mi="2" ci="0" mb="2" cb="0"/><line nr="99" mi="5" ci="0" mb="0" cb="0"/><line nr="102" mi="4" ci="0" mb="0" cb="0"/><line nr="103" mi="1" ci="0" mb="0" cb="0"/><line nr="106" mi="2" ci="0" mb="2" cb="0"/><line nr="107" mi="5" ci="0" mb="0" cb="0"/><line nr="109" mi="2" ci="0" mb="2" cb="0"/><line nr="110" mi="5" ci="0" mb="0" cb="0"/><line nr="113" mi="6" ci="0" mb="0" cb="0"/><line nr="114" mi="1" ci="0" mb="0" cb="0"/><line nr="117" mi="2" ci="0" mb="2" cb="0"/><line nr="118" mi="5" ci="0" mb="0" cb="0"/><line nr="120" mi="3" ci="0" mb="2" cb="0"/><line nr="121" mi="5" ci="0" mb="0" cb="0"/><line nr="124" mi="6" ci="0" mb="2" cb="0"/><line nr="125" mi="7" ci="0" mb="0" cb="0"/><line nr="127" mi="7" ci="0" mb="0" cb="0"/><line nr="130" mi="3" ci="0" mb="0" cb="0"/><line nr="131" mi="1" ci="0" mb="0" cb="0"/><line nr="135" mi="2" ci="0" mb="2" cb="0"/><line nr="136" mi="5" ci="0" mb="0" cb="0"/><line nr="139" mi="6" ci="0" mb="2" cb="0"/><line nr="140" mi="6" ci="0" mb="0" cb="0"/><line nr="141" mi="7" ci="0" mb="0" cb="0"/><line nr="143" mi="7" ci="0" mb="0" cb="0"/><line nr="144" mi="6" ci="0" mb="0" cb="0"/><line nr="146" mi="1" ci="0" mb="0" cb="0"/><line nr="149" mi="2" ci="0" mb="2" cb="0"/><line nr="150" mi="5" ci="0" mb="0" cb="0"/><line nr="153" mi="4" ci="0" mb="0" cb="0"/><line nr="154" mi="1" ci="0" mb="0" cb="0"/><line nr="157" mi="2" ci="0" mb="2" cb="0"/><line nr="158" mi="5" ci="0" mb="0" cb="0"/><line nr="161" mi="4" ci="0" mb="0" cb="0"/><line nr="162" mi="2" ci="0" mb="2" cb="0"/><line nr="163" mi="13" ci="0" mb="0" cb="0"/><line nr="165" mi="5" ci="0" mb="0" cb="0"/><line nr="166" mi="1" ci="0" mb="0" cb="0"/><line nr="169" mi="5" ci="0" mb="0" cb="0"/><line nr="173" mi="5" ci="0" mb="0" cb="0"/><line nr="178" mi="4" ci="0" mb="0" cb="0"/><line nr="180" mi="12" ci="0" mb="2" cb="0"/><line nr="182" mi="7" ci="0" mb="0" cb="0"/><line nr="183" mi="1" ci="0" mb="0" cb="0"/><line nr="184" mi="2" ci="0" mb="0" cb="0"/><line nr="189" mi="4" ci="0" mb="0" cb="0"/><line nr="191" mi="12" ci="0" mb="2" cb="0"/><line nr="193" mi="7" ci="0" mb="0" cb="0"/><line nr="194" mi="1" ci="0" mb="0" cb="0"/><line nr="195" mi="2" ci="0" mb="0" cb="0"/><line nr="199" mi="5" ci="0" mb="0" cb="0"/><line nr="203" mi="4" ci="0" mb="0" cb="0"/><line nr="207" mi="5" ci="0" mb="0" cb="0"/><line nr="211" mi="2" ci="0" mb="2" cb="0"/><line nr="212" mi="5" ci="0" mb="0" cb="0"/><line nr="214" mi="3" ci="0" mb="2" cb="0"/><line nr="215" mi="5" ci="0" mb="0" cb="0"/><line nr="217" mi="2" ci="0" mb="2" cb="0"/><line nr="218" mi="5" ci="0" mb="0" cb="0"/><line nr="221" mi="4" ci="0" mb="0" cb="0"/><line nr="222" mi="4" ci="0" mb="0" cb="0"/><line nr="223" mi="4" ci="0" mb="0" cb="0"/><line nr="224" mi="4" ci="0" mb="0" cb="0"/><line nr="225" mi="4" ci="0" mb="0" cb="0"/><line nr="227" mi="4" ci="0" mb="0" cb="0"/><line nr="228" mi="1" ci="0" mb="0" cb="0"/><line nr="231" mi="2" ci="0" mb="2" cb="0"/><line nr="232" mi="5" ci="0" mb="0" cb="0"/><line nr="235" mi="4" ci="0" mb="0" cb="0"/><line nr="236" mi="1" ci="0" mb="0" cb="0"/><line nr="239" mi="2" ci="0" mb="2" cb="0"/><line nr="240" mi="5" ci="0" mb="0" cb="0"/><line nr="242" mi="4" ci="0" mb="0" cb="0"/><line nr="243" mi="1" ci="0" mb="0" cb="0"/><line nr="246" mi="4" ci="0" mb="0" cb="0"/><line nr="251" mi="5" ci="0" mb="0" cb="0"/><line nr="256" mi="3" ci="0" mb="2" cb="0"/><line nr="257" mi="5" ci="0" mb="0" cb="0"/><line nr="260" mi="5" ci="0" mb="0" cb="0"/><line nr="264" mi="3" ci="0" mb="2" cb="0"/><line nr="265" mi="5" ci="0" mb="0" cb="0"/><line nr="268" mi="6" ci="0" mb="0" cb="0"/><line nr="272" mi="5" ci="0" mb="0" cb="0"/><line nr="276" mi="5" ci="0" mb="0" cb="0"/><line nr="280" mi="3" ci="0" mb="2" cb="0"/><line nr="281" mi="5" ci="0" mb="0" cb="0"/><line nr="284" mi="5" ci="0" mb="0" cb="0"/><line nr="289" mi="3" ci="0" mb="2" cb="0"/><line nr="290" mi="5" ci="0" mb="0" cb="0"/><line nr="292" mi="5" ci="0" mb="0" cb="0"/><line nr="293" mi="1" ci="0" mb="0" cb="0"/><line nr="296" mi="5" ci="0" mb="0" cb="0"/><line nr="297" mi="1" ci="0" mb="0" cb="0"/><line nr="300" mi="3" ci="0" mb="2" cb="0"/><line nr="301" mi="5" ci="0" mb="0" cb="0"/><line nr="303" mi="5" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="494" covered="56"/><counter type="BRANCH" missed="58" covered="4"/><counter type="LINE" missed="119" covered="15"/><counter type="COMPLEXITY" missed="65" covered="2"/><counter type="METHOD" missed="34" covered="2"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><counter type="INSTRUCTION" missed="2283" covered="486"/><counter type="BRANCH" missed="260" covered="40"/><counter type="LINE" missed="496" covered="119"/><counter type="COMPLEXITY" missed="262" covered="44"/><counter type="METHOD" missed="127" covered="29"/><counter type="CLASS" missed="3" covered="6"/></package><package name="Logica/Enumerados"><class name="Logica/Enumerados/Privacidad"><method name="values" desc="()[LLogica/Enumerados/Privacidad;" line="3"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="valueOf" desc="(Ljava/lang/String;)LLogica/Enumerados/Privacidad;" line="3"><counter type="INSTRUCTION" missed="5" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;init&gt;" desc="(Ljava/lang/String;I)V" line="3"><counter type="INSTRUCTION" missed="0" covered="5"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="&lt;clinit&gt;" desc="()V" line="3"><counter type="INSTRUCTION" missed="0" covered="24"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="9" covered="29"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="2" covered="2"/><counter type="METHOD" missed="2" covered="2"/><counter type="CLASS" missed="0" covered="1"/></class><class name="Logica/Enumerados/TipoValoracion"><method name="values" desc="()[LLogica/Enumerados/TipoValoracion;" line="3"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="valueOf" desc="(Ljava/lang/String;)LLogica/Enumerados/TipoValoracion;" line="3"><counter type="INSTRUCTION" missed="5" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;init&gt;" desc="(Ljava/lang/String;I)V" line="3"><counter type="INSTRUCTION" missed="0" covered="5"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="&lt;clinit&gt;" desc="()V" line="3"><counter type="INSTRUCTION" missed="0" covered="24"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="9" covered="29"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="2" covered="2"/><counter type="METHOD" missed="2" covered="2"/><counter type="CLASS" missed="0" covered="1"/></class><class name="Logica/Enumerados/TipoListaDeReproduccion"><method name="values" desc="()[LLogica/Enumerados/TipoListaDeReproduccion;" line="3"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="valueOf" desc="(Ljava/lang/String;)LLogica/Enumerados/TipoListaDeReproduccion;" line="3"><counter type="INSTRUCTION" missed="5" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;init&gt;" desc="(Ljava/lang/String;I)V" line="3"><counter type="INSTRUCTION" missed="0" covered="5"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="&lt;clinit&gt;" desc="()V" line="3"><counter type="INSTRUCTION" missed="0" covered="24"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="9" covered="29"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="2" covered="2"/><counter type="METHOD" missed="2" covered="2"/><counter type="CLASS" missed="0" covered="1"/></class><sourcefile name="Privacidad.java"><line nr="3" mi="9" ci="17" mb="0" cb="0"/><line nr="4" mi="0" ci="12" mb="0" cb="0"/><counter type="INSTRUCTION" missed="9" covered="29"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="2" covered="2"/><counter type="METHOD" missed="2" covered="2"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="TipoListaDeReproduccion.java"><line nr="3" mi="9" ci="17" mb="0" cb="0"/><line nr="4" mi="0" ci="12" mb="0" cb="0"/><counter type="INSTRUCTION" missed="9" covered="29"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="2" covered="2"/><counter type="METHOD" missed="2" covered="2"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="TipoValoracion.java"><line nr="3" mi="9" ci="17" mb="0" cb="0"/><line nr="4" mi="0" ci="12" mb="0" cb="0"/><counter type="INSTRUCTION" missed="9" covered="29"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="2" covered="2"/><counter type="METHOD" missed="2" covered="2"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><counter type="INSTRUCTION" missed="27" covered="87"/><counter type="LINE" missed="0" covered="6"/><counter type="COMPLEXITY" missed="6" covered="6"/><counter type="METHOD" missed="6" covered="6"/><counter type="CLASS" missed="0" covered="3"/></package><package name="Logica"><class name="Logica/main"><method name="&lt;init&gt;" desc="()V" line="8"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="main" desc="([Ljava/lang/String;)V" line="11"><counter type="INSTRUCTION" missed="35" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="38" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="2" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><sourcefile name="main.java"><line nr="8" mi="3" ci="0" mb="0" cb="0"/><line nr="11" mi="23" ci="0" mb="0" cb="0"/><line nr="12" mi="6" ci="0" mb="0" cb="0"/><line nr="14" mi="5" ci="0" mb="0" cb="0"/><line nr="16" mi="1" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="38" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="2" covered="0"/><counter type="CLASS" missed="1" covered="0"/></sourcefile><counter type="INSTRUCTION" missed="38" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="2" covered="0"/><counter type="CLASS" missed="1" covered="0"/></package><counter type="INSTRUCTION" missed="3693" covered="802"/><counter type="BRANCH" missed="426" covered="40"/><counter type="LINE" missed="825" covered="173"/><counter type="COMPLEXITY" missed="434" covered="73"/><counter type="METHOD" missed="216" covered="58"/><counter type="CLASS" missed="9" covered="13"/></report>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/.resources/branchfc.gif b/UyTube_aplicacion/.jacocoverage/report.html/.resources/branchfc.gif
new file mode 100644
index 0000000000000000000000000000000000000000..989b46d30469b56b014758f846ee6c5abfda16aa
Binary files /dev/null and b/UyTube_aplicacion/.jacocoverage/report.html/.resources/branchfc.gif differ
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/.resources/branchnc.gif b/UyTube_aplicacion/.jacocoverage/report.html/.resources/branchnc.gif
new file mode 100644
index 0000000000000000000000000000000000000000..1933e07c376bb71bdd9aac91cf858da3fcdb0f1c
Binary files /dev/null and b/UyTube_aplicacion/.jacocoverage/report.html/.resources/branchnc.gif differ
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/.resources/branchpc.gif b/UyTube_aplicacion/.jacocoverage/report.html/.resources/branchpc.gif
new file mode 100644
index 0000000000000000000000000000000000000000..cbf711b7030929b733f22f7a0cf3dbf61fe7868f
Binary files /dev/null and b/UyTube_aplicacion/.jacocoverage/report.html/.resources/branchpc.gif differ
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/.resources/bundle.gif b/UyTube_aplicacion/.jacocoverage/report.html/.resources/bundle.gif
new file mode 100644
index 0000000000000000000000000000000000000000..fca9c53e629a7a5c07186ac1e2a1e37d8d6e88f4
Binary files /dev/null and b/UyTube_aplicacion/.jacocoverage/report.html/.resources/bundle.gif differ
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/.resources/class.gif b/UyTube_aplicacion/.jacocoverage/report.html/.resources/class.gif
new file mode 100644
index 0000000000000000000000000000000000000000..eb348fb0d498d75976150047b1b5c2fefc9dc220
Binary files /dev/null and b/UyTube_aplicacion/.jacocoverage/report.html/.resources/class.gif differ
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/.resources/down.gif b/UyTube_aplicacion/.jacocoverage/report.html/.resources/down.gif
new file mode 100644
index 0000000000000000000000000000000000000000..440a14db74e76c2b6e854eacac1c44414b166271
Binary files /dev/null and b/UyTube_aplicacion/.jacocoverage/report.html/.resources/down.gif differ
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/.resources/greenbar.gif b/UyTube_aplicacion/.jacocoverage/report.html/.resources/greenbar.gif
new file mode 100644
index 0000000000000000000000000000000000000000..0ba65672530ee09f086821a26156836d0c91bd74
Binary files /dev/null and b/UyTube_aplicacion/.jacocoverage/report.html/.resources/greenbar.gif differ
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/.resources/group.gif b/UyTube_aplicacion/.jacocoverage/report.html/.resources/group.gif
new file mode 100644
index 0000000000000000000000000000000000000000..a4ea580d278fb727e4ae692838877fa63c4becf9
Binary files /dev/null and b/UyTube_aplicacion/.jacocoverage/report.html/.resources/group.gif differ
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/.resources/method.gif b/UyTube_aplicacion/.jacocoverage/report.html/.resources/method.gif
new file mode 100644
index 0000000000000000000000000000000000000000..7d24707ee82f54aa9fb10d1d9050013cbf161a7a
Binary files /dev/null and b/UyTube_aplicacion/.jacocoverage/report.html/.resources/method.gif differ
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/.resources/package.gif b/UyTube_aplicacion/.jacocoverage/report.html/.resources/package.gif
new file mode 100644
index 0000000000000000000000000000000000000000..131c28da405493661e3253ef79a68bd273039295
Binary files /dev/null and b/UyTube_aplicacion/.jacocoverage/report.html/.resources/package.gif differ
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/.resources/prettify.css b/UyTube_aplicacion/.jacocoverage/report.html/.resources/prettify.css
new file mode 100644
index 0000000000000000000000000000000000000000..be5166e0fc597d6448daef5476915f82081c07e1
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/.resources/prettify.css
@@ -0,0 +1,13 @@
+/* Pretty printing styles. Used with prettify.js. */
+
+.str { color: #2A00FF; }
+.kwd { color: #7F0055; font-weight:bold; }
+.com { color: #3F5FBF; }
+.typ { color: #606; }
+.lit { color: #066; }
+.pun { color: #660; }
+.pln { color: #000; }
+.tag { color: #008; }
+.atn { color: #606; }
+.atv { color: #080; }
+.dec { color: #606; }
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/.resources/prettify.js b/UyTube_aplicacion/.jacocoverage/report.html/.resources/prettify.js
new file mode 100644
index 0000000000000000000000000000000000000000..ab2788211d8a18ee54b26ce2d0eead4b77e03720
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/.resources/prettify.js
@@ -0,0 +1,1510 @@
+// Copyright (C) 2006 Google Inc.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+
+/**
+ * @fileoverview
+ * some functions for browser-side pretty printing of code contained in html.
+ * <p>
+ *
+ * For a fairly comprehensive set of languages see the
+ * <a href="http://google-code-prettify.googlecode.com/svn/trunk/README.html#langs">README</a>
+ * file that came with this source.  At a minimum, the lexer should work on a
+ * number of languages including C and friends, Java, Python, Bash, SQL, HTML,
+ * XML, CSS, Javascript, and Makefiles.  It works passably on Ruby, PHP and Awk
+ * and a subset of Perl, but, because of commenting conventions, doesn't work on
+ * Smalltalk, Lisp-like, or CAML-like languages without an explicit lang class.
+ * <p>
+ * Usage: <ol>
+ * <li> include this source file in an html page via
+ *   {@code <script type="text/javascript" src="/path/to/prettify.js"></script>}
+ * <li> define style rules.  See the example page for examples.
+ * <li> mark the {@code <pre>} and {@code <code>} tags in your source with
+ *    {@code class=prettyprint.}
+ *    You can also use the (html deprecated) {@code <xmp>} tag, but the pretty
+ *    printer needs to do more substantial DOM manipulations to support that, so
+ *    some css styles may not be preserved.
+ * </ol>
+ * That's it.  I wanted to keep the API as simple as possible, so there's no
+ * need to specify which language the code is in, but if you wish, you can add
+ * another class to the {@code <pre>} or {@code <code>} element to specify the
+ * language, as in {@code <pre class="prettyprint lang-java">}.  Any class that
+ * starts with "lang-" followed by a file extension, specifies the file type.
+ * See the "lang-*.js" files in this directory for code that implements
+ * per-language file handlers.
+ * <p>
+ * Change log:<br>
+ * cbeust, 2006/08/22
+ * <blockquote>
+ *   Java annotations (start with "@") are now captured as literals ("lit")
+ * </blockquote>
+ * @requires console
+ */
+
+// JSLint declarations
+/*global console, document, navigator, setTimeout, window */
+
+/**
+ * Split {@code prettyPrint} into multiple timeouts so as not to interfere with
+ * UI events.
+ * If set to {@code false}, {@code prettyPrint()} is synchronous.
+ */
+window['PR_SHOULD_USE_CONTINUATION'] = true;
+
+/** the number of characters between tab columns */
+window['PR_TAB_WIDTH'] = 8;
+
+/** Walks the DOM returning a properly escaped version of innerHTML.
+  * @param {Node} node
+  * @param {Array.<string>} out output buffer that receives chunks of HTML.
+  */
+window['PR_normalizedHtml']
+
+/** Contains functions for creating and registering new language handlers.
+  * @type {Object}
+  */
+  = window['PR']
+
+/** Pretty print a chunk of code.
+  *
+  * @param {string} sourceCodeHtml code as html
+  * @return {string} code as html, but prettier
+  */
+  = window['prettyPrintOne']
+/** Find all the {@code <pre>} and {@code <code>} tags in the DOM with
+  * {@code class=prettyprint} and prettify them.
+  * @param {Function?} opt_whenDone if specified, called when the last entry
+  *     has been finished.
+  */
+  = window['prettyPrint'] = void 0;
+
+/** browser detection. @extern @returns false if not IE, otherwise the major version. */
+window['_pr_isIE6'] = function () {
+  var ieVersion = navigator && navigator.userAgent &&
+      navigator.userAgent.match(/\bMSIE ([678])\./);
+  ieVersion = ieVersion ? +ieVersion[1] : false;
+  window['_pr_isIE6'] = function () { return ieVersion; };
+  return ieVersion;
+};
+
+
+(function () {
+  // Keyword lists for various languages.
+  var FLOW_CONTROL_KEYWORDS =
+      "break continue do else for if return while ";
+  var C_KEYWORDS = FLOW_CONTROL_KEYWORDS + "auto case char const default " +
+      "double enum extern float goto int long register short signed sizeof " +
+      "static struct switch typedef union unsigned void volatile ";
+  var COMMON_KEYWORDS = C_KEYWORDS + "catch class delete false import " +
+      "new operator private protected public this throw true try typeof ";
+  var CPP_KEYWORDS = COMMON_KEYWORDS + "alignof align_union asm axiom bool " +
+      "concept concept_map const_cast constexpr decltype " +
+      "dynamic_cast explicit export friend inline late_check " +
+      "mutable namespace nullptr reinterpret_cast static_assert static_cast " +
+      "template typeid typename using virtual wchar_t where ";
+  var JAVA_KEYWORDS = COMMON_KEYWORDS +
+      "abstract boolean byte extends final finally implements import " +
+      "instanceof null native package strictfp super synchronized throws " +
+      "transient ";
+  var CSHARP_KEYWORDS = JAVA_KEYWORDS +
+      "as base by checked decimal delegate descending event " +
+      "fixed foreach from group implicit in interface internal into is lock " +
+      "object out override orderby params partial readonly ref sbyte sealed " +
+      "stackalloc string select uint ulong unchecked unsafe ushort var ";
+  var JSCRIPT_KEYWORDS = COMMON_KEYWORDS +
+      "debugger eval export function get null set undefined var with " +
+      "Infinity NaN ";
+  var PERL_KEYWORDS = "caller delete die do dump elsif eval exit foreach for " +
+      "goto if import last local my next no our print package redo require " +
+      "sub undef unless until use wantarray while BEGIN END ";
+  var PYTHON_KEYWORDS = FLOW_CONTROL_KEYWORDS + "and as assert class def del " +
+      "elif except exec finally from global import in is lambda " +
+      "nonlocal not or pass print raise try with yield " +
+      "False True None ";
+  var RUBY_KEYWORDS = FLOW_CONTROL_KEYWORDS + "alias and begin case class def" +
+      " defined elsif end ensure false in module next nil not or redo rescue " +
+      "retry self super then true undef unless until when yield BEGIN END ";
+  var SH_KEYWORDS = FLOW_CONTROL_KEYWORDS + "case done elif esac eval fi " +
+      "function in local set then until ";
+  var ALL_KEYWORDS = (
+      CPP_KEYWORDS + CSHARP_KEYWORDS + JSCRIPT_KEYWORDS + PERL_KEYWORDS +
+      PYTHON_KEYWORDS + RUBY_KEYWORDS + SH_KEYWORDS);
+
+  // token style names.  correspond to css classes
+  /** token style for a string literal */
+  var PR_STRING = 'str';
+  /** token style for a keyword */
+  var PR_KEYWORD = 'kwd';
+  /** token style for a comment */
+  var PR_COMMENT = 'com';
+  /** token style for a type */
+  var PR_TYPE = 'typ';
+  /** token style for a literal value.  e.g. 1, null, true. */
+  var PR_LITERAL = 'lit';
+  /** token style for a punctuation string. */
+  var PR_PUNCTUATION = 'pun';
+  /** token style for a punctuation string. */
+  var PR_PLAIN = 'pln';
+
+  /** token style for an sgml tag. */
+  var PR_TAG = 'tag';
+  /** token style for a markup declaration such as a DOCTYPE. */
+  var PR_DECLARATION = 'dec';
+  /** token style for embedded source. */
+  var PR_SOURCE = 'src';
+  /** token style for an sgml attribute name. */
+  var PR_ATTRIB_NAME = 'atn';
+  /** token style for an sgml attribute value. */
+  var PR_ATTRIB_VALUE = 'atv';
+
+  /**
+   * A class that indicates a section of markup that is not code, e.g. to allow
+   * embedding of line numbers within code listings.
+   */
+  var PR_NOCODE = 'nocode';
+
+  /** A set of tokens that can precede a regular expression literal in
+    * javascript.
+    * http://www.mozilla.org/js/language/js20/rationale/syntax.html has the full
+    * list, but I've removed ones that might be problematic when seen in
+    * languages that don't support regular expression literals.
+    *
+    * <p>Specifically, I've removed any keywords that can't precede a regexp
+    * literal in a syntactically legal javascript program, and I've removed the
+    * "in" keyword since it's not a keyword in many languages, and might be used
+    * as a count of inches.
+    *
+    * <p>The link a above does not accurately describe EcmaScript rules since
+    * it fails to distinguish between (a=++/b/i) and (a++/b/i) but it works
+    * very well in practice.
+    *
+    * @private
+    */
+  var REGEXP_PRECEDER_PATTERN = function () {
+      var preceders = [
+          "!", "!=", "!==", "#", "%", "%=", "&", "&&", "&&=",
+          "&=", "(", "*", "*=", /* "+", */ "+=", ",", /* "-", */ "-=",
+          "->", /*".", "..", "...", handled below */ "/", "/=", ":", "::", ";",
+          "<", "<<", "<<=", "<=", "=", "==", "===", ">",
+          ">=", ">>", ">>=", ">>>", ">>>=", "?", "@", "[",
+          "^", "^=", "^^", "^^=", "{", "|", "|=", "||",
+          "||=", "~" /* handles =~ and !~ */,
+          "break", "case", "continue", "delete",
+          "do", "else", "finally", "instanceof",
+          "return", "throw", "try", "typeof"
+          ];
+      var pattern = '(?:^^|[+-]';
+      for (var i = 0; i < preceders.length; ++i) {
+        pattern += '|' + preceders[i].replace(/([^=<>:&a-z])/g, '\\$1');
+      }
+      pattern += ')\\s*';  // matches at end, and matches empty string
+      return pattern;
+      // CAVEAT: this does not properly handle the case where a regular
+      // expression immediately follows another since a regular expression may
+      // have flags for case-sensitivity and the like.  Having regexp tokens
+      // adjacent is not valid in any language I'm aware of, so I'm punting.
+      // TODO: maybe style special characters inside a regexp as punctuation.
+    }();
+
+  // Define regexps here so that the interpreter doesn't have to create an
+  // object each time the function containing them is called.
+  // The language spec requires a new object created even if you don't access
+  // the $1 members.
+  var pr_amp = /&/g;
+  var pr_lt = /</g;
+  var pr_gt = />/g;
+  var pr_quot = /\"/g;
+  /** like textToHtml but escapes double quotes to be attribute safe. */
+  function attribToHtml(str) {
+    return str.replace(pr_amp, '&amp;')
+        .replace(pr_lt, '&lt;')
+        .replace(pr_gt, '&gt;')
+        .replace(pr_quot, '&quot;');
+  }
+
+  /** escapest html special characters to html. */
+  function textToHtml(str) {
+    return str.replace(pr_amp, '&amp;')
+        .replace(pr_lt, '&lt;')
+        .replace(pr_gt, '&gt;');
+  }
+
+
+  var pr_ltEnt = /&lt;/g;
+  var pr_gtEnt = /&gt;/g;
+  var pr_aposEnt = /&apos;/g;
+  var pr_quotEnt = /&quot;/g;
+  var pr_ampEnt = /&amp;/g;
+  var pr_nbspEnt = /&nbsp;/g;
+  /** unescapes html to plain text. */
+  function htmlToText(html) {
+    var pos = html.indexOf('&');
+    if (pos < 0) { return html; }
+    // Handle numeric entities specially.  We can't use functional substitution
+    // since that doesn't work in older versions of Safari.
+    // These should be rare since most browsers convert them to normal chars.
+    for (--pos; (pos = html.indexOf('&#', pos + 1)) >= 0;) {
+      var end = html.indexOf(';', pos);
+      if (end >= 0) {
+        var num = html.substring(pos + 3, end);
+        var radix = 10;
+        if (num && num.charAt(0) === 'x') {
+          num = num.substring(1);
+          radix = 16;
+        }
+        var codePoint = parseInt(num, radix);
+        if (!isNaN(codePoint)) {
+          html = (html.substring(0, pos) + String.fromCharCode(codePoint) +
+                  html.substring(end + 1));
+        }
+      }
+    }
+
+    return html.replace(pr_ltEnt, '<')
+        .replace(pr_gtEnt, '>')
+        .replace(pr_aposEnt, "'")
+        .replace(pr_quotEnt, '"')
+        .replace(pr_nbspEnt, ' ')
+        .replace(pr_ampEnt, '&');
+  }
+
+  /** is the given node's innerHTML normally unescaped? */
+  function isRawContent(node) {
+    return 'XMP' === node.tagName;
+  }
+
+  var newlineRe = /[\r\n]/g;
+  /**
+   * Are newlines and adjacent spaces significant in the given node's innerHTML?
+   */
+  function isPreformatted(node, content) {
+    // PRE means preformatted, and is a very common case, so don't create
+    // unnecessary computed style objects.
+    if ('PRE' === node.tagName) { return true; }
+    if (!newlineRe.test(content)) { return true; }  // Don't care
+    var whitespace = '';
+    // For disconnected nodes, IE has no currentStyle.
+    if (node.currentStyle) {
+      whitespace = node.currentStyle.whiteSpace;
+    } else if (window.getComputedStyle) {
+      // Firefox makes a best guess if node is disconnected whereas Safari
+      // returns the empty string.
+      whitespace = window.getComputedStyle(node, null).whiteSpace;
+    }
+    return !whitespace || whitespace === 'pre';
+  }
+
+  function normalizedHtml(node, out, opt_sortAttrs) {
+    switch (node.nodeType) {
+      case 1:  // an element
+        var name = node.tagName.toLowerCase();
+
+        out.push('<', name);
+        var attrs = node.attributes;
+        var n = attrs.length;
+        if (n) {
+          if (opt_sortAttrs) {
+            var sortedAttrs = [];
+            for (var i = n; --i >= 0;) { sortedAttrs[i] = attrs[i]; }
+            sortedAttrs.sort(function (a, b) {
+                return (a.name < b.name) ? -1 : a.name === b.name ? 0 : 1;
+              });
+            attrs = sortedAttrs;
+          }
+          for (var i = 0; i < n; ++i) {
+            var attr = attrs[i];
+            if (!attr.specified) { continue; }
+            out.push(' ', attr.name.toLowerCase(),
+                     '="', attribToHtml(attr.value), '"');
+          }
+        }
+        out.push('>');
+        for (var child = node.firstChild; child; child = child.nextSibling) {
+          normalizedHtml(child, out, opt_sortAttrs);
+        }
+        if (node.firstChild || !/^(?:br|link|img)$/.test(name)) {
+          out.push('<\/', name, '>');
+        }
+        break;
+      case 3: case 4: // text
+        out.push(textToHtml(node.nodeValue));
+        break;
+    }
+  }
+
+  /**
+   * Given a group of {@link RegExp}s, returns a {@code RegExp} that globally
+   * matches the union o the sets o strings matched d by the input RegExp.
+   * Since it matches globally, if the input strings have a start-of-input
+   * anchor (/^.../), it is ignored for the purposes of unioning.
+   * @param {Array.<RegExp>} regexs non multiline, non-global regexs.
+   * @return {RegExp} a global regex.
+   */
+  function combinePrefixPatterns(regexs) {
+    var capturedGroupIndex = 0;
+
+    var needToFoldCase = false;
+    var ignoreCase = false;
+    for (var i = 0, n = regexs.length; i < n; ++i) {
+      var regex = regexs[i];
+      if (regex.ignoreCase) {
+        ignoreCase = true;
+      } else if (/[a-z]/i.test(regex.source.replace(
+                     /\\u[0-9a-f]{4}|\\x[0-9a-f]{2}|\\[^ux]/gi, ''))) {
+        needToFoldCase = true;
+        ignoreCase = false;
+        break;
+      }
+    }
+
+    function decodeEscape(charsetPart) {
+      if (charsetPart.charAt(0) !== '\\') { return charsetPart.charCodeAt(0); }
+      switch (charsetPart.charAt(1)) {
+        case 'b': return 8;
+        case 't': return 9;
+        case 'n': return 0xa;
+        case 'v': return 0xb;
+        case 'f': return 0xc;
+        case 'r': return 0xd;
+        case 'u': case 'x':
+          return parseInt(charsetPart.substring(2), 16)
+              || charsetPart.charCodeAt(1);
+        case '0': case '1': case '2': case '3': case '4':
+        case '5': case '6': case '7':
+          return parseInt(charsetPart.substring(1), 8);
+        default: return charsetPart.charCodeAt(1);
+      }
+    }
+
+    function encodeEscape(charCode) {
+      if (charCode < 0x20) {
+        return (charCode < 0x10 ? '\\x0' : '\\x') + charCode.toString(16);
+      }
+      var ch = String.fromCharCode(charCode);
+      if (ch === '\\' || ch === '-' || ch === '[' || ch === ']') {
+        ch = '\\' + ch;
+      }
+      return ch;
+    }
+
+    function caseFoldCharset(charSet) {
+      var charsetParts = charSet.substring(1, charSet.length - 1).match(
+          new RegExp(
+              '\\\\u[0-9A-Fa-f]{4}'
+              + '|\\\\x[0-9A-Fa-f]{2}'
+              + '|\\\\[0-3][0-7]{0,2}'
+              + '|\\\\[0-7]{1,2}'
+              + '|\\\\[\\s\\S]'
+              + '|-'
+              + '|[^-\\\\]',
+              'g'));
+      var groups = [];
+      var ranges = [];
+      var inverse = charsetParts[0] === '^';
+      for (var i = inverse ? 1 : 0, n = charsetParts.length; i < n; ++i) {
+        var p = charsetParts[i];
+        switch (p) {
+          case '\\B': case '\\b':
+          case '\\D': case '\\d':
+          case '\\S': case '\\s':
+          case '\\W': case '\\w':
+            groups.push(p);
+            continue;
+        }
+        var start = decodeEscape(p);
+        var end;
+        if (i + 2 < n && '-' === charsetParts[i + 1]) {
+          end = decodeEscape(charsetParts[i + 2]);
+          i += 2;
+        } else {
+          end = start;
+        }
+        ranges.push([start, end]);
+        // If the range might intersect letters, then expand it.
+        if (!(end < 65 || start > 122)) {
+          if (!(end < 65 || start > 90)) {
+            ranges.push([Math.max(65, start) | 32, Math.min(end, 90) | 32]);
+          }
+          if (!(end < 97 || start > 122)) {
+            ranges.push([Math.max(97, start) & ~32, Math.min(end, 122) & ~32]);
+          }
+        }
+      }
+
+      // [[1, 10], [3, 4], [8, 12], [14, 14], [16, 16], [17, 17]]
+      // -> [[1, 12], [14, 14], [16, 17]]
+      ranges.sort(function (a, b) { return (a[0] - b[0]) || (b[1]  - a[1]); });
+      var consolidatedRanges = [];
+      var lastRange = [NaN, NaN];
+      for (var i = 0; i < ranges.length; ++i) {
+        var range = ranges[i];
+        if (range[0] <= lastRange[1] + 1) {
+          lastRange[1] = Math.max(lastRange[1], range[1]);
+        } else {
+          consolidatedRanges.push(lastRange = range);
+        }
+      }
+
+      var out = ['['];
+      if (inverse) { out.push('^'); }
+      out.push.apply(out, groups);
+      for (var i = 0; i < consolidatedRanges.length; ++i) {
+        var range = consolidatedRanges[i];
+        out.push(encodeEscape(range[0]));
+        if (range[1] > range[0]) {
+          if (range[1] + 1 > range[0]) { out.push('-'); }
+          out.push(encodeEscape(range[1]));
+        }
+      }
+      out.push(']');
+      return out.join('');
+    }
+
+    function allowAnywhereFoldCaseAndRenumberGroups(regex) {
+      // Split into character sets, escape sequences, punctuation strings
+      // like ('(', '(?:', ')', '^'), and runs of characters that do not
+      // include any of the above.
+      var parts = regex.source.match(
+          new RegExp(
+              '(?:'
+              + '\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]'  // a character set
+              + '|\\\\u[A-Fa-f0-9]{4}'  // a unicode escape
+              + '|\\\\x[A-Fa-f0-9]{2}'  // a hex escape
+              + '|\\\\[0-9]+'  // a back-reference or octal escape
+              + '|\\\\[^ux0-9]'  // other escape sequence
+              + '|\\(\\?[:!=]'  // start of a non-capturing group
+              + '|[\\(\\)\\^]'  // start/emd of a group, or line start
+              + '|[^\\x5B\\x5C\\(\\)\\^]+'  // run of other characters
+              + ')',
+              'g'));
+      var n = parts.length;
+
+      // Maps captured group numbers to the number they will occupy in
+      // the output or to -1 if that has not been determined, or to
+      // undefined if they need not be capturing in the output.
+      var capturedGroups = [];
+
+      // Walk over and identify back references to build the capturedGroups
+      // mapping.
+      for (var i = 0, groupIndex = 0; i < n; ++i) {
+        var p = parts[i];
+        if (p === '(') {
+          // groups are 1-indexed, so max group index is count of '('
+          ++groupIndex;
+        } else if ('\\' === p.charAt(0)) {
+          var decimalValue = +p.substring(1);
+          if (decimalValue && decimalValue <= groupIndex) {
+            capturedGroups[decimalValue] = -1;
+          }
+        }
+      }
+
+      // Renumber groups and reduce capturing groups to non-capturing groups
+      // where possible.
+      for (var i = 1; i < capturedGroups.length; ++i) {
+        if (-1 === capturedGroups[i]) {
+          capturedGroups[i] = ++capturedGroupIndex;
+        }
+      }
+      for (var i = 0, groupIndex = 0; i < n; ++i) {
+        var p = parts[i];
+        if (p === '(') {
+          ++groupIndex;
+          if (capturedGroups[groupIndex] === undefined) {
+            parts[i] = '(?:';
+          }
+        } else if ('\\' === p.charAt(0)) {
+          var decimalValue = +p.substring(1);
+          if (decimalValue && decimalValue <= groupIndex) {
+            parts[i] = '\\' + capturedGroups[groupIndex];
+          }
+        }
+      }
+
+      // Remove any prefix anchors so that the output will match anywhere.
+      // ^^ really does mean an anchored match though.
+      for (var i = 0, groupIndex = 0; i < n; ++i) {
+        if ('^' === parts[i] && '^' !== parts[i + 1]) { parts[i] = ''; }
+      }
+
+      // Expand letters to groupts to handle mixing of case-sensitive and
+      // case-insensitive patterns if necessary.
+      if (regex.ignoreCase && needToFoldCase) {
+        for (var i = 0; i < n; ++i) {
+          var p = parts[i];
+          var ch0 = p.charAt(0);
+          if (p.length >= 2 && ch0 === '[') {
+            parts[i] = caseFoldCharset(p);
+          } else if (ch0 !== '\\') {
+            // TODO: handle letters in numeric escapes.
+            parts[i] = p.replace(
+                /[a-zA-Z]/g,
+                function (ch) {
+                  var cc = ch.charCodeAt(0);
+                  return '[' + String.fromCharCode(cc & ~32, cc | 32) + ']';
+                });
+          }
+        }
+      }
+
+      return parts.join('');
+    }
+
+    var rewritten = [];
+    for (var i = 0, n = regexs.length; i < n; ++i) {
+      var regex = regexs[i];
+      if (regex.global || regex.multiline) { throw new Error('' + regex); }
+      rewritten.push(
+          '(?:' + allowAnywhereFoldCaseAndRenumberGroups(regex) + ')');
+    }
+
+    return new RegExp(rewritten.join('|'), ignoreCase ? 'gi' : 'g');
+  }
+
+  var PR_innerHtmlWorks = null;
+  function getInnerHtml(node) {
+    // inner html is hopelessly broken in Safari 2.0.4 when the content is
+    // an html description of well formed XML and the containing tag is a PRE
+    // tag, so we detect that case and emulate innerHTML.
+    if (null === PR_innerHtmlWorks) {
+      var testNode = document.createElement('PRE');
+      testNode.appendChild(
+          document.createTextNode('<!DOCTYPE foo PUBLIC "foo bar">\n<foo />'));
+      PR_innerHtmlWorks = !/</.test(testNode.innerHTML);
+    }
+
+    if (PR_innerHtmlWorks) {
+      var content = node.innerHTML;
+      // XMP tags contain unescaped entities so require special handling.
+      if (isRawContent(node)) {
+        content = textToHtml(content);
+      } else if (!isPreformatted(node, content)) {
+        content = content.replace(/(<br\s*\/?>)[\r\n]+/g, '$1')
+            .replace(/(?:[\r\n]+[ \t]*)+/g, ' ');
+      }
+      return content;
+    }
+
+    var out = [];
+    for (var child = node.firstChild; child; child = child.nextSibling) {
+      normalizedHtml(child, out);
+    }
+    return out.join('');
+  }
+
+  /** returns a function that expand tabs to spaces.  This function can be fed
+    * successive chunks of text, and will maintain its own internal state to
+    * keep track of how tabs are expanded.
+    * @return {function (string) : string} a function that takes
+    *   plain text and return the text with tabs expanded.
+    * @private
+    */
+  function makeTabExpander(tabWidth) {
+    var SPACES = '                ';
+    var charInLine = 0;
+
+    return function (plainText) {
+      // walk over each character looking for tabs and newlines.
+      // On tabs, expand them.  On newlines, reset charInLine.
+      // Otherwise increment charInLine
+      var out = null;
+      var pos = 0;
+      for (var i = 0, n = plainText.length; i < n; ++i) {
+        var ch = plainText.charAt(i);
+
+        switch (ch) {
+          case '\t':
+            if (!out) { out = []; }
+            out.push(plainText.substring(pos, i));
+            // calculate how much space we need in front of this part
+            // nSpaces is the amount of padding -- the number of spaces needed
+            // to move us to the next column, where columns occur at factors of
+            // tabWidth.
+            var nSpaces = tabWidth - (charInLine % tabWidth);
+            charInLine += nSpaces;
+            for (; nSpaces >= 0; nSpaces -= SPACES.length) {
+              out.push(SPACES.substring(0, nSpaces));
+            }
+            pos = i + 1;
+            break;
+          case '\n':
+            charInLine = 0;
+            break;
+          default:
+            ++charInLine;
+        }
+      }
+      if (!out) { return plainText; }
+      out.push(plainText.substring(pos));
+      return out.join('');
+    };
+  }
+
+  var pr_chunkPattern = new RegExp(
+      '[^<]+'  // A run of characters other than '<'
+      + '|<\!--[\\s\\S]*?--\>'  // an HTML comment
+      + '|<!\\[CDATA\\[[\\s\\S]*?\\]\\]>'  // a CDATA section
+      // a probable tag that should not be highlighted
+      + '|<\/?[a-zA-Z](?:[^>\"\']|\'[^\']*\'|\"[^\"]*\")*>'
+      + '|<',  // A '<' that does not begin a larger chunk
+      'g');
+  var pr_commentPrefix = /^<\!--/;
+  var pr_cdataPrefix = /^<!\[CDATA\[/;
+  var pr_brPrefix = /^<br\b/i;
+  var pr_tagNameRe = /^<(\/?)([a-zA-Z][a-zA-Z0-9]*)/;
+
+  /** split markup into chunks of html tags (style null) and
+    * plain text (style {@link #PR_PLAIN}), converting tags which are
+    * significant for tokenization (<br>) into their textual equivalent.
+    *
+    * @param {string} s html where whitespace is considered significant.
+    * @return {Object} source code and extracted tags.
+    * @private
+    */
+  function extractTags(s) {
+    // since the pattern has the 'g' modifier and defines no capturing groups,
+    // this will return a list of all chunks which we then classify and wrap as
+    // PR_Tokens
+    var matches = s.match(pr_chunkPattern);
+    var sourceBuf = [];
+    var sourceBufLen = 0;
+    var extractedTags = [];
+    if (matches) {
+      for (var i = 0, n = matches.length; i < n; ++i) {
+        var match = matches[i];
+        if (match.length > 1 && match.charAt(0) === '<') {
+          if (pr_commentPrefix.test(match)) { continue; }
+          if (pr_cdataPrefix.test(match)) {
+            // strip CDATA prefix and suffix.  Don't unescape since it's CDATA
+            sourceBuf.push(match.substring(9, match.length - 3));
+            sourceBufLen += match.length - 12;
+          } else if (pr_brPrefix.test(match)) {
+            // <br> tags are lexically significant so convert them to text.
+            // This is undone later.
+            sourceBuf.push('\n');
+            ++sourceBufLen;
+          } else {
+            if (match.indexOf(PR_NOCODE) >= 0 && isNoCodeTag(match)) {
+              // A <span class="nocode"> will start a section that should be
+              // ignored.  Continue walking the list until we see a matching end
+              // tag.
+              var name = match.match(pr_tagNameRe)[2];
+              var depth = 1;
+              var j;
+              end_tag_loop:
+              for (j = i + 1; j < n; ++j) {
+                var name2 = matches[j].match(pr_tagNameRe);
+                if (name2 && name2[2] === name) {
+                  if (name2[1] === '/') {
+                    if (--depth === 0) { break end_tag_loop; }
+                  } else {
+                    ++depth;
+                  }
+                }
+              }
+              if (j < n) {
+                extractedTags.push(
+                    sourceBufLen, matches.slice(i, j + 1).join(''));
+                i = j;
+              } else {  // Ignore unclosed sections.
+                extractedTags.push(sourceBufLen, match);
+              }
+            } else {
+              extractedTags.push(sourceBufLen, match);
+            }
+          }
+        } else {
+          var literalText = htmlToText(match);
+          sourceBuf.push(literalText);
+          sourceBufLen += literalText.length;
+        }
+      }
+    }
+    return { source: sourceBuf.join(''), tags: extractedTags };
+  }
+
+  /** True if the given tag contains a class attribute with the nocode class. */
+  function isNoCodeTag(tag) {
+    return !!tag
+        // First canonicalize the representation of attributes
+        .replace(/\s(\w+)\s*=\s*(?:\"([^\"]*)\"|'([^\']*)'|(\S+))/g,
+                 ' $1="$2$3$4"')
+        // Then look for the attribute we want.
+        .match(/[cC][lL][aA][sS][sS]=\"[^\"]*\bnocode\b/);
+  }
+
+  /**
+   * Apply the given language handler to sourceCode and add the resulting
+   * decorations to out.
+   * @param {number} basePos the index of sourceCode within the chunk of source
+   *    whose decorations are already present on out.
+   */
+  function appendDecorations(basePos, sourceCode, langHandler, out) {
+    if (!sourceCode) { return; }
+    var job = {
+      source: sourceCode,
+      basePos: basePos
+    };
+    langHandler(job);
+    out.push.apply(out, job.decorations);
+  }
+
+  /** Given triples of [style, pattern, context] returns a lexing function,
+    * The lexing function interprets the patterns to find token boundaries and
+    * returns a decoration list of the form
+    * [index_0, style_0, index_1, style_1, ..., index_n, style_n]
+    * where index_n is an index into the sourceCode, and style_n is a style
+    * constant like PR_PLAIN.  index_n-1 <= index_n, and style_n-1 applies to
+    * all characters in sourceCode[index_n-1:index_n].
+    *
+    * The stylePatterns is a list whose elements have the form
+    * [style : string, pattern : RegExp, DEPRECATED, shortcut : string].
+    *
+    * Style is a style constant like PR_PLAIN, or can be a string of the
+    * form 'lang-FOO', where FOO is a language extension describing the
+    * language of the portion of the token in $1 after pattern executes.
+    * E.g., if style is 'lang-lisp', and group 1 contains the text
+    * '(hello (world))', then that portion of the token will be passed to the
+    * registered lisp handler for formatting.
+    * The text before and after group 1 will be restyled using this decorator
+    * so decorators should take care that this doesn't result in infinite
+    * recursion.  For example, the HTML lexer rule for SCRIPT elements looks
+    * something like ['lang-js', /<[s]cript>(.+?)<\/script>/].  This may match
+    * '<script>foo()<\/script>', which would cause the current decorator to
+    * be called with '<script>' which would not match the same rule since
+    * group 1 must not be empty, so it would be instead styled as PR_TAG by
+    * the generic tag rule.  The handler registered for the 'js' extension would
+    * then be called with 'foo()', and finally, the current decorator would
+    * be called with '<\/script>' which would not match the original rule and
+    * so the generic tag rule would identify it as a tag.
+    *
+    * Pattern must only match prefixes, and if it matches a prefix, then that
+    * match is considered a token with the same style.
+    *
+    * Context is applied to the last non-whitespace, non-comment token
+    * recognized.
+    *
+    * Shortcut is an optional string of characters, any of which, if the first
+    * character, gurantee that this pattern and only this pattern matches.
+    *
+    * @param {Array} shortcutStylePatterns patterns that always start with
+    *   a known character.  Must have a shortcut string.
+    * @param {Array} fallthroughStylePatterns patterns that will be tried in
+    *   order if the shortcut ones fail.  May have shortcuts.
+    *
+    * @return {function (Object)} a
+    *   function that takes source code and returns a list of decorations.
+    */
+  function createSimpleLexer(shortcutStylePatterns, fallthroughStylePatterns) {
+    var shortcuts = {};
+    var tokenizer;
+    (function () {
+      var allPatterns = shortcutStylePatterns.concat(fallthroughStylePatterns);
+      var allRegexs = [];
+      var regexKeys = {};
+      for (var i = 0, n = allPatterns.length; i < n; ++i) {
+        var patternParts = allPatterns[i];
+        var shortcutChars = patternParts[3];
+        if (shortcutChars) {
+          for (var c = shortcutChars.length; --c >= 0;) {
+            shortcuts[shortcutChars.charAt(c)] = patternParts;
+          }
+        }
+        var regex = patternParts[1];
+        var k = '' + regex;
+        if (!regexKeys.hasOwnProperty(k)) {
+          allRegexs.push(regex);
+          regexKeys[k] = null;
+        }
+      }
+      allRegexs.push(/[\0-\uffff]/);
+      tokenizer = combinePrefixPatterns(allRegexs);
+    })();
+
+    var nPatterns = fallthroughStylePatterns.length;
+    var notWs = /\S/;
+
+    /**
+     * Lexes job.source and produces an output array job.decorations of style
+     * classes preceded by the position at which they start in job.source in
+     * order.
+     *
+     * @param {Object} job an object like {@code
+     *    source: {string} sourceText plain text,
+     *    basePos: {int} position of job.source in the larger chunk of
+     *        sourceCode.
+     * }
+     */
+    var decorate = function (job) {
+      var sourceCode = job.source, basePos = job.basePos;
+      /** Even entries are positions in source in ascending order.  Odd enties
+        * are style markers (e.g., PR_COMMENT) that run from that position until
+        * the end.
+        * @type {Array.<number|string>}
+        */
+      var decorations = [basePos, PR_PLAIN];
+      var pos = 0;  // index into sourceCode
+      var tokens = sourceCode.match(tokenizer) || [];
+      var styleCache = {};
+
+      for (var ti = 0, nTokens = tokens.length; ti < nTokens; ++ti) {
+        var token = tokens[ti];
+        var style = styleCache[token];
+        var match = void 0;
+
+        var isEmbedded;
+        if (typeof style === 'string') {
+          isEmbedded = false;
+        } else {
+          var patternParts = shortcuts[token.charAt(0)];
+          if (patternParts) {
+            match = token.match(patternParts[1]);
+            style = patternParts[0];
+          } else {
+            for (var i = 0; i < nPatterns; ++i) {
+              patternParts = fallthroughStylePatterns[i];
+              match = token.match(patternParts[1]);
+              if (match) {
+                style = patternParts[0];
+                break;
+              }
+            }
+
+            if (!match) {  // make sure that we make progress
+              style = PR_PLAIN;
+            }
+          }
+
+          isEmbedded = style.length >= 5 && 'lang-' === style.substring(0, 5);
+          if (isEmbedded && !(match && typeof match[1] === 'string')) {
+            isEmbedded = false;
+            style = PR_SOURCE;
+          }
+
+          if (!isEmbedded) { styleCache[token] = style; }
+        }
+
+        var tokenStart = pos;
+        pos += token.length;
+
+        if (!isEmbedded) {
+          decorations.push(basePos + tokenStart, style);
+        } else {  // Treat group 1 as an embedded block of source code.
+          var embeddedSource = match[1];
+          var embeddedSourceStart = token.indexOf(embeddedSource);
+          var embeddedSourceEnd = embeddedSourceStart + embeddedSource.length;
+          if (match[2]) {
+            // If embeddedSource can be blank, then it would match at the
+            // beginning which would cause us to infinitely recurse on the
+            // entire token, so we catch the right context in match[2].
+            embeddedSourceEnd = token.length - match[2].length;
+            embeddedSourceStart = embeddedSourceEnd - embeddedSource.length;
+          }
+          var lang = style.substring(5);
+          // Decorate the left of the embedded source
+          appendDecorations(
+              basePos + tokenStart,
+              token.substring(0, embeddedSourceStart),
+              decorate, decorations);
+          // Decorate the embedded source
+          appendDecorations(
+              basePos + tokenStart + embeddedSourceStart,
+              embeddedSource,
+              langHandlerForExtension(lang, embeddedSource),
+              decorations);
+          // Decorate the right of the embedded section
+          appendDecorations(
+              basePos + tokenStart + embeddedSourceEnd,
+              token.substring(embeddedSourceEnd),
+              decorate, decorations);
+        }
+      }
+      job.decorations = decorations;
+    };
+    return decorate;
+  }
+
+  /** returns a function that produces a list of decorations from source text.
+    *
+    * This code treats ", ', and ` as string delimiters, and \ as a string
+    * escape.  It does not recognize perl's qq() style strings.
+    * It has no special handling for double delimiter escapes as in basic, or
+    * the tripled delimiters used in python, but should work on those regardless
+    * although in those cases a single string literal may be broken up into
+    * multiple adjacent string literals.
+    *
+    * It recognizes C, C++, and shell style comments.
+    *
+    * @param {Object} options a set of optional parameters.
+    * @return {function (Object)} a function that examines the source code
+    *     in the input job and builds the decoration list.
+    */
+  function sourceDecorator(options) {
+    var shortcutStylePatterns = [], fallthroughStylePatterns = [];
+    if (options['tripleQuotedStrings']) {
+      // '''multi-line-string''', 'single-line-string', and double-quoted
+      shortcutStylePatterns.push(
+          [PR_STRING,  /^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,
+           null, '\'"']);
+    } else if (options['multiLineStrings']) {
+      // 'multi-line-string', "multi-line-string"
+      shortcutStylePatterns.push(
+          [PR_STRING,  /^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,
+           null, '\'"`']);
+    } else {
+      // 'single-line-string', "single-line-string"
+      shortcutStylePatterns.push(
+          [PR_STRING,
+           /^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,
+           null, '"\'']);
+    }
+    if (options['verbatimStrings']) {
+      // verbatim-string-literal production from the C# grammar.  See issue 93.
+      fallthroughStylePatterns.push(
+          [PR_STRING, /^@\"(?:[^\"]|\"\")*(?:\"|$)/, null]);
+    }
+    if (options['hashComments']) {
+      if (options['cStyleComments']) {
+        // Stop C preprocessor declarations at an unclosed open comment
+        shortcutStylePatterns.push(
+            [PR_COMMENT, /^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\r\n]*)/,
+             null, '#']);
+        fallthroughStylePatterns.push(
+            [PR_STRING,
+             /^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,
+             null]);
+      } else {
+        shortcutStylePatterns.push([PR_COMMENT, /^#[^\r\n]*/, null, '#']);
+      }
+    }
+    if (options['cStyleComments']) {
+      fallthroughStylePatterns.push([PR_COMMENT, /^\/\/[^\r\n]*/, null]);
+      fallthroughStylePatterns.push(
+          [PR_COMMENT, /^\/\*[\s\S]*?(?:\*\/|$)/, null]);
+    }
+    if (options['regexLiterals']) {
+      var REGEX_LITERAL = (
+          // A regular expression literal starts with a slash that is
+          // not followed by * or / so that it is not confused with
+          // comments.
+          '/(?=[^/*])'
+          // and then contains any number of raw characters,
+          + '(?:[^/\\x5B\\x5C]'
+          // escape sequences (\x5C),
+          +    '|\\x5C[\\s\\S]'
+          // or non-nesting character sets (\x5B\x5D);
+          +    '|\\x5B(?:[^\\x5C\\x5D]|\\x5C[\\s\\S])*(?:\\x5D|$))+'
+          // finally closed by a /.
+          + '/');
+      fallthroughStylePatterns.push(
+          ['lang-regex',
+           new RegExp('^' + REGEXP_PRECEDER_PATTERN + '(' + REGEX_LITERAL + ')')
+           ]);
+    }
+
+    var keywords = options['keywords'].replace(/^\s+|\s+$/g, '');
+    if (keywords.length) {
+      fallthroughStylePatterns.push(
+          [PR_KEYWORD,
+           new RegExp('^(?:' + keywords.replace(/\s+/g, '|') + ')\\b'), null]);
+    }
+
+    shortcutStylePatterns.push([PR_PLAIN,       /^\s+/, null, ' \r\n\t\xA0']);
+    fallthroughStylePatterns.push(
+        // TODO(mikesamuel): recognize non-latin letters and numerals in idents
+        [PR_LITERAL,     /^@[a-z_$][a-z_$@0-9]*/i, null],
+        [PR_TYPE,        /^@?[A-Z]+[a-z][A-Za-z_$@0-9]*/, null],
+        [PR_PLAIN,       /^[a-z_$][a-z_$@0-9]*/i, null],
+        [PR_LITERAL,
+         new RegExp(
+             '^(?:'
+             // A hex number
+             + '0x[a-f0-9]+'
+             // or an octal or decimal number,
+             + '|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)'
+             // possibly in scientific notation
+             + '(?:e[+\\-]?\\d+)?'
+             + ')'
+             // with an optional modifier like UL for unsigned long
+             + '[a-z]*', 'i'),
+         null, '0123456789'],
+        [PR_PUNCTUATION, /^.[^\s\w\.$@\'\"\`\/\#]*/, null]);
+
+    return createSimpleLexer(shortcutStylePatterns, fallthroughStylePatterns);
+  }
+
+  var decorateSource = sourceDecorator({
+        'keywords': ALL_KEYWORDS,
+        'hashComments': true,
+        'cStyleComments': true,
+        'multiLineStrings': true,
+        'regexLiterals': true
+      });
+
+  /** Breaks {@code job.source} around style boundaries in
+    * {@code job.decorations} while re-interleaving {@code job.extractedTags},
+    * and leaves the result in {@code job.prettyPrintedHtml}.
+    * @param {Object} job like {
+    *    source: {string} source as plain text,
+    *    extractedTags: {Array.<number|string>} extractedTags chunks of raw
+    *                   html preceded by their position in {@code job.source}
+    *                   in order
+    *    decorations: {Array.<number|string} an array of style classes preceded
+    *                 by the position at which they start in job.source in order
+    * }
+    * @private
+    */
+  function recombineTagsAndDecorations(job) {
+    var sourceText = job.source;
+    var extractedTags = job.extractedTags;
+    var decorations = job.decorations;
+
+    var html = [];
+    // index past the last char in sourceText written to html
+    var outputIdx = 0;
+
+    var openDecoration = null;
+    var currentDecoration = null;
+    var tagPos = 0;  // index into extractedTags
+    var decPos = 0;  // index into decorations
+    var tabExpander = makeTabExpander(window['PR_TAB_WIDTH']);
+
+    var adjacentSpaceRe = /([\r\n ]) /g;
+    var startOrSpaceRe = /(^| ) /gm;
+    var newlineRe = /\r\n?|\n/g;
+    var trailingSpaceRe = /[ \r\n]$/;
+    var lastWasSpace = true;  // the last text chunk emitted ended with a space.
+
+    // See bug 71 and http://stackoverflow.com/questions/136443/why-doesnt-ie7-
+    var isIE678 = window['_pr_isIE6']();
+    var lineBreakHtml = (
+        isIE678
+        ? (job.sourceNode.tagName === 'PRE'
+           // Use line feeds instead of <br>s so that copying and pasting works
+           // on IE.
+           // Doing this on other browsers breaks lots of stuff since \r\n is
+           // treated as two newlines on Firefox.
+           ? (isIE678 === 6 ? '&#160;\r\n' :
+              isIE678 === 7 ? '&#160;<br>\r' : '&#160;\r')
+           // IE collapses multiple adjacent <br>s into 1 line break.
+           // Prefix every newline with '&#160;' to prevent such behavior.
+           // &nbsp; is the same as &#160; but works in XML as well as HTML.
+           : '&#160;<br />')
+        : '<br />');
+
+    // Look for a class like linenums or linenums:<n> where <n> is the 1-indexed
+    // number of the first line.
+    var numberLines = job.sourceNode.className.match(/\blinenums\b(?::(\d+))?/);
+    var lineBreaker;
+    if (numberLines) {
+      var lineBreaks = [];
+      for (var i = 0; i < 10; ++i) {
+        lineBreaks[i] = lineBreakHtml + '</li><li class="L' + i + '">';
+      }
+      var lineNum = numberLines[1] && numberLines[1].length 
+          ? numberLines[1] - 1 : 0;  // Lines are 1-indexed
+      html.push('<ol class="linenums"><li class="L', (lineNum) % 10, '"');
+      if (lineNum) {
+        html.push(' value="', lineNum + 1, '"');
+      }
+      html.push('>');
+      lineBreaker = function () {
+        var lb = lineBreaks[++lineNum % 10];
+        // If a decoration is open, we need to close it before closing a list-item
+        // and reopen it on the other side of the list item.
+        return openDecoration
+            ? ('</span>' + lb + '<span class="' + openDecoration + '">') : lb;
+      };
+    } else {
+      lineBreaker = lineBreakHtml;
+    }
+
+    // A helper function that is responsible for opening sections of decoration
+    // and outputing properly escaped chunks of source
+    function emitTextUpTo(sourceIdx) {
+      if (sourceIdx > outputIdx) {
+        if (openDecoration && openDecoration !== currentDecoration) {
+          // Close the current decoration
+          html.push('</span>');
+          openDecoration = null;
+        }
+        if (!openDecoration && currentDecoration) {
+          openDecoration = currentDecoration;
+          html.push('<span class="', openDecoration, '">');
+        }
+        // This interacts badly with some wikis which introduces paragraph tags
+        // into pre blocks for some strange reason.
+        // It's necessary for IE though which seems to lose the preformattedness
+        // of <pre> tags when their innerHTML is assigned.
+        // http://stud3.tuwien.ac.at/~e0226430/innerHtmlQuirk.html
+        // and it serves to undo the conversion of <br>s to newlines done in
+        // chunkify.
+        var htmlChunk = textToHtml(
+            tabExpander(sourceText.substring(outputIdx, sourceIdx)))
+            .replace(lastWasSpace
+                     ? startOrSpaceRe
+                     : adjacentSpaceRe, '$1&#160;');
+        // Keep track of whether we need to escape space at the beginning of the
+        // next chunk.
+        lastWasSpace = trailingSpaceRe.test(htmlChunk);
+        html.push(htmlChunk.replace(newlineRe, lineBreaker));
+        outputIdx = sourceIdx;
+      }
+    }
+
+    while (true) {
+      // Determine if we're going to consume a tag this time around.  Otherwise
+      // we consume a decoration or exit.
+      var outputTag;
+      if (tagPos < extractedTags.length) {
+        if (decPos < decorations.length) {
+          // Pick one giving preference to extractedTags since we shouldn't open
+          // a new style that we're going to have to immediately close in order
+          // to output a tag.
+          outputTag = extractedTags[tagPos] <= decorations[decPos];
+        } else {
+          outputTag = true;
+        }
+      } else {
+        outputTag = false;
+      }
+      // Consume either a decoration or a tag or exit.
+      if (outputTag) {
+        emitTextUpTo(extractedTags[tagPos]);
+        if (openDecoration) {
+          // Close the current decoration
+          html.push('</span>');
+          openDecoration = null;
+        }
+        html.push(extractedTags[tagPos + 1]);
+        tagPos += 2;
+      } else if (decPos < decorations.length) {
+        emitTextUpTo(decorations[decPos]);
+        currentDecoration = decorations[decPos + 1];
+        decPos += 2;
+      } else {
+        break;
+      }
+    }
+    emitTextUpTo(sourceText.length);
+    if (openDecoration) {
+      html.push('</span>');
+    }
+    if (numberLines) { html.push('</li></ol>'); }
+    job.prettyPrintedHtml = html.join('');
+  }
+
+  /** Maps language-specific file extensions to handlers. */
+  var langHandlerRegistry = {};
+  /** Register a language handler for the given file extensions.
+    * @param {function (Object)} handler a function from source code to a list
+    *      of decorations.  Takes a single argument job which describes the
+    *      state of the computation.   The single parameter has the form
+    *      {@code {
+    *        source: {string} as plain text.
+    *        decorations: {Array.<number|string>} an array of style classes
+    *                     preceded by the position at which they start in
+    *                     job.source in order.
+    *                     The language handler should assigned this field.
+    *        basePos: {int} the position of source in the larger source chunk.
+    *                 All positions in the output decorations array are relative
+    *                 to the larger source chunk.
+    *      } }
+    * @param {Array.<string>} fileExtensions
+    */
+  function registerLangHandler(handler, fileExtensions) {
+    for (var i = fileExtensions.length; --i >= 0;) {
+      var ext = fileExtensions[i];
+      if (!langHandlerRegistry.hasOwnProperty(ext)) {
+        langHandlerRegistry[ext] = handler;
+      } else if ('console' in window) {
+        console['warn']('cannot override language handler %s', ext);
+      }
+    }
+  }
+  function langHandlerForExtension(extension, source) {
+    if (!(extension && langHandlerRegistry.hasOwnProperty(extension))) {
+      // Treat it as markup if the first non whitespace character is a < and
+      // the last non-whitespace character is a >.
+      extension = /^\s*</.test(source)
+          ? 'default-markup'
+          : 'default-code';
+    }
+    return langHandlerRegistry[extension];
+  }
+  registerLangHandler(decorateSource, ['default-code']);
+  registerLangHandler(
+      createSimpleLexer(
+          [],
+          [
+           [PR_PLAIN,       /^[^<?]+/],
+           [PR_DECLARATION, /^<!\w[^>]*(?:>|$)/],
+           [PR_COMMENT,     /^<\!--[\s\S]*?(?:-\->|$)/],
+           // Unescaped content in an unknown language
+           ['lang-',        /^<\?([\s\S]+?)(?:\?>|$)/],
+           ['lang-',        /^<%([\s\S]+?)(?:%>|$)/],
+           [PR_PUNCTUATION, /^(?:<[%?]|[%?]>)/],
+           ['lang-',        /^<xmp\b[^>]*>([\s\S]+?)<\/xmp\b[^>]*>/i],
+           // Unescaped content in javascript.  (Or possibly vbscript).
+           ['lang-js',      /^<script\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],
+           // Contains unescaped stylesheet content
+           ['lang-css',     /^<style\b[^>]*>([\s\S]*?)(<\/style\b[^>]*>)/i],
+           ['lang-in.tag',  /^(<\/?[a-z][^<>]*>)/i]
+          ]),
+      ['default-markup', 'htm', 'html', 'mxml', 'xhtml', 'xml', 'xsl']);
+  registerLangHandler(
+      createSimpleLexer(
+          [
+           [PR_PLAIN,        /^[\s]+/, null, ' \t\r\n'],
+           [PR_ATTRIB_VALUE, /^(?:\"[^\"]*\"?|\'[^\']*\'?)/, null, '\"\'']
+           ],
+          [
+           [PR_TAG,          /^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],
+           [PR_ATTRIB_NAME,  /^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],
+           ['lang-uq.val',   /^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/],
+           [PR_PUNCTUATION,  /^[=<>\/]+/],
+           ['lang-js',       /^on\w+\s*=\s*\"([^\"]+)\"/i],
+           ['lang-js',       /^on\w+\s*=\s*\'([^\']+)\'/i],
+           ['lang-js',       /^on\w+\s*=\s*([^\"\'>\s]+)/i],
+           ['lang-css',      /^style\s*=\s*\"([^\"]+)\"/i],
+           ['lang-css',      /^style\s*=\s*\'([^\']+)\'/i],
+           ['lang-css',      /^style\s*=\s*([^\"\'>\s]+)/i]
+           ]),
+      ['in.tag']);
+  registerLangHandler(
+      createSimpleLexer([], [[PR_ATTRIB_VALUE, /^[\s\S]+/]]), ['uq.val']);
+  registerLangHandler(sourceDecorator({
+          'keywords': CPP_KEYWORDS,
+          'hashComments': true,
+          'cStyleComments': true
+        }), ['c', 'cc', 'cpp', 'cxx', 'cyc', 'm']);
+  registerLangHandler(sourceDecorator({
+          'keywords': 'null true false'
+        }), ['json']);
+  registerLangHandler(sourceDecorator({
+          'keywords': CSHARP_KEYWORDS,
+          'hashComments': true,
+          'cStyleComments': true,
+          'verbatimStrings': true
+        }), ['cs']);
+  registerLangHandler(sourceDecorator({
+          'keywords': JAVA_KEYWORDS,
+          'cStyleComments': true
+        }), ['java']);
+  registerLangHandler(sourceDecorator({
+          'keywords': SH_KEYWORDS,
+          'hashComments': true,
+          'multiLineStrings': true
+        }), ['bsh', 'csh', 'sh']);
+  registerLangHandler(sourceDecorator({
+          'keywords': PYTHON_KEYWORDS,
+          'hashComments': true,
+          'multiLineStrings': true,
+          'tripleQuotedStrings': true
+        }), ['cv', 'py']);
+  registerLangHandler(sourceDecorator({
+          'keywords': PERL_KEYWORDS,
+          'hashComments': true,
+          'multiLineStrings': true,
+          'regexLiterals': true
+        }), ['perl', 'pl', 'pm']);
+  registerLangHandler(sourceDecorator({
+          'keywords': RUBY_KEYWORDS,
+          'hashComments': true,
+          'multiLineStrings': true,
+          'regexLiterals': true
+        }), ['rb']);
+  registerLangHandler(sourceDecorator({
+          'keywords': JSCRIPT_KEYWORDS,
+          'cStyleComments': true,
+          'regexLiterals': true
+        }), ['js']);
+  registerLangHandler(
+      createSimpleLexer([], [[PR_STRING, /^[\s\S]+/]]), ['regex']);
+
+  function applyDecorator(job) {
+    var sourceCodeHtml = job.sourceCodeHtml;
+    var opt_langExtension = job.langExtension;
+
+    // Prepopulate output in case processing fails with an exception.
+    job.prettyPrintedHtml = sourceCodeHtml;
+
+    try {
+      // Extract tags, and convert the source code to plain text.
+      var sourceAndExtractedTags = extractTags(sourceCodeHtml);
+      /** Plain text. @type {string} */
+      var source = sourceAndExtractedTags.source;
+      job.source = source;
+      job.basePos = 0;
+
+      /** Even entries are positions in source in ascending order.  Odd entries
+        * are tags that were extracted at that position.
+        * @type {Array.<number|string>}
+        */
+      job.extractedTags = sourceAndExtractedTags.tags;
+
+      // Apply the appropriate language handler
+      langHandlerForExtension(opt_langExtension, source)(job);
+      // Integrate the decorations and tags back into the source code to produce
+      // a decorated html string which is left in job.prettyPrintedHtml.
+      recombineTagsAndDecorations(job);
+    } catch (e) {
+      if ('console' in window) {
+        console['log'](e && e['stack'] ? e['stack'] : e);
+      }
+    }
+  }
+
+  function prettyPrintOne(sourceCodeHtml, opt_langExtension) {
+    var job = {
+      sourceCodeHtml: sourceCodeHtml,
+      langExtension: opt_langExtension
+    };
+    applyDecorator(job);
+    return job.prettyPrintedHtml;
+  }
+
+  function prettyPrint(opt_whenDone) {
+    function byTagName(tn) { return document.getElementsByTagName(tn); }
+    // fetch a list of nodes to rewrite
+    var codeSegments = [byTagName('pre'), byTagName('code'), byTagName('xmp')];
+    var elements = [];
+    for (var i = 0; i < codeSegments.length; ++i) {
+      for (var j = 0, n = codeSegments[i].length; j < n; ++j) {
+        elements.push(codeSegments[i][j]);
+      }
+    }
+    codeSegments = null;
+
+    var clock = Date;
+    if (!clock['now']) {
+      clock = { 'now': function () { return (new Date).getTime(); } };
+    }
+
+    // The loop is broken into a series of continuations to make sure that we
+    // don't make the browser unresponsive when rewriting a large page.
+    var k = 0;
+    var prettyPrintingJob;
+
+    function doWork() {
+      var endTime = (window['PR_SHOULD_USE_CONTINUATION'] ?
+                     clock.now() + 250 /* ms */ :
+                     Infinity);
+      for (; k < elements.length && clock.now() < endTime; k++) {
+        var cs = elements[k];
+        // [JACOCO] 'prettyprint' -> 'source' 
+        if (cs.className && cs.className.indexOf('source') >= 0) {
+          // If the classes includes a language extensions, use it.
+          // Language extensions can be specified like
+          //     <pre class="prettyprint lang-cpp">
+          // the language extension "cpp" is used to find a language handler as
+          // passed to PR_registerLangHandler.
+          var langExtension = cs.className.match(/\blang-(\w+)\b/);
+          if (langExtension) { langExtension = langExtension[1]; }
+
+          // make sure this is not nested in an already prettified element
+          var nested = false;
+          for (var p = cs.parentNode; p; p = p.parentNode) {
+            if ((p.tagName === 'pre' || p.tagName === 'code' ||
+                 p.tagName === 'xmp') &&
+                // [JACOCO] 'prettyprint' -> 'source' 
+                p.className && p.className.indexOf('source') >= 0) {
+              nested = true;
+              break;
+            }
+          }
+          if (!nested) {
+            // fetch the content as a snippet of properly escaped HTML.
+            // Firefox adds newlines at the end.
+            var content = getInnerHtml(cs);
+            content = content.replace(/(?:\r\n?|\n)$/, '');
+
+            // do the pretty printing
+            prettyPrintingJob = {
+              sourceCodeHtml: content,
+              langExtension: langExtension,
+              sourceNode: cs
+            };
+            applyDecorator(prettyPrintingJob);
+            replaceWithPrettyPrintedHtml();
+          }
+        }
+      }
+      if (k < elements.length) {
+        // finish up in a continuation
+        setTimeout(doWork, 250);
+      } else if (opt_whenDone) {
+        opt_whenDone();
+      }
+    }
+
+    function replaceWithPrettyPrintedHtml() {
+      var newContent = prettyPrintingJob.prettyPrintedHtml;
+      if (!newContent) { return; }
+      var cs = prettyPrintingJob.sourceNode;
+
+      // push the prettified html back into the tag.
+      if (!isRawContent(cs)) {
+        // just replace the old html with the new
+        cs.innerHTML = newContent;
+      } else {
+        // we need to change the tag to a <pre> since <xmp>s do not allow
+        // embedded tags such as the span tags used to attach styles to
+        // sections of source code.
+        var pre = document.createElement('PRE');
+        for (var i = 0; i < cs.attributes.length; ++i) {
+          var a = cs.attributes[i];
+          if (a.specified) {
+            var aname = a.name.toLowerCase();
+            if (aname === 'class') {
+              pre.className = a.value;  // For IE 6
+            } else {
+              pre.setAttribute(a.name, a.value);
+            }
+          }
+        }
+        pre.innerHTML = newContent;
+
+        // remove the old
+        cs.parentNode.replaceChild(pre, cs);
+        cs = pre;
+      }
+    }
+
+    doWork();
+  }
+
+  window['PR_normalizedHtml'] = normalizedHtml;
+  window['prettyPrintOne'] = prettyPrintOne;
+  window['prettyPrint'] = prettyPrint;
+  window['PR'] = {
+        'combinePrefixPatterns': combinePrefixPatterns,
+        'createSimpleLexer': createSimpleLexer,
+        'registerLangHandler': registerLangHandler,
+        'sourceDecorator': sourceDecorator,
+        'PR_ATTRIB_NAME': PR_ATTRIB_NAME,
+        'PR_ATTRIB_VALUE': PR_ATTRIB_VALUE,
+        'PR_COMMENT': PR_COMMENT,
+        'PR_DECLARATION': PR_DECLARATION,
+        'PR_KEYWORD': PR_KEYWORD,
+        'PR_LITERAL': PR_LITERAL,
+        'PR_NOCODE': PR_NOCODE,
+        'PR_PLAIN': PR_PLAIN,
+        'PR_PUNCTUATION': PR_PUNCTUATION,
+        'PR_SOURCE': PR_SOURCE,
+        'PR_STRING': PR_STRING,
+        'PR_TAG': PR_TAG,
+        'PR_TYPE': PR_TYPE
+      };
+})();
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/.resources/redbar.gif b/UyTube_aplicacion/.jacocoverage/report.html/.resources/redbar.gif
new file mode 100644
index 0000000000000000000000000000000000000000..c2f71469ba995289439d86ea39b1b33edb03388c
Binary files /dev/null and b/UyTube_aplicacion/.jacocoverage/report.html/.resources/redbar.gif differ
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/.resources/report.css b/UyTube_aplicacion/.jacocoverage/report.html/.resources/report.css
new file mode 100644
index 0000000000000000000000000000000000000000..08eba79299c64d573f3cf1acdd8fa9c68f0942e6
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/.resources/report.css
@@ -0,0 +1,243 @@
+body, td {
+  font-family:sans-serif;
+  font-size:10pt;
+}
+
+h1 {
+  font-weight:bold;
+  font-size:18pt;
+}
+
+.breadcrumb {
+  border:#d6d3ce 1px solid;
+  padding:2px 4px 2px 4px;
+}
+
+.breadcrumb .info {
+  float:right;
+}
+
+.breadcrumb .info a {
+  margin-left:8px;
+}
+
+.el_report {
+  padding-left:18px;
+  background-image:url(report.gif);
+  background-position:left center;
+  background-repeat:no-repeat;
+}
+
+.el_group {
+  padding-left:18px;
+  background-image:url(group.gif);
+  background-position:left center;
+  background-repeat:no-repeat;
+}
+
+.el_bundle {
+  padding-left:18px;
+  background-image:url(bundle.gif);
+  background-position:left center;
+  background-repeat:no-repeat;
+}
+
+.el_package {
+  padding-left:18px;
+  background-image:url(package.gif);
+  background-position:left center;
+  background-repeat:no-repeat;
+}
+
+.el_class {
+  padding-left:18px;
+  background-image:url(class.gif);
+  background-position:left center;
+  background-repeat:no-repeat;
+}
+
+.el_source {
+  padding-left:18px;
+  background-image:url(source.gif);
+  background-position:left center;
+  background-repeat:no-repeat;
+}
+
+.el_method {
+  padding-left:18px;
+  background-image:url(method.gif);
+  background-position:left center;
+  background-repeat:no-repeat;
+}
+
+.el_session {
+  padding-left:18px;
+  background-image:url(session.gif);
+  background-position:left center;
+  background-repeat:no-repeat;
+}
+
+pre.source {
+  border:#d6d3ce 1px solid;
+  font-family:monospace;
+}
+
+pre.source ol {
+  margin-bottom: 0px;
+  margin-top: 0px;
+}
+
+pre.source li {
+  border-left: 1px solid #D6D3CE;
+  color: #A0A0A0;
+  padding-left: 0px;
+}
+
+pre.source span.fc {
+  background-color:#ccffcc;
+}
+
+pre.source span.nc {
+  background-color:#ffaaaa;
+}
+
+pre.source span.pc {
+  background-color:#ffffcc;
+}
+
+pre.source span.bfc {
+  background-image: url(branchfc.gif);
+  background-repeat: no-repeat;
+  background-position: 2px center;
+}
+
+pre.source span.bfc:hover {
+  background-color:#80ff80;
+}
+
+pre.source span.bnc {
+  background-image: url(branchnc.gif);
+  background-repeat: no-repeat;
+  background-position: 2px center;
+}
+
+pre.source span.bnc:hover {
+  background-color:#ff8080;
+}
+
+pre.source span.bpc {
+  background-image: url(branchpc.gif);
+  background-repeat: no-repeat;
+  background-position: 2px center;
+}
+
+pre.source span.bpc:hover {
+  background-color:#ffff80;
+}
+
+table.coverage {
+  empty-cells:show;
+  border-collapse:collapse; 
+}
+
+table.coverage thead {
+  background-color:#e0e0e0;
+}
+
+table.coverage thead td {
+  white-space:nowrap;
+  padding:2px 14px 0px 6px;
+  border-bottom:#b0b0b0 1px solid;
+}
+
+table.coverage thead td.bar {
+  border-left:#cccccc 1px solid;
+}
+
+table.coverage thead td.ctr1 {
+  text-align:right;
+  border-left:#cccccc 1px solid;
+}
+
+table.coverage thead td.ctr2 {
+  text-align:right;
+  padding-left:2px;
+}
+
+table.coverage thead td.sortable {
+  cursor:pointer;
+  background-image:url(sort.gif);
+  background-position:right center;
+  background-repeat:no-repeat;
+}
+
+table.coverage thead td.up {
+  background-image:url(up.gif);
+}
+
+table.coverage thead td.down {
+  background-image:url(down.gif);
+}
+
+table.coverage tbody td {
+  white-space:nowrap;
+  padding:2px 6px 2px 6px;
+  border-bottom:#d6d3ce 1px solid;
+}
+
+table.coverage tbody tr:hover { 
+  background: #f0f0d0 !important;
+}
+
+table.coverage tbody td.bar {
+  border-left:#e8e8e8 1px solid;
+}
+
+table.coverage tbody td.ctr1 {
+  text-align:right;
+  padding-right:14px;
+  border-left:#e8e8e8 1px solid;
+}
+
+table.coverage tbody td.ctr2 {
+  text-align:right;
+  padding-right:14px;
+  padding-left:2px;
+}
+
+table.coverage tfoot td {
+  white-space:nowrap;
+  padding:2px 6px 2px 6px;
+}
+
+table.coverage tfoot td.bar {
+  border-left:#e8e8e8 1px solid;
+}
+
+table.coverage tfoot td.ctr1 {
+  text-align:right;
+  padding-right:14px;
+  border-left:#e8e8e8 1px solid;
+}
+
+table.coverage tfoot td.ctr2 {
+  text-align:right;
+  padding-right:14px;
+  padding-left:2px;
+}
+
+.footer {
+  margin-top:20px;
+  border-top:#d6d3ce 1px solid;
+  padding-top:2px;
+  font-size:8pt;
+  color:#a0a0a0;
+}
+
+.footer a {
+  color:#a0a0a0;
+}
+
+.right {
+  float:right;
+}
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/.resources/report.gif b/UyTube_aplicacion/.jacocoverage/report.html/.resources/report.gif
new file mode 100644
index 0000000000000000000000000000000000000000..8547be50bf3e97e725920927b5aa4cdb031f4823
Binary files /dev/null and b/UyTube_aplicacion/.jacocoverage/report.html/.resources/report.gif differ
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/.resources/session.gif b/UyTube_aplicacion/.jacocoverage/report.html/.resources/session.gif
new file mode 100644
index 0000000000000000000000000000000000000000..0151bad8a001e5cc5cc7723a608185f746b7f8c1
Binary files /dev/null and b/UyTube_aplicacion/.jacocoverage/report.html/.resources/session.gif differ
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/.resources/sort.gif b/UyTube_aplicacion/.jacocoverage/report.html/.resources/sort.gif
new file mode 100644
index 0000000000000000000000000000000000000000..6757c2c32b57d768f3c12c4ae99a28bc32c9cbd7
Binary files /dev/null and b/UyTube_aplicacion/.jacocoverage/report.html/.resources/sort.gif differ
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/.resources/sort.js b/UyTube_aplicacion/.jacocoverage/report.html/.resources/sort.js
new file mode 100644
index 0000000000000000000000000000000000000000..c4c9252b71b2f770976b2b475c28ed1056114dbd
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/.resources/sort.js
@@ -0,0 +1,147 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2016 Mountainminds GmbH & Co. KG and Contributors
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Marc R. Hoffmann - initial API and implementation
+ *    
+ *******************************************************************************/
+
+(function () {
+
+  /**
+   * Sets the initial sorting derived from the hash.
+   *
+   * @param linkelementids
+   *          list of element ids to search for links to add sort inidcator
+   *          hash links   
+   */  
+  function initialSort(linkelementids) {
+    window.linkelementids = linkelementids;
+    var hash = window.location.hash;
+    if (hash) {
+      var m = hash.match(/up-./);
+      if (m) {
+        var header = window.document.getElementById(m[0].charAt(3));
+        if (header) {
+          sortColumn(header, true);
+        }
+        return;
+      }
+      var m = hash.match(/dn-./);
+      if (m) {
+        var header = window.document.getElementById(m[0].charAt(3));
+        if (header) {
+          sortColumn(header, false);
+        }
+        return
+      }
+    }
+  }
+
+  /**
+   * Sorts the columns with the given header dependening on the current sort state.
+   */  
+  function toggleSort(header) {
+    var sortup = header.className.indexOf('down ') == 0;
+    sortColumn(header, sortup);
+  }
+
+  /**
+   * Sorts the columns with the given header in the given direction.
+   */  
+  function sortColumn(header, sortup) {
+    var table = header.parentNode.parentNode.parentNode;
+    var body = table.tBodies[0];
+    var colidx = getNodePosition(header);
+    
+    resetSortedStyle(table);
+    
+    var rows = body.rows;
+    var sortedrows = [];
+    for (var i = 0; i < rows.length; i++) {
+      r = rows[i];
+      sortedrows[parseInt(r.childNodes[colidx].id.slice(1))] = r;
+    }
+    
+    var hash;
+    
+    if (sortup) {
+      for (var i = sortedrows.length - 1; i >= 0; i--) {
+        body.appendChild(sortedrows[i]);
+      }
+      header.className = 'up ' + header.className;
+      hash = 'up-' + header.id;
+    } else {
+      for (var i = 0; i < sortedrows.length; i++) {
+        body.appendChild(sortedrows[i]);
+      }
+      header.className = 'down ' + header.className;
+      hash = 'dn-' + header.id;
+    }
+    
+    setHash(hash);
+  }
+
+  /**
+   * Adds the sort indicator as a hash to the document URL and all links.
+   */
+  function setHash(hash) {
+    window.document.location.hash = hash;
+    ids = window.linkelementids;
+    for (var i = 0; i < ids.length; i++) {
+        setHashOnAllLinks(document.getElementById(ids[i]), hash);
+    }
+  }
+
+  /**
+   * Extend all links within the given tag with the given hash.
+   */
+  function setHashOnAllLinks(tag, hash) {
+    links = tag.getElementsByTagName("a");
+    for (var i = 0; i < links.length; i++) {
+        var a = links[i];
+        var href = a.href;
+        var hashpos = href.indexOf("#");
+        if (hashpos != -1) {
+            href = href.substring(0, hashpos);
+        } 
+        a.href = href + "#" + hash;
+    }
+  }
+
+  /**
+   * Calculates the position of a element within its parent.
+   */  
+  function getNodePosition(element) {
+    var pos = -1;
+    while (element) {
+      element = element.previousSibling;
+      pos++;
+    }
+    return pos;
+  }
+
+  /**
+   * Remove the sorting indicator style from all headers.
+   */
+  function resetSortedStyle(table) {
+    for (var c = table.tHead.firstChild.firstChild; c; c = c.nextSibling) {
+      if (c.className) {
+        if (c.className.indexOf('down ') == 0) {
+          c.className = c.className.slice(5);
+        }
+        if (c.className.indexOf('up ') == 0) {
+          c.className = c.className.slice(3);
+        }
+      }
+    }
+  }
+  
+  window['initialSort'] = initialSort;
+  window['toggleSort'] = toggleSort;
+
+})();
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/.resources/source.gif b/UyTube_aplicacion/.jacocoverage/report.html/.resources/source.gif
new file mode 100644
index 0000000000000000000000000000000000000000..b226e41c5276581db33d71525298ef572cc5d7ce
Binary files /dev/null and b/UyTube_aplicacion/.jacocoverage/report.html/.resources/source.gif differ
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/.resources/up.gif b/UyTube_aplicacion/.jacocoverage/report.html/.resources/up.gif
new file mode 100644
index 0000000000000000000000000000000000000000..58ed21660ec467736a4d2af17d91341f7cfb556c
Binary files /dev/null and b/UyTube_aplicacion/.jacocoverage/report.html/.resources/up.gif differ
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/.sessions.html b/UyTube_aplicacion/.jacocoverage/report.html/.sessions.html
new file mode 100644
index 0000000000000000000000000000000000000000..6d292c60b37c20cad6fd859e492e30b8951116e6
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/.sessions.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href=".resources/report.css" type="text/css"/><link rel="shortcut icon" href=".resources/report.gif" type="image/gif"/><title>Sessions</title></head><body><div class="breadcrumb" id="breadcrumb"><span class="info"><a href=".sessions.html" class="el_session">Sessions</a></span><a href="index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <span class="el_session">Sessions</span></div><h1>Sessions</h1><p>This coverage report is based on execution data from the following sessions:</p><table class="coverage" cellspacing="0"><thead><tr><td>Session</td><td>Start Time</td><td>Dump Time</td></tr></thead><tbody><tr><td><span class="el_session">PCcarlosBM-41d03708</span></td><td>26/08/2019 12:55:30 AM</td><td>26/08/2019 12:55:30 AM</td></tr><tr><td><span class="el_session">PCcarlosBM-d98ca87a</span></td><td>26/08/2019 12:55:30 AM</td><td>26/08/2019 12:55:31 AM</td></tr><tr><td><span class="el_session">PCcarlosBM-8b7b6231</span></td><td>26/08/2019 12:55:31 AM</td><td>26/08/2019 12:55:32 AM</td></tr></tbody></table><p>Execution data for the following classes is considered in this report:</p><table class="coverage" cellspacing="0"><thead><tr><td>Class</td><td>Id</td></tr></thead><tbody><tr><td><a href="Logica.Clases/Canal.html" class="el_class">Logica.Clases.Canal</a></td><td><code>7d90a44a60fd42a4</code></td></tr><tr><td><a href="Logica.Clases/Comentario.html" class="el_class">Logica.Clases.Comentario</a></td><td><code>4ec594ee853e6d9f</code></td></tr><tr><td><span class="el_class">Logica.Clases.ComentarioTest</span></td><td><code>5f8742e79ff4230a</code></td></tr><tr><td><a href="Logica.Clases/ListaDeReproduccion.html" class="el_class">Logica.Clases.ListaDeReproduccion</a></td><td><code>04cd08d12522c13b</code></td></tr><tr><td><a href="Logica.Clases/Persona.html" class="el_class">Logica.Clases.Persona</a></td><td><code>b92714b20c7c085d</code></td></tr><tr><td><a href="Logica.Clases/Usuario.html" class="el_class">Logica.Clases.Usuario</a></td><td><code>f26d6004c19f454f</code></td></tr><tr><td><a href="Logica.Clases/Valoracion.html" class="el_class">Logica.Clases.Valoracion</a></td><td><code>da1b137c3323b195</code></td></tr><tr><td><span class="el_class">Logica.Clases.ValoracionTest</span></td><td><code>d705cd8c86e48c3c</code></td></tr><tr><td><a href="Logica.DataType/DtCanal.html" class="el_class">Logica.DataType.DtCanal</a></td><td><code>33a2c6dd2d529527</code></td></tr><tr><td><a href="Logica.DataType/DtComentario.html" class="el_class">Logica.DataType.DtComentario</a></td><td><code>4792e1a85538a3a9</code></td></tr><tr><td><a href="Logica.DataType/DtValoracion.html" class="el_class">Logica.DataType.DtValoracion</a></td><td><code>e13373304e3867b9</code></td></tr><tr><td><a href="Logica.DataType/DtVideo.html" class="el_class">Logica.DataType.DtVideo</a></td><td><code>f67337d67858a7ee</code></td></tr><tr><td><span class="el_class">Logica.DataType.DtVideoTest</span></td><td><code>8c8b735df0167047</code></td></tr><tr><td><a href="Logica.Enumerados/Privacidad.html" class="el_class">Logica.Enumerados.Privacidad</a></td><td><code>d9d3ba7f42c7de24</code></td></tr><tr><td><a href="Logica.Enumerados/TipoListaDeReproduccion.html" class="el_class">Logica.Enumerados.TipoListaDeReproduccion</a></td><td><code>3a571f6b1276c01e</code></td></tr><tr><td><a href="Logica.Enumerados/TipoValoracion.html" class="el_class">Logica.Enumerados.TipoValoracion</a></td><td><code>02942a88e83f0fba</code></td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Administrador.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Administrador.html
new file mode 100644
index 0000000000000000000000000000000000000000..36752bcea709dfdff0c5e7267f45ac21a8cf0190
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Administrador.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Administrador</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.html" class="el_package">Logica.Clases</a> &gt; <span class="el_class">Administrador</span></div><h1>Administrador</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">21 of 21</td><td class="ctr2">0%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">4</td><td class="ctr2">4</td><td class="ctr1">6</td><td class="ctr2">6</td><td class="ctr1">4</td><td class="ctr2">4</td></tr></tfoot><tbody><tr><td id="a0"><a href="Administrador.java.html#L8" class="el_method">Administrador(int, String, String, String)</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="120" height="10" title="9" alt="9"/></td><td class="ctr2" id="c0">0%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h0">3</td><td class="ctr2" id="i0">3</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a2"><a href="Administrador.java.html#L13" class="el_method">getNuevoID()</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="80" height="10" title="6" alt="6"/></td><td class="ctr2" id="c1">0%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a1"><a href="Administrador.java.html#L17" class="el_method">getIdAdmin()</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="40" height="10" title="3" alt="3"/></td><td class="ctr2" id="c2">0%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">1</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">1</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a3"><a href="Administrador.java.html#L5" class="el_method">static {...}</a></td><td class="bar" id="b3"><img src="../.resources/redbar.gif" width="40" height="10" title="3" alt="3"/></td><td class="ctr2" id="c3">0%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">1</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">1</td><td class="ctr2" id="i3">1</td><td class="ctr1" id="j3">1</td><td class="ctr2" id="k3">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Administrador.java.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Administrador.java.html
new file mode 100644
index 0000000000000000000000000000000000000000..8f856edb21f1d8b39562b48581d2d9858f31799a
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Administrador.java.html
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Administrador.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.source.html" class="el_package">Logica.Clases</a> &gt; <span class="el_source">Administrador.java</span></div><h1>Administrador.java</h1><pre class="source lang-java linenums">package Logica.Clases;
+
+public class Administrador extends Persona{
+    private int idAdmin;
+<span class="nc" id="L5">    private static int contadorAdministrador = 1;</span>
+            
+    public Administrador(int id, String contrasenia, String nombre, String apellido){
+<span class="nc" id="L8">        super(nombre,apellido,contrasenia);</span>
+<span class="nc" id="L9">        idAdmin = id;</span>
+<span class="nc" id="L10">    }</span>
+    
+    public static int getNuevoID(){
+<span class="nc" id="L13">        return contadorAdministrador++;</span>
+    }
+
+    public int getIdAdmin() {
+<span class="nc" id="L17">        return idAdmin;</span>
+    }
+    
+    
+    
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Canal.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Canal.html
new file mode 100644
index 0000000000000000000000000000000000000000..69f9ee68fffc199596f9e56361d5f2e7ba58ec1f
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Canal.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Canal</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.html" class="el_package">Logica.Clases</a> &gt; <span class="el_class">Canal</span></div><h1>Canal</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">904 of 971</td><td class="ctr2">7%</td><td class="bar">119 of 122</td><td class="ctr2">2%</td><td class="ctr1">93</td><td class="ctr2">97</td><td class="ctr1">182</td><td class="ctr2">198</td><td class="ctr1">33</td><td class="ctr2">36</td></tr></tfoot><tbody><tr><td id="a5"><a href="Canal.java.html#L170" class="el_method">agregarVideo(DtVideo)</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="120" height="10" title="113" alt="113"/></td><td class="ctr2" id="c3">0%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="120" height="10" title="18" alt="18"/></td><td class="ctr2" id="e1">0%</td><td class="ctr1" id="f0">10</td><td class="ctr2" id="g0">10</td><td class="ctr1" id="h0">28</td><td class="ctr2" id="i0">28</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a3"><a href="Canal.java.html#L121" class="el_method">agregarListaParticular(DtListaDeReproduccion)</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="94" height="10" title="89" alt="89"/></td><td class="ctr2" id="c4">0%</td><td class="bar" id="d1"><img src="../.resources/redbar.gif" width="93" height="10" title="14" alt="14"/></td><td class="ctr2" id="e2">0%</td><td class="ctr1" id="f1">8</td><td class="ctr2" id="g1">8</td><td class="ctr1" id="h1">20</td><td class="ctr2" id="i1">20</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a19"><a href="Canal.java.html#L284" class="el_method">modificar(DtCanal)</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="71" height="10" title="67" alt="67"/></td><td class="ctr2" id="c5">0%</td><td class="bar" id="d2"><img src="../.resources/redbar.gif" width="66" height="10" title="10" alt="10"/></td><td class="ctr2" id="e3">0%</td><td class="ctr1" id="f2">6</td><td class="ctr2" id="g2">6</td><td class="ctr1" id="h2">13</td><td class="ctr2" id="i3">13</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a0"><a href="Canal.java.html#L90" class="el_method">actualizarListasPorDefecto()</a></td><td class="bar" id="b3"><img src="../.resources/redbar.gif" width="59" height="10" title="56" alt="56"/></td><td class="ctr2" id="c6">0%</td><td class="bar" id="d5"><img src="../.resources/redbar.gif" width="40" height="10" title="6" alt="6"/></td><td class="ctr2" id="e4">0%</td><td class="ctr1" id="f5">4</td><td class="ctr2" id="g5">4</td><td class="ctr1" id="h3">10</td><td class="ctr2" id="i4">10</td><td class="ctr1" id="j3">1</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a20"><a href="Canal.java.html#L304" class="el_method">modificarListaDeReproduccion(DtListaDeReproduccion)</a></td><td class="bar" id="b4"><img src="../.resources/redbar.gif" width="45" height="10" title="43" alt="43"/></td><td class="ctr2" id="c7">0%</td><td class="bar" id="d3"><img src="../.resources/redbar.gif" width="53" height="10" title="8" alt="8"/></td><td class="ctr2" id="e5">0%</td><td class="ctr1" id="f3">5</td><td class="ctr2" id="g3">5</td><td class="ctr1" id="h4">8</td><td class="ctr2" id="i5">8</td><td class="ctr1" id="j4">1</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a21"><a href="Canal.java.html#L320" class="el_method">modificarVideo(DtVideo)</a></td><td class="bar" id="b5"><img src="../.resources/redbar.gif" width="45" height="10" title="43" alt="43"/></td><td class="ctr2" id="c8">0%</td><td class="bar" id="d4"><img src="../.resources/redbar.gif" width="53" height="10" title="8" alt="8"/></td><td class="ctr2" id="e6">0%</td><td class="ctr1" id="f4">5</td><td class="ctr2" id="g4">5</td><td class="ctr1" id="h5">8</td><td class="ctr2" id="i6">8</td><td class="ctr1" id="j5">1</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a15"><a href="Canal.java.html#L238" class="el_method">listarListasDeReproduccion(boolean)</a></td><td class="bar" id="b6"><img src="../.resources/redbar.gif" width="37" height="10" title="35" alt="35"/></td><td class="ctr2" id="c9">0%</td><td class="bar" id="d6"><img src="../.resources/redbar.gif" width="40" height="10" title="6" alt="6"/></td><td class="ctr2" id="e7">0%</td><td class="ctr1" id="f6">4</td><td class="ctr2" id="g6">4</td><td class="ctr1" id="h6">7</td><td class="ctr2" id="i7">7</td><td class="ctr1" id="j6">1</td><td class="ctr2" id="k6">1</td></tr><tr><td id="a24"><a href="Canal.java.html#L346" class="el_method">obtenerListasEnCategoria(String)</a></td><td class="bar" id="b7"><img src="../.resources/redbar.gif" width="35" height="10" title="33" alt="33"/></td><td class="ctr2" id="c10">0%</td><td class="bar" id="d8"><img src="../.resources/redbar.gif" width="26" height="10" title="4" alt="4"/></td><td class="ctr2" id="e8">0%</td><td class="ctr1" id="f8">3</td><td class="ctr2" id="g8">3</td><td class="ctr1" id="h7">6</td><td class="ctr2" id="i8">6</td><td class="ctr1" id="j7">1</td><td class="ctr2" id="k7">1</td></tr><tr><td id="a27"><a href="Canal.java.html#L382" class="el_method">obtenerVideosEnCategoria(String)</a></td><td class="bar" id="b8"><img src="../.resources/redbar.gif" width="35" height="10" title="33" alt="33"/></td><td class="ctr2" id="c11">0%</td><td class="bar" id="d9"><img src="../.resources/redbar.gif" width="26" height="10" title="4" alt="4"/></td><td class="ctr2" id="e9">0%</td><td class="ctr1" id="f9">3</td><td class="ctr2" id="g9">3</td><td class="ctr1" id="h8">6</td><td class="ctr2" id="i9">6</td><td class="ctr1" id="j8">1</td><td class="ctr2" id="k8">1</td></tr><tr><td id="a35"><a href="Canal.java.html#L410" class="el_method">validarListaParticular(String)</a></td><td class="bar" id="b9"><img src="../.resources/redbar.gif" width="31" height="10" title="30" alt="30"/></td><td class="ctr2" id="c12">0%</td><td class="bar" id="d7"><img src="../.resources/redbar.gif" width="40" height="10" title="6" alt="6"/></td><td class="ctr2" id="e10">0%</td><td class="ctr1" id="f7">4</td><td class="ctr2" id="g7">4</td><td class="ctr1" id="h10">5</td><td class="ctr2" id="i11">5</td><td class="ctr1" id="j9">1</td><td class="ctr2" id="k9">1</td></tr><tr><td id="a17"><a href="Canal.java.html#L259" class="el_method">listarVideos()</a></td><td class="bar" id="b10"><img src="../.resources/redbar.gif" width="27" height="10" title="26" alt="26"/></td><td class="ctr2" id="c13">0%</td><td class="bar" id="d11"><img src="../.resources/redbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e11">0%</td><td class="ctr1" id="f11">2</td><td class="ctr2" id="g12">2</td><td class="ctr1" id="h11">5</td><td class="ctr2" id="i12">5</td><td class="ctr1" id="j10">1</td><td class="ctr2" id="k10">1</td></tr><tr><td id="a33"><a href="Canal.java.html#L76" class="el_method">setPrivacidad(Privacidad)</a></td><td class="bar" id="b11"><img src="../.resources/redbar.gif" width="26" height="10" title="25" alt="25"/></td><td class="ctr2" id="c14">0%</td><td class="bar" id="d10"><img src="../.resources/redbar.gif" width="26" height="10" title="4" alt="4"/></td><td class="ctr2" id="e12">0%</td><td class="ctr1" id="f10">3</td><td class="ctr2" id="g10">3</td><td class="ctr1" id="h9">6</td><td class="ctr2" id="i10">6</td><td class="ctr1" id="j11">1</td><td class="ctr2" id="k11">1</td></tr><tr><td id="a2"><a href="Canal.java.html#L113" class="el_method">agregarComentarioAVideo(int, int, DtComentario, Usuario)</a></td><td class="bar" id="b12"><img src="../.resources/redbar.gif" width="24" height="10" title="23" alt="23"/></td><td class="ctr2" id="c15">0%</td><td class="bar" id="d12"><img src="../.resources/redbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e13">0%</td><td class="ctr1" id="f12">2</td><td class="ctr2" id="g13">2</td><td class="ctr1" id="h12">4</td><td class="ctr2" id="i13">4</td><td class="ctr1" id="j12">1</td><td class="ctr2" id="k12">1</td></tr><tr><td id="a1"><a href="Canal.java.html#L105" class="el_method">agregarComentarioAVideo(int, DtComentario, Usuario)</a></td><td class="bar" id="b13"><img src="../.resources/redbar.gif" width="23" height="10" title="22" alt="22"/></td><td class="ctr2" id="c16">0%</td><td class="bar" id="d13"><img src="../.resources/redbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e14">0%</td><td class="ctr1" id="f13">2</td><td class="ctr2" id="g14">2</td><td class="ctr1" id="h13">4</td><td class="ctr2" id="i14">4</td><td class="ctr1" id="j13">1</td><td class="ctr2" id="k13">1</td></tr><tr><td id="a4"><a href="Canal.java.html#L161" class="el_method">agregarModificarValoracion(int, DtValoracion, Usuario)</a></td><td class="bar" id="b14"><img src="../.resources/redbar.gif" width="23" height="10" title="22" alt="22"/></td><td class="ctr2" id="c17">0%</td><td class="bar" id="d14"><img src="../.resources/redbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e15">0%</td><td class="ctr1" id="f14">2</td><td class="ctr2" id="g15">2</td><td class="ctr1" id="h14">4</td><td class="ctr2" id="i15">4</td><td class="ctr1" id="j14">1</td><td class="ctr2" id="k14">1</td></tr><tr><td id="a28"><a href="Canal.java.html#L152" class="el_method">quitarValoracion(int, String)</a></td><td class="bar" id="b15"><img src="../.resources/redbar.gif" width="22" height="10" title="21" alt="21"/></td><td class="ctr2" id="c18">0%</td><td class="bar" id="d15"><img src="../.resources/redbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e16">0%</td><td class="ctr1" id="f15">2</td><td class="ctr2" id="g16">2</td><td class="ctr1" id="h15">4</td><td class="ctr2" id="i16">4</td><td class="ctr1" id="j15">1</td><td class="ctr2" id="k15">1</td></tr><tr><td id="a6"><a href="Canal.java.html#L215" class="el_method">agregarVideoALista(int, Video)</a></td><td class="bar" id="b16"><img src="../.resources/redbar.gif" width="22" height="10" title="21" alt="21"/></td><td class="ctr2" id="c19">0%</td><td class="bar" id="d16"><img src="../.resources/redbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e17">0%</td><td class="ctr1" id="f16">2</td><td class="ctr2" id="g17">2</td><td class="ctr1" id="h16">4</td><td class="ctr2" id="i17">4</td><td class="ctr1" id="j16">1</td><td class="ctr2" id="k16">1</td></tr><tr><td id="a29"><a href="Canal.java.html#L402" class="el_method">quitarVideoDeListaDeReproduccion(int, int)</a></td><td class="bar" id="b17"><img src="../.resources/redbar.gif" width="22" height="10" title="21" alt="21"/></td><td class="ctr2" id="c20">0%</td><td class="bar" id="d17"><img src="../.resources/redbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e18">0%</td><td class="ctr1" id="f17">2</td><td class="ctr2" id="g18">2</td><td class="ctr1" id="h17">4</td><td class="ctr2" id="i18">4</td><td class="ctr1" id="j17">1</td><td class="ctr2" id="k17">1</td></tr><tr><td id="a25"><a href="Canal.java.html#L419" class="el_method">obtenerValoracion(int, String)</a></td><td class="bar" id="b18"><img src="../.resources/redbar.gif" width="21" height="10" title="20" alt="20"/></td><td class="ctr2" id="c21">0%</td><td class="bar" id="d18"><img src="../.resources/redbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e19">0%</td><td class="ctr1" id="f18">2</td><td class="ctr2" id="g19">2</td><td class="ctr1" id="h20">3</td><td class="ctr2" id="i21">3</td><td class="ctr1" id="j18">1</td><td class="ctr2" id="k18">1</td></tr><tr><td id="a14"><a href="Canal.java.html#L230" class="el_method">listarComentariosDeVideo(int)</a></td><td class="bar" id="b19"><img src="../.resources/redbar.gif" width="20" height="10" title="19" alt="19"/></td><td class="ctr2" id="c22">0%</td><td class="bar" id="d19"><img src="../.resources/redbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e20">0%</td><td class="ctr1" id="f19">2</td><td class="ctr2" id="g20">2</td><td class="ctr1" id="h21">3</td><td class="ctr2" id="i22">3</td><td class="ctr1" id="j19">1</td><td class="ctr2" id="k19">1</td></tr><tr><td id="a16"><a href="Canal.java.html#L251" class="el_method">listarValoracionesDeVideo(int)</a></td><td class="bar" id="b20"><img src="../.resources/redbar.gif" width="20" height="10" title="19" alt="19"/></td><td class="ctr2" id="c23">0%</td><td class="bar" id="d20"><img src="../.resources/redbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e21">0%</td><td class="ctr1" id="f20">2</td><td class="ctr2" id="g21">2</td><td class="ctr1" id="h22">3</td><td class="ctr2" id="i23">3</td><td class="ctr1" id="j20">1</td><td class="ctr2" id="k20">1</td></tr><tr><td id="a18"><a href="Canal.java.html#L276" class="el_method">listarVideosDeListaDeReproduccion(int)</a></td><td class="bar" id="b21"><img src="../.resources/redbar.gif" width="20" height="10" title="19" alt="19"/></td><td class="ctr2" id="c24">0%</td><td class="bar" id="d21"><img src="../.resources/redbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e22">0%</td><td class="ctr1" id="f21">2</td><td class="ctr2" id="g22">2</td><td class="ctr1" id="h23">3</td><td class="ctr2" id="i24">3</td><td class="ctr1" id="j21">1</td><td class="ctr2" id="k21">1</td></tr><tr><td id="a22"><a href="Canal.java.html#L366" class="el_method">obtenerDtVideo(int)</a></td><td class="bar" id="b22"><img src="../.resources/redbar.gif" width="20" height="10" title="19" alt="19"/></td><td class="ctr2" id="c25">0%</td><td class="bar" id="d22"><img src="../.resources/redbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e23">0%</td><td class="ctr1" id="f22">2</td><td class="ctr2" id="g23">2</td><td class="ctr1" id="h24">3</td><td class="ctr2" id="i25">3</td><td class="ctr1" id="j22">1</td><td class="ctr2" id="k22">1</td></tr><tr><td id="a26"><a href="Canal.java.html#L374" class="el_method">obtenerVideo(int)</a></td><td class="bar" id="b23"><img src="../.resources/redbar.gif" width="19" height="10" title="18" alt="18"/></td><td class="ctr2" id="c26">0%</td><td class="bar" id="d23"><img src="../.resources/redbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e24">0%</td><td class="ctr1" id="f23">2</td><td class="ctr2" id="g24">2</td><td class="ctr1" id="h25">3</td><td class="ctr2" id="i26">3</td><td class="ctr1" id="j23">1</td><td class="ctr2" id="k23">1</td></tr><tr><td id="a23"><a href="Canal.java.html#L337" class="el_method">obtenerListaDeReproduccion(int)</a></td><td class="bar" id="b24"><img src="../.resources/redbar.gif" width="18" height="10" title="17" alt="17"/></td><td class="ctr2" id="c27">0%</td><td class="bar" id="d24"><img src="../.resources/redbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e25">0%</td><td class="ctr1" id="f24">2</td><td class="ctr2" id="g25">2</td><td class="ctr1" id="h18">4</td><td class="ctr2" id="i19">4</td><td class="ctr1" id="j24">1</td><td class="ctr2" id="k24">1</td></tr><tr><td id="a32"><a href="Canal.java.html#L64" class="el_method">setNombre(String)</a></td><td class="bar" id="b25"><img src="../.resources/redbar.gif" width="13" height="10" title="13" alt="13"/></td><td class="ctr2" id="c28">0%</td><td class="bar" id="d25"><img src="../.resources/redbar.gif" width="13" height="10" title="2" alt="2"/></td><td class="ctr2" id="e26">0%</td><td class="ctr1" id="f25">2</td><td class="ctr2" id="g26">2</td><td class="ctr1" id="h19">4</td><td class="ctr2" id="i20">4</td><td class="ctr1" id="j25">1</td><td class="ctr2" id="k25">1</td></tr><tr><td id="a9"><a href="Canal.java.html#L223" class="el_method">getDT()</a></td><td class="bar" id="b26"><img src="../.resources/redbar.gif" width="12" height="10" title="12" alt="12"/></td><td class="ctr2" id="c29">0%</td><td class="bar" id="d27"/><td class="ctr2" id="e27">n/a</td><td class="ctr1" id="f26">1</td><td class="ctr2" id="g27">1</td><td class="ctr1" id="h28">1</td><td class="ctr2" id="i29">1</td><td class="ctr1" id="j26">1</td><td class="ctr2" id="k26">1</td></tr><tr><td id="a7"><a href="Canal.java.html#L24" class="el_method">Canal(int, String, String, Privacidad)</a></td><td class="bar" id="b27"><img src="../.resources/redbar.gif" width="5" height="10" title="5" alt="5"/><img src="../.resources/greenbar.gif" width="61" height="10" title="58" alt="58"/></td><td class="ctr2" id="c2">92%</td><td class="bar" id="d26"><img src="../.resources/redbar.gif" width="6" height="10" title="1" alt="1"/><img src="../.resources/greenbar.gif" width="20" height="10" title="3" alt="3"/></td><td class="ctr2" id="e0">75%</td><td class="ctr1" id="f27">1</td><td class="ctr2" id="g11">3</td><td class="ctr1" id="h29">1</td><td class="ctr2" id="i2">15</td><td class="ctr1" id="j33">0</td><td class="ctr2" id="k27">1</td></tr><tr><td id="a31"><a href="Canal.java.html#L60" class="el_method">setId(int)</a></td><td class="bar" id="b28"><img src="../.resources/redbar.gif" width="4" height="10" title="4" alt="4"/></td><td class="ctr2" id="c30">0%</td><td class="bar" id="d28"/><td class="ctr2" id="e28">n/a</td><td class="ctr1" id="f28">1</td><td class="ctr2" id="g28">1</td><td class="ctr1" id="h26">2</td><td class="ctr2" id="i27">2</td><td class="ctr1" id="j27">1</td><td class="ctr2" id="k28">1</td></tr><tr><td id="a30"><a href="Canal.java.html#L71" class="el_method">setDescripcion(String)</a></td><td class="bar" id="b29"><img src="../.resources/redbar.gif" width="4" height="10" title="4" alt="4"/></td><td class="ctr2" id="c31">0%</td><td class="bar" id="d29"/><td class="ctr2" id="e29">n/a</td><td class="ctr1" id="f29">1</td><td class="ctr2" id="g29">1</td><td class="ctr1" id="h27">2</td><td class="ctr2" id="i28">2</td><td class="ctr1" id="j28">1</td><td class="ctr2" id="k29">1</td></tr><tr><td id="a10"><a href="Canal.java.html#L44" class="el_method">getId()</a></td><td class="bar" id="b30"><img src="../.resources/redbar.gif" width="3" height="10" title="3" alt="3"/></td><td class="ctr2" id="c32">0%</td><td class="bar" id="d30"/><td class="ctr2" id="e30">n/a</td><td class="ctr1" id="f30">1</td><td class="ctr2" id="g30">1</td><td class="ctr1" id="h30">1</td><td class="ctr2" id="i30">1</td><td class="ctr1" id="j29">1</td><td class="ctr2" id="k30">1</td></tr><tr><td id="a11"><a href="Canal.java.html#L48" class="el_method">getNombre()</a></td><td class="bar" id="b31"><img src="../.resources/redbar.gif" width="3" height="10" title="3" alt="3"/></td><td class="ctr2" id="c33">0%</td><td class="bar" id="d31"/><td class="ctr2" id="e31">n/a</td><td class="ctr1" id="f31">1</td><td class="ctr2" id="g31">1</td><td class="ctr1" id="h31">1</td><td class="ctr2" id="i31">1</td><td class="ctr1" id="j30">1</td><td class="ctr2" id="k31">1</td></tr><tr><td id="a8"><a href="Canal.java.html#L52" class="el_method">getDescripcion()</a></td><td class="bar" id="b32"><img src="../.resources/redbar.gif" width="3" height="10" title="3" alt="3"/></td><td class="ctr2" id="c34">0%</td><td class="bar" id="d32"/><td class="ctr2" id="e32">n/a</td><td class="ctr1" id="f32">1</td><td class="ctr2" id="g32">1</td><td class="ctr1" id="h32">1</td><td class="ctr2" id="i32">1</td><td class="ctr1" id="j31">1</td><td class="ctr2" id="k32">1</td></tr><tr><td id="a13"><a href="Canal.java.html#L56" class="el_method">getPrivacidad()</a></td><td class="bar" id="b33"><img src="../.resources/redbar.gif" width="3" height="10" title="3" alt="3"/></td><td class="ctr2" id="c35">0%</td><td class="bar" id="d33"/><td class="ctr2" id="e33">n/a</td><td class="ctr1" id="f33">1</td><td class="ctr2" id="g33">1</td><td class="ctr1" id="h33">1</td><td class="ctr2" id="i33">1</td><td class="ctr1" id="j32">1</td><td class="ctr2" id="k33">1</td></tr><tr><td id="a12"><a href="Canal.java.html#L85" class="el_method">getNuevoId()</a></td><td class="bar" id="b34"><img src="../.resources/greenbar.gif" width="6" height="10" title="6" alt="6"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d34"/><td class="ctr2" id="e34">n/a</td><td class="ctr1" id="f34">0</td><td class="ctr2" id="g34">1</td><td class="ctr1" id="h34">0</td><td class="ctr2" id="i34">1</td><td class="ctr1" id="j34">0</td><td class="ctr2" id="k34">1</td></tr><tr><td id="a34"><a href="Canal.java.html#L16" class="el_method">static {...}</a></td><td class="bar" id="b35"><img src="../.resources/greenbar.gif" width="3" height="10" title="3" alt="3"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d35"/><td class="ctr2" id="e35">n/a</td><td class="ctr1" id="f35">0</td><td class="ctr2" id="g35">1</td><td class="ctr1" id="h35">0</td><td class="ctr2" id="i35">1</td><td class="ctr1" id="j35">0</td><td class="ctr2" id="k35">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Canal.java.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Canal.java.html
new file mode 100644
index 0000000000000000000000000000000000000000..cb2a256df61ff246222e9de448c0cc40d2ba5864
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Canal.java.html
@@ -0,0 +1,427 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Canal.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.source.html" class="el_package">Logica.Clases</a> &gt; <span class="el_source">Canal.java</span></div><h1>Canal.java</h1><pre class="source lang-java linenums">package Logica.Clases;
+
+import Logica.Enumerados.Privacidad;
+import Logica.DataType.DtComentario;
+import Logica.DataType.DtListaDeReproduccion;
+import Logica.DataType.DtValoracion;
+import Logica.DataType.DtVideo;
+import Logica.DataType.DtCanal;
+import Logica.Enumerados.TipoListaDeReproduccion;
+import java.util.ArrayList;
+import java.util.Map;
+import java.util.TreeMap;
+
+public class Canal {
+
+<span class="fc" id="L16">    private static int contadorCanal = 1;</span>
+    private int id;
+    private String nombre;
+    private String descripcion;
+    private Privacidad privacidad;
+    private Map&lt;Integer, ListaDeReproduccion&gt; misListas;
+    private Map&lt;Integer, Video&gt; misVideos;
+
+<span class="fc" id="L24">    public Canal(int id, String nombre, String descripcion, Privacidad privacidad) {</span>
+<span class="pc bpc" id="L25" title="1 of 2 branches missed.">        if (nombre.equals(&quot;&quot;)){</span>
+<span class="nc" id="L26">            throw new RuntimeException(&quot;El nombre del canal no puede ser vacio&quot;);</span>
+        }
+        
+<span class="fc" id="L29">        this.id = id;</span>
+<span class="fc" id="L30">        this.nombre = nombre;</span>
+<span class="fc" id="L31">        this.descripcion = descripcion;</span>
+<span class="fc" id="L32">        this.privacidad = privacidad;</span>
+<span class="fc" id="L33">        this.misListas = new TreeMap();</span>
+<span class="fc" id="L34">        this.misVideos = new TreeMap();</span>
+        
+<span class="fc" id="L36">        ArrayList&lt;String&gt; listas = ListaDeReproduccion.listarNombresDeListasPorDefecto();</span>
+<span class="fc bfc" id="L37" title="All 2 branches covered.">        for (String lista : listas) {</span>
+<span class="fc" id="L38">            int nuevoID = ListaDeReproduccion.getNuevoId();</span>
+<span class="fc" id="L39">            this.misListas.put(nuevoID, new ListaDeReproduccion(nuevoID, lista, Privacidad.PRIVADO, TipoListaDeReproduccion.POR_DEFECTO, &quot;UNDEFINED&quot;));</span>
+<span class="fc" id="L40">        }</span>
+<span class="fc" id="L41">    }</span>
+
+    public int getId() {
+<span class="nc" id="L44">        return id;</span>
+    }
+
+    public String getNombre() {
+<span class="nc" id="L48">        return nombre;</span>
+    }
+
+    public String getDescripcion() {
+<span class="nc" id="L52">        return descripcion;</span>
+    }
+
+    public Privacidad getPrivacidad() {
+<span class="nc" id="L56">        return privacidad;</span>
+    }
+
+    public void setId(int id) {
+<span class="nc" id="L60">        this.id = id;</span>
+<span class="nc" id="L61">    }</span>
+
+    public void setNombre(String nombre) {
+<span class="nc bnc" id="L64" title="All 2 branches missed.">         if (nombre.equals(&quot;&quot;)) {</span>
+<span class="nc" id="L65">            throw new RuntimeException(&quot;El nombre del canal no puede ser vacio&quot;);</span>
+        }
+<span class="nc" id="L67">        this.nombre = nombre;</span>
+<span class="nc" id="L68">    }</span>
+
+    public void setDescripcion(String descripcion) {
+<span class="nc" id="L71">        this.descripcion = descripcion;</span>
+<span class="nc" id="L72">    }</span>
+
+    public void setPrivacidad(Privacidad privacidad) {
+        // Si el canal es publico y se va a cambiar a privado, se deben cambiar a privado todos los videos del canal
+<span class="nc bnc" id="L76" title="All 2 branches missed.">        if (privacidad == Privacidad.PRIVADO){</span>
+<span class="nc bnc" id="L77" title="All 2 branches missed.">            for (Map.Entry&lt;Integer, Video&gt; m : misVideos.entrySet()) {</span>
+<span class="nc" id="L78">                m.getValue().setPrivacidad(Privacidad.PRIVADO);</span>
+<span class="nc" id="L79">            }</span>
+        }
+<span class="nc" id="L81">        this.privacidad = privacidad;</span>
+<span class="nc" id="L82">    }</span>
+
+    public static int getNuevoId() {
+<span class="fc" id="L85">        return contadorCanal++;</span>
+    }
+
+    //-----------------------------------------------------------------------------
+    public void actualizarListasPorDefecto() {
+<span class="nc" id="L90">        ArrayList&lt;String&gt; listas = ListaDeReproduccion.listarNombresDeListasPorDefecto();</span>
+        
+<span class="nc bnc" id="L92" title="All 2 branches missed.">        for (Map.Entry&lt;Integer, ListaDeReproduccion&gt; l : misListas.entrySet()) {</span>
+<span class="nc bnc" id="L93" title="All 2 branches missed.">            if (l.getValue().getTipo() == TipoListaDeReproduccion.POR_DEFECTO) {</span>
+<span class="nc" id="L94">                listas.remove(l.getValue().getNombre());</span>
+            }
+<span class="nc" id="L96">        }</span>
+
+<span class="nc bnc" id="L98" title="All 2 branches missed.">        for (String lista : listas) {</span>
+<span class="nc" id="L99">            int nuevoID = ListaDeReproduccion.getNuevoId();</span>
+<span class="nc" id="L100">            this.misListas.put(nuevoID, new ListaDeReproduccion(nuevoID, lista, Privacidad.PRIVADO, TipoListaDeReproduccion.POR_DEFECTO, &quot;UNDEFINED&quot;));</span>
+<span class="nc" id="L101">        }</span>
+<span class="nc" id="L102">    }</span>
+
+    public void agregarComentarioAVideo(int id, DtComentario comentario, Usuario usuario) {
+<span class="nc bnc" id="L105" title="All 2 branches missed.">        if (this.misVideos.containsKey(id)) {</span>
+<span class="nc" id="L106">            this.misVideos.get(id).agregarComentario(comentario, usuario);</span>
+        } else {
+<span class="nc" id="L108">            throw new RuntimeException(&quot;El video no pertenece al canal&quot;);</span>
+        }
+<span class="nc" id="L110">    }</span>
+
+    public void agregarComentarioAVideo(int id, int idComentario, DtComentario comentario, Usuario usuario) {
+<span class="nc bnc" id="L113" title="All 2 branches missed.">        if (this.misVideos.containsKey(id)) {</span>
+<span class="nc" id="L114">            this.misVideos.get(id).agregarComentario(idComentario, comentario, usuario);</span>
+        } else {
+<span class="nc" id="L116">            throw new RuntimeException(&quot;El video no pertenece al canal&quot;);</span>
+        }
+<span class="nc" id="L118">    }</span>
+
+    public void agregarListaParticular(DtListaDeReproduccion listaReproduccion) {
+<span class="nc" id="L121">        int idLdr = ListaDeReproduccion.getNuevoId();</span>
+<span class="nc bnc" id="L122" title="All 2 branches missed.">        if (listaReproduccion == null){</span>
+<span class="nc" id="L123">            throw new RuntimeException(&quot;La lista de reprodccion es null&quot;);</span>
+        }
+<span class="nc bnc" id="L125" title="All 2 branches missed.">        if (listaReproduccion.getNombre().equals(&quot;&quot;)){</span>
+<span class="nc" id="L126">            throw new RuntimeException(&quot;El nombre no puede ser vacio&quot;);</span>
+        }
+<span class="nc bnc" id="L128" title="All 4 branches missed.">        if (this.privacidad == Privacidad.PRIVADO &amp;&amp; listaReproduccion.getPrivacidad() == Privacidad.PUBLICO){</span>
+<span class="nc" id="L129">            throw new RuntimeException(&quot;No se puede agregar una lista de reproduccion publica a un canal privado&quot;);</span>
+        }
+<span class="nc bnc" id="L131" title="All 2 branches missed.">        if (listaReproduccion.getCategoria().equals(&quot;&quot;)){</span>
+<span class="nc" id="L132">            throw new RuntimeException(&quot;La categoria no puede ser vacia&quot;);</span>
+        }
+        
+         // un canal no puede tener dos videos con el mismo nomre
+<span class="nc bnc" id="L136" title="All 2 branches missed.">         for (Map.Entry&lt;Integer, ListaDeReproduccion&gt; v : misListas.entrySet()){</span>
+<span class="nc bnc" id="L137" title="All 2 branches missed.">             if (v.getValue().getNombre().equals(listaReproduccion.getNombre())){</span>
+<span class="nc" id="L138">                 throw new RuntimeException(&quot;El canal ya posee una lista de reproduccion con ese nombre&quot;);</span>
+             }
+<span class="nc" id="L140">         }</span>
+         
+<span class="nc" id="L142">        ListaDeReproduccion ldr = new ListaDeReproduccion(</span>
+                idLdr, 
+<span class="nc" id="L144">                listaReproduccion.getNombre(), </span>
+<span class="nc" id="L145">                listaReproduccion.getPrivacidad(), </span>
+<span class="nc" id="L146">                listaReproduccion.getTipo(), </span>
+<span class="nc" id="L147">                listaReproduccion.getCategoria());</span>
+<span class="nc" id="L148">        this.misListas.put(idLdr, ldr);</span>
+<span class="nc" id="L149">    }</span>
+
+    public void quitarValoracion(int idVideo, String nickname) {
+<span class="nc bnc" id="L152" title="All 2 branches missed.">        if (this.misVideos.containsKey(idVideo)) {</span>
+<span class="nc" id="L153">            this.misVideos.get(idVideo).quitarValoracion(nickname);</span>
+        } else {
+<span class="nc" id="L155">            throw new RuntimeException(&quot;El video no pertenece al canal&quot;);</span>
+        }
+        
+<span class="nc" id="L158">    }</span>
+
+    public void agregarModificarValoracion(int id, DtValoracion valoracion, Usuario usuario) {
+<span class="nc bnc" id="L161" title="All 2 branches missed.">        if (this.misVideos.containsKey(id)) {</span>
+<span class="nc" id="L162">            this.misVideos.get(id).agregarModificarValoracion(valoracion, usuario);</span>
+        } else {
+<span class="nc" id="L164">            throw new RuntimeException(&quot;El video no pertenece al canal&quot;);</span>
+        }
+        
+<span class="nc" id="L167">    }</span>
+
+    public void agregarVideo(DtVideo video) {
+<span class="nc bnc" id="L170" title="All 2 branches missed.">        if(video== null){</span>
+<span class="nc" id="L171">            throw new RuntimeException(&quot;El Datatype del video es null&quot;);</span>
+        }
+<span class="nc bnc" id="L173" title="All 2 branches missed.">        if (video.getNombre().equals(&quot;&quot;)){</span>
+<span class="nc" id="L174">            throw new RuntimeException(&quot;El nombre no puede ser vacio&quot;);</span>
+        }
+<span class="nc bnc" id="L176" title="All 2 branches missed.">        if(video.getDuracion() == null){</span>
+<span class="nc" id="L177">            throw new RuntimeException(&quot;La duracion no puede ser null&quot;);</span>
+        }
+<span class="nc bnc" id="L179" title="All 2 branches missed.">        if(video.getFechaPublicacion() == null){</span>
+<span class="nc" id="L180">            throw new RuntimeException(&quot;La fecha de publicion no puede ser null&quot;);</span>
+        }
+<span class="nc bnc" id="L182" title="All 2 branches missed.">         if (video.getUrlVideoOriginal().equals(&quot;&quot;)){</span>
+<span class="nc" id="L183">            throw new RuntimeException(&quot;La direccion URL no puede ser vacia&quot;);</span>
+        }
+<span class="nc bnc" id="L185" title="All 2 branches missed.">         if (video.getCategoria().equals(&quot;&quot;)){</span>
+<span class="nc" id="L186">            throw new RuntimeException(&quot;La categoría no puede ser vacía&quot;);</span>
+        }
+        
+         // un canal no puede tener dos videos con el mismo nomre
+<span class="nc bnc" id="L190" title="All 2 branches missed.">         for (Map.Entry&lt;Integer, Video&gt; v : misVideos.entrySet()){</span>
+<span class="nc bnc" id="L191" title="All 2 branches missed.">             if (v.getValue().getNombre().equals(video.getNombre())){</span>
+<span class="nc" id="L192">                 throw new RuntimeException(&quot;El canal ya posee un video con ese nombre&quot;);</span>
+             }
+<span class="nc" id="L194">         }</span>
+         
+<span class="nc" id="L196">        int idVideo = Video.getNuevoId();</span>
+<span class="nc" id="L197">        Video vd = new Video(idVideo, </span>
+<span class="nc" id="L198">                video.getNombre(), </span>
+<span class="nc" id="L199">                video.getDescripcion(), </span>
+<span class="nc" id="L200">                video.getDuracion(), </span>
+<span class="nc" id="L201">                video.getFechaPublicacion(), </span>
+<span class="nc" id="L202">                video.getUrlVideoOriginal(), </span>
+<span class="nc" id="L203">                video.getCategoria());</span>
+        
+        // si el canal es privado, el video debera serlo tambien
+        // si el canal es publico, el video sera lo definido en el DataType
+<span class="nc bnc" id="L207" title="All 2 branches missed.">         if (this.privacidad == Privacidad.PRIVADO){</span>
+<span class="nc" id="L208">             vd.setPrivacidad(Privacidad.PRIVADO);</span>
+         }
+        
+<span class="nc" id="L211">        this.misVideos.put(idVideo, vd);</span>
+<span class="nc" id="L212">    }</span>
+
+    public void agregarVideoALista(int id, Video video) {
+<span class="nc bnc" id="L215" title="All 2 branches missed.">        if (this.misListas.containsKey(id)) {</span>
+<span class="nc" id="L216">            this.misListas.get(id).agregarVideoA(video);</span>
+        } else {
+<span class="nc" id="L218">            throw new RuntimeException(&quot;La lista no pertenece al canal&quot;);</span>
+        }
+<span class="nc" id="L220">    }</span>
+
+    public DtCanal getDT() {
+<span class="nc" id="L223">        return new DtCanal(this.id, </span>
+                this.nombre, 
+                this.descripcion, 
+                this.privacidad);
+    }
+
+    public ArrayList&lt;DtComentario&gt; listarComentariosDeVideo(int id) {
+<span class="nc bnc" id="L230" title="All 2 branches missed.">        if (this.misVideos.containsKey(id)) {</span>
+<span class="nc" id="L231">            return this.misVideos.get(id).listarComentarios();</span>
+        } else {
+<span class="nc" id="L233">            throw new RuntimeException(&quot;El video no pertenece al canal&quot;);</span>
+        }
+    }
+
+    public ArrayList&lt;DtListaDeReproduccion&gt; listarListasDeReproduccion(boolean porDefecto) {
+<span class="nc" id="L238">        ArrayList&lt;DtListaDeReproduccion&gt; ret = new ArrayList();</span>
+        
+<span class="nc bnc" id="L240" title="All 2 branches missed.">        for (Map.Entry&lt;Integer, ListaDeReproduccion&gt; m : misListas.entrySet()) {</span>
+<span class="nc bnc" id="L241" title="All 4 branches missed.">            if(porDefecto &amp;&amp; m.getValue().getTipo()==TipoListaDeReproduccion.PARTICULAR){</span>
+<span class="nc" id="L242">                continue;</span>
+            }
+<span class="nc" id="L244">            ret.add(m.getValue().getDt());</span>
+<span class="nc" id="L245">        }</span>
+
+<span class="nc" id="L247">        return ret;</span>
+    }
+
+    public ArrayList&lt;DtValoracion&gt; listarValoracionesDeVideo(int id) {
+<span class="nc bnc" id="L251" title="All 2 branches missed.">        if (this.misVideos.containsKey(id)) {</span>
+<span class="nc" id="L252">            return this.misVideos.get(id).listarValoraciones();</span>
+        } else {
+<span class="nc" id="L254">            throw new RuntimeException(&quot;El video no pertenece al canal&quot;);</span>
+        }
+    }
+
+    public ArrayList&lt;DtVideo&gt; listarVideos() {
+<span class="nc" id="L259">        ArrayList&lt;DtVideo&gt; ret = new ArrayList();</span>
+
+        // para cada elemento en misVideos
+        /**
+         * este for no es normal, se declara la variable m que es de tipo
+         * Entrada de Map (como un nodo arbol), y autmaticamente la hace avanzar
+         * por todas las entradas de la coleccion. De la entrada actual se puede
+         * obtener la Key y el Valor almacenado
+         */
+<span class="nc bnc" id="L268" title="All 2 branches missed.">        for (Map.Entry&lt;Integer, Video&gt; m : misVideos.entrySet()) {</span>
+            // hace un getDT y lo agrega a la coleccion de retorno
+<span class="nc" id="L270">            ret.add(m.getValue().getDt());</span>
+<span class="nc" id="L271">        }</span>
+<span class="nc" id="L272">        return ret;</span>
+    }
+
+    public ArrayList&lt;DtVideo&gt; listarVideosDeListaDeReproduccion(int id) {
+<span class="nc bnc" id="L276" title="All 2 branches missed.">        if (this.misListas.containsKey(id)) {</span>
+<span class="nc" id="L277">            return this.misListas.get(id).listarVideos();</span>
+        } else {
+<span class="nc" id="L279">            throw new RuntimeException(&quot;La lista de reproduccion no pertenece al canal&quot;);</span>
+        }
+    }
+
+    public void modificar(DtCanal canal) {
+<span class="nc bnc" id="L284" title="All 2 branches missed.">        if (canal.getNombre().equals(&quot;&quot;)) {</span>
+<span class="nc" id="L285">            throw new RuntimeException(&quot;El nombre no puede ser vacio&quot;);</span>
+        }
+        
+        // Si el canal es publico y se va a cambiar a privado, se deben cambiar a privado todos los videos del canal
+<span class="nc bnc" id="L289" title="All 4 branches missed.">        if (this.privacidad == Privacidad.PUBLICO &amp;&amp; canal.getPrivacidad() == Privacidad.PRIVADO){</span>
+<span class="nc bnc" id="L290" title="All 2 branches missed.">            for (Map.Entry&lt;Integer, Video&gt; m : misVideos.entrySet()) {</span>
+<span class="nc" id="L291">                m.getValue().setPrivacidad(Privacidad.PRIVADO);</span>
+<span class="nc" id="L292">            }</span>
+<span class="nc bnc" id="L293" title="All 2 branches missed.">            for (Map.Entry&lt;Integer, ListaDeReproduccion&gt; m : misListas.entrySet()) {</span>
+<span class="nc" id="L294">                m.getValue().setPrivacidad(Privacidad.PRIVADO);</span>
+<span class="nc" id="L295">            }</span>
+        }
+        
+<span class="nc" id="L298">        this.nombre = canal.getNombre();</span>
+<span class="nc" id="L299">        this.descripcion = canal.getDescripcion();</span>
+<span class="nc" id="L300">        this.privacidad = canal.getPrivacidad();</span>
+<span class="nc" id="L301">    }</span>
+
+    public void modificarListaDeReproduccion(DtListaDeReproduccion ldr) {
+<span class="nc bnc" id="L304" title="All 2 branches missed.">        if (ldr == null) {</span>
+<span class="nc" id="L305">            throw new RuntimeException(&quot;El Datatype de la lista de reprodccion es null&quot;);</span>
+        }
+<span class="nc bnc" id="L307" title="All 2 branches missed.">        if (this.misListas.containsKey(ldr.getId())) {</span>
+            
+<span class="nc bnc" id="L309" title="All 4 branches missed.">            if (this.privacidad == Privacidad.PRIVADO &amp;&amp; ldr.getPrivacidad() == Privacidad.PUBLICO){</span>
+<span class="nc" id="L310">                throw new RuntimeException(&quot;No se puede hacer publica una lista de reproduccion de un canal privado&quot;);</span>
+            }
+            
+<span class="nc" id="L313">            this.misListas.get(ldr.getId()).modificar(ldr);</span>
+        } else {
+<span class="nc" id="L315">            throw new RuntimeException(&quot;La lista de reproduccion no pertenece al canal&quot;);</span>
+        }
+<span class="nc" id="L317">    }</span>
+
+    public void modificarVideo(DtVideo video) {
+<span class="nc bnc" id="L320" title="All 2 branches missed.">        if(video== null){</span>
+<span class="nc" id="L321">            throw new RuntimeException(&quot;El Datatype del video es null&quot;);</span>
+        }
+        
+<span class="nc bnc" id="L324" title="All 2 branches missed.">        if (this.misVideos.containsKey(video.getId())) {</span>
+            
+<span class="nc bnc" id="L326" title="All 4 branches missed.">            if (this.privacidad == Privacidad.PRIVADO &amp;&amp; video.getPrivacidad() == Privacidad.PUBLICO){</span>
+<span class="nc" id="L327">                throw new RuntimeException(&quot;No se puede hacer publico un video de un canal privado&quot;);</span>
+            }
+            
+<span class="nc" id="L330">            this.misVideos.get(video.getId()).modificar(video);</span>
+        } else {
+<span class="nc" id="L332">            throw new RuntimeException(&quot;El video no pertenece al canal&quot;);</span>
+        }
+<span class="nc" id="L334">    }</span>
+    
+    public DtListaDeReproduccion obtenerListaDeReproduccion(int id){
+<span class="nc" id="L337">        ListaDeReproduccion ldr = misListas.get(id);</span>
+<span class="nc bnc" id="L338" title="All 2 branches missed.">        if (ldr == null){</span>
+<span class="nc" id="L339">            throw new RuntimeException(&quot;La lista de reproduccion no pertenece al canal&quot;);</span>
+        }else{
+<span class="nc" id="L341">            return ldr.getDt();</span>
+        }
+    }
+    
+    public ArrayList&lt;DtListaDeReproduccion&gt; obtenerListasEnCategoria(String cat) {
+<span class="nc" id="L346">        ArrayList&lt;DtListaDeReproduccion&gt; ret = new ArrayList();</span>
+
+        // para cada elemento en misVideos
+        /**
+         * este for no es normal, se declara la variable m que es de tipo
+         * Entrada de Map (como un nodo arbol), y autmaticamente la hace avanzar
+         * por todas las entradas de la coleccion. De la entrada actual se puede
+         * obtener la Key y el Valor almacenado
+         */
+<span class="nc bnc" id="L355" title="All 2 branches missed.">        for (Map.Entry&lt;Integer, ListaDeReproduccion&gt; m : misListas.entrySet()) {</span>
+            // hace un getDT y lo agrega a la coleccion de retorno
+<span class="nc bnc" id="L357" title="All 2 branches missed.">            if (m.getValue().getCategoria().equals(cat)) {</span>
+<span class="nc" id="L358">                ret.add(m.getValue().getDt());</span>
+            }
+<span class="nc" id="L360">        }</span>
+        
+<span class="nc" id="L362">        return ret;</span>
+    }
+
+    public DtVideo obtenerDtVideo(int id) {
+<span class="nc bnc" id="L366" title="All 2 branches missed.">        if (this.misVideos.containsKey(id)) {</span>
+<span class="nc" id="L367">            return this.misVideos.get(id).getDt();</span>
+        } else {
+<span class="nc" id="L369">            throw new RuntimeException(&quot;El video no pertenece al canal&quot;);</span>
+        }
+    }
+
+    public Video obtenerVideo(int id) {
+<span class="nc bnc" id="L374" title="All 2 branches missed.">        if (this.misVideos.containsKey(id)) {</span>
+<span class="nc" id="L375">            return this.misVideos.get(id);</span>
+        } else {
+<span class="nc" id="L377">            throw new RuntimeException(&quot;El video no pertenece al canal&quot;);</span>
+        }
+    }
+
+    public ArrayList&lt;DtVideo&gt; obtenerVideosEnCategoria(String cat) {
+<span class="nc" id="L382">        ArrayList&lt;DtVideo&gt; ret = new ArrayList();</span>
+
+        // para cada elemento en misVideos
+        /**
+         * este for no es normal, se declara la variable m que es de tipo
+         * Entrada de Map (como un nodo arbol), y autmaticamente la hace avanzar
+         * por todas las entradas de la coleccion. De la entrada actual se puede
+         * obtener la Key y el Valor almacenado
+         */
+<span class="nc bnc" id="L391" title="All 2 branches missed.">        for (Map.Entry&lt;Integer, Video&gt; m : misVideos.entrySet()) {</span>
+            // hace un getDT y lo agrega a la coleccion de retorno
+<span class="nc bnc" id="L393" title="All 2 branches missed.">            if (m.getValue().getCategoria().equals(cat)) {</span>
+<span class="nc" id="L394">                ret.add(m.getValue().getDt());</span>
+            }
+<span class="nc" id="L396">        }</span>
+        
+<span class="nc" id="L398">        return ret;</span>
+    }
+
+    public void quitarVideoDeListaDeReproduccion(int idLista, int idVideo) {
+<span class="nc bnc" id="L402" title="All 2 branches missed.">        if (this.misListas.containsKey(idLista)) {</span>
+<span class="nc" id="L403">            this.misListas.get(idLista).quitarVideo(idVideo);</span>
+        } else {
+<span class="nc" id="L405">            throw new RuntimeException(&quot;La lista de reproduccion no pertenece al canal&quot;);</span>
+        }
+<span class="nc" id="L407">    }</span>
+
+    public boolean validarListaParticular(String nombreLista) {
+<span class="nc bnc" id="L410" title="All 2 branches missed.">        for (Map.Entry&lt;Integer, ListaDeReproduccion&gt; l : misListas.entrySet()) {</span>
+<span class="nc bnc" id="L411" title="All 4 branches missed.">            if (l.getValue().getTipo() == TipoListaDeReproduccion.PARTICULAR &amp;&amp; l.getValue().getNombre().equals(nombreLista)){</span>
+<span class="nc" id="L412">                return true;</span>
+            }
+<span class="nc" id="L414">        }</span>
+<span class="nc" id="L415">        return false;</span>
+    }
+
+    public DtValoracion obtenerValoracion(int id, String nickname) {
+<span class="nc bnc" id="L419" title="All 2 branches missed.">        if (this.misVideos.containsKey(id)) {</span>
+<span class="nc" id="L420">            return this.misVideos.get(id).obtenerValoracion(nickname);</span>
+        } else {
+<span class="nc" id="L422">            throw new RuntimeException(&quot;El video no pertenece al canal&quot;);</span>
+        }
+    }
+
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Categoria.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Categoria.html
new file mode 100644
index 0000000000000000000000000000000000000000..35b57a33e3f390f4ecba795b02dd4f199df16b9e
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Categoria.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Categoria</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.html" class="el_package">Logica.Clases</a> &gt; <span class="el_class">Categoria</span></div><h1>Categoria</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">9 of 9</td><td class="ctr2">0%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">2</td><td class="ctr2">2</td><td class="ctr1">4</td><td class="ctr2">4</td><td class="ctr1">2</td><td class="ctr2">2</td></tr></tfoot><tbody><tr><td id="a0"><a href="Categoria.java.html#L6" class="el_method">Categoria(String)</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="120" height="10" title="6" alt="6"/></td><td class="ctr2" id="c0">0%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h0">3</td><td class="ctr2" id="i0">3</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a1"><a href="Categoria.java.html#L11" class="el_method">getNombre()</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="60" height="10" title="3" alt="3"/></td><td class="ctr2" id="c1">0%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Categoria.java.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Categoria.java.html
new file mode 100644
index 0000000000000000000000000000000000000000..4871f42102e765dec4be047d32f1154082112209
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Categoria.java.html
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Categoria.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.source.html" class="el_package">Logica.Clases</a> &gt; <span class="el_source">Categoria.java</span></div><h1>Categoria.java</h1><pre class="source lang-java linenums">package Logica.Clases;
+
+public class Categoria {
+    private String nombre;
+
+<span class="nc" id="L6">    public Categoria(String nombre) {</span>
+<span class="nc" id="L7">        this.nombre = nombre;</span>
+<span class="nc" id="L8">    }</span>
+
+    public String getNombre() {
+<span class="nc" id="L11">        return nombre;</span>
+    }
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Comentario.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Comentario.html
new file mode 100644
index 0000000000000000000000000000000000000000..43bf0bf62e8593eb5768182e1415b714fe6cd885
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Comentario.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Comentario</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.html" class="el_package">Logica.Clases</a> &gt; <span class="el_class">Comentario</span></div><h1>Comentario</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">0 of 200</td><td class="ctr2">100%</td><td class="bar">0 of 16</td><td class="ctr2">100%</td><td class="ctr1">0</td><td class="ctr2">20</td><td class="ctr1">0</td><td class="ctr2">41</td><td class="ctr1">0</td><td class="ctr2">12</td></tr></tfoot><tbody><tr><td id="a0"><a href="Comentario.java.html#L61" class="el_method">agregarSubComentario(int, DtComentario, Usuario)</a></td><td class="bar" id="b0"><img src="../.resources/greenbar.gif" width="120" height="10" title="62" alt="62"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d0"><img src="../.resources/greenbar.gif" width="120" height="10" title="10" alt="10"/></td><td class="ctr2" id="e0">100%</td><td class="ctr1" id="f0">0</td><td class="ctr2" id="g0">6</td><td class="ctr1" id="h0">0</td><td class="ctr2" id="i0">14</td><td class="ctr1" id="j0">0</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a1"><a href="Comentario.java.html#L18" class="el_method">Comentario(int, Date, String, int, Usuario)</a></td><td class="bar" id="b1"><img src="../.resources/greenbar.gif" width="71" height="10" title="37" alt="37"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d1"><img src="../.resources/greenbar.gif" width="48" height="10" title="4" alt="4"/></td><td class="ctr2" id="e1">100%</td><td class="ctr1" id="f1">0</td><td class="ctr2" id="g1">3</td><td class="ctr1" id="h1">0</td><td class="ctr2" id="i1">12</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a9"><a href="Comentario.java.html#L92" class="el_method">listarSubComentarios()</a></td><td class="bar" id="b2"><img src="../.resources/greenbar.gif" width="63" height="10" title="33" alt="33"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d2"><img src="../.resources/greenbar.gif" width="24" height="10" title="2" alt="2"/></td><td class="ctr2" id="e2">100%</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g2">2</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i2">5</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a11"><a href="Comentario.java.html#L57" class="el_method">toString()</a></td><td class="bar" id="b3"><img src="../.resources/greenbar.gif" width="52" height="10" title="27" alt="27"/></td><td class="ctr2" id="c3">100%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i4">1</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a2"><a href="Comentario.java.html#L87" class="el_method">getDT()</a></td><td class="bar" id="b4"><img src="../.resources/greenbar.gif" width="32" height="10" title="17" alt="17"/></td><td class="ctr2" id="c4">100%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">0</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h4">0</td><td class="ctr2" id="i3">2</td><td class="ctr1" id="j4">0</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a6"><a href="Comentario.java.html#L34" class="el_method">getNuevoID()</a></td><td class="bar" id="b5"><img src="../.resources/greenbar.gif" width="11" height="10" title="6" alt="6"/></td><td class="ctr2" id="c5">100%</td><td class="bar" id="d5"/><td class="ctr2" id="e5">n/a</td><td class="ctr1" id="f5">0</td><td class="ctr2" id="g5">1</td><td class="ctr1" id="h5">0</td><td class="ctr2" id="i5">1</td><td class="ctr1" id="j5">0</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a4"><a href="Comentario.java.html#L38" class="el_method">getId()</a></td><td class="bar" id="b6"><img src="../.resources/greenbar.gif" width="5" height="10" title="3" alt="3"/></td><td class="ctr2" id="c6">100%</td><td class="bar" id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f6">0</td><td class="ctr2" id="g6">1</td><td class="ctr1" id="h6">0</td><td class="ctr2" id="i6">1</td><td class="ctr1" id="j6">0</td><td class="ctr2" id="k6">1</td></tr><tr><td id="a3"><a href="Comentario.java.html#L42" class="el_method">getFecha()</a></td><td class="bar" id="b7"><img src="../.resources/greenbar.gif" width="5" height="10" title="3" alt="3"/></td><td class="ctr2" id="c7">100%</td><td class="bar" id="d7"/><td class="ctr2" id="e7">n/a</td><td class="ctr1" id="f7">0</td><td class="ctr2" id="g7">1</td><td class="ctr1" id="h7">0</td><td class="ctr2" id="i7">1</td><td class="ctr1" id="j7">0</td><td class="ctr2" id="k7">1</td></tr><tr><td id="a7"><a href="Comentario.java.html#L45" class="el_method">getTexto()</a></td><td class="bar" id="b8"><img src="../.resources/greenbar.gif" width="5" height="10" title="3" alt="3"/></td><td class="ctr2" id="c8">100%</td><td class="bar" id="d8"/><td class="ctr2" id="e8">n/a</td><td class="ctr1" id="f8">0</td><td class="ctr2" id="g8">1</td><td class="ctr1" id="h8">0</td><td class="ctr2" id="i8">1</td><td class="ctr1" id="j8">0</td><td class="ctr2" id="k8">1</td></tr><tr><td id="a5"><a href="Comentario.java.html#L48" class="el_method">getNivelSubComentario()</a></td><td class="bar" id="b9"><img src="../.resources/greenbar.gif" width="5" height="10" title="3" alt="3"/></td><td class="ctr2" id="c9">100%</td><td class="bar" id="d9"/><td class="ctr2" id="e9">n/a</td><td class="ctr1" id="f9">0</td><td class="ctr2" id="g9">1</td><td class="ctr1" id="h9">0</td><td class="ctr2" id="i9">1</td><td class="ctr1" id="j9">0</td><td class="ctr2" id="k9">1</td></tr><tr><td id="a8"><a href="Comentario.java.html#L52" class="el_method">getUsr()</a></td><td class="bar" id="b10"><img src="../.resources/greenbar.gif" width="5" height="10" title="3" alt="3"/></td><td class="ctr2" id="c10">100%</td><td class="bar" id="d10"/><td class="ctr2" id="e10">n/a</td><td class="ctr1" id="f10">0</td><td class="ctr2" id="g10">1</td><td class="ctr1" id="h10">0</td><td class="ctr2" id="i10">1</td><td class="ctr1" id="j10">0</td><td class="ctr2" id="k10">1</td></tr><tr><td id="a10"><a href="Comentario.java.html#L9" class="el_method">static {...}</a></td><td class="bar" id="b11"><img src="../.resources/greenbar.gif" width="5" height="10" title="3" alt="3"/></td><td class="ctr2" id="c11">100%</td><td class="bar" id="d11"/><td class="ctr2" id="e11">n/a</td><td class="ctr1" id="f11">0</td><td class="ctr2" id="g11">1</td><td class="ctr1" id="h11">0</td><td class="ctr2" id="i11">1</td><td class="ctr1" id="j11">0</td><td class="ctr2" id="k11">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Comentario.java.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Comentario.java.html
new file mode 100644
index 0000000000000000000000000000000000000000..b0a81ca70e34a324ce05ec6641b93130798a83b3
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Comentario.java.html
@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Comentario.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.source.html" class="el_package">Logica.Clases</a> &gt; <span class="el_source">Comentario.java</span></div><h1>Comentario.java</h1><pre class="source lang-java linenums">package Logica.Clases;
+
+import Logica.DataType.DtComentario;
+import java.sql.Date;
+import java.util.ArrayList;
+
+public class Comentario {
+
+<span class="fc" id="L9">    private static int contadorComentarios = 1;</span>
+
+    private int id;
+    private Date fecha;
+    private String texto;
+    private int nivelSubComentario;
+    private Usuario usr;
+    private ArrayList&lt;Comentario&gt; misComentario;
+
+<span class="fc" id="L18">    public Comentario(int id, Date fecha, String texto, int nivelSubComentario, Usuario usr) {</span>
+<span class="fc bfc" id="L19" title="All 2 branches covered.">        if(usr==null){</span>
+<span class="fc" id="L20">            throw new RuntimeException(&quot;Usuario No puede ser null&quot;);</span>
+        }
+<span class="fc bfc" id="L22" title="All 2 branches covered.">        if(fecha==null){</span>
+<span class="fc" id="L23">            throw new RuntimeException(&quot;Date No puede ser null&quot;);</span>
+        }
+<span class="fc" id="L25">        this.id = id;</span>
+<span class="fc" id="L26">        this.fecha = fecha;</span>
+<span class="fc" id="L27">        this.texto = texto;</span>
+<span class="fc" id="L28">        this.nivelSubComentario = nivelSubComentario;</span>
+<span class="fc" id="L29">        this.usr = usr;</span>
+<span class="fc" id="L30">        this.misComentario = new ArrayList();</span>
+<span class="fc" id="L31">    }</span>
+
+    public static int getNuevoID() {
+<span class="fc" id="L34">        return contadorComentarios++;</span>
+    }
+
+    public int getId() {
+<span class="fc" id="L38">        return id;</span>
+    }
+
+    public Date getFecha() {
+<span class="fc" id="L42">        return fecha;</span>
+    }
+    public String getTexto() {
+<span class="fc" id="L45">        return texto;</span>
+    }
+    public int getNivelSubComentario() {
+<span class="fc" id="L48">        return nivelSubComentario;</span>
+    }
+
+    public Usuario getUsr() {
+<span class="fc" id="L52">        return usr;</span>
+    }
+
+    @Override
+    public String toString() {
+<span class="fc" id="L57">        return &quot;Comentario{&quot; + &quot;id=&quot; + id + &quot;, fecha=&quot; + fecha + &quot;, texto=&quot; + texto + &quot;, nivelSubComentario=&quot; + nivelSubComentario + '}';</span>
+    }
+
+    public boolean agregarSubComentario(int idComPadre, DtComentario dtC, Usuario usr) {
+<span class="fc bfc" id="L61" title="All 2 branches covered.">        if(dtC==null){</span>
+<span class="fc" id="L62">            throw new RuntimeException(&quot;DtComentario No puede ser null&quot;);</span>
+        }
+<span class="fc bfc" id="L64" title="All 2 branches covered.">        if(usr==null){</span>
+<span class="fc" id="L65">            throw new RuntimeException(&quot;Usuario No puede ser null&quot;);</span>
+        }
+<span class="fc bfc" id="L67" title="All 2 branches covered.">        if (this.id == idComPadre) {</span>
+<span class="fc" id="L68">            Comentario com = new Comentario(Comentario.getNuevoID(),</span>
+<span class="fc" id="L69">                    dtC.getFecha(),</span>
+<span class="fc" id="L70">                    dtC.getTexto(),</span>
+                    this.nivelSubComentario + 1,
+                    usr);
+<span class="fc" id="L73">            this.misComentario.add(com);</span>
+<span class="fc" id="L74">            return true;</span>
+        } else {
+
+<span class="fc bfc" id="L77" title="All 2 branches covered.">            for (int i = 0; i &lt; misComentario.size(); i++) {</span>
+<span class="fc bfc" id="L78" title="All 2 branches covered.">                if (this.misComentario.get(i).agregarSubComentario(idComPadre, dtC, usr)) {</span>
+<span class="fc" id="L79">                    return true;</span>
+                }
+            }
+<span class="fc" id="L82">            return false;</span>
+        }
+    }
+
+    public DtComentario getDT() {
+<span class="fc" id="L87">        DtComentario dtC = new DtComentario(this.id, this.usr.getNickname(), this.fecha, this.texto, this.nivelSubComentario);</span>
+<span class="fc" id="L88">        return dtC;</span>
+    }
+
+    public ArrayList&lt;DtComentario&gt; listarSubComentarios() {
+<span class="fc" id="L92">        ArrayList lsc = new ArrayList();</span>
+
+<span class="fc bfc" id="L94" title="All 2 branches covered.">        for (int i = 0; i &lt; this.misComentario.size(); i++) {</span>
+<span class="fc" id="L95">            lsc.add(this.misComentario.get(i).getDT());</span>
+<span class="fc" id="L96">            lsc.addAll(this.misComentario.get(i).listarSubComentarios());</span>
+        }
+<span class="fc" id="L98">        return lsc;</span>
+    }
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/ListaDeReproduccion.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/ListaDeReproduccion.html
new file mode 100644
index 0000000000000000000000000000000000000000..f7fdb9401324b3106cfe9ee76035bd9cdaaed9c8
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/ListaDeReproduccion.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>ListaDeReproduccion</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.html" class="el_package">Logica.Clases</a> &gt; <span class="el_class">ListaDeReproduccion</span></div><h1>ListaDeReproduccion</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">188 of 252</td><td class="ctr2">25%</td><td class="bar">16 of 20</td><td class="ctr2">20%</td><td class="ctr1">23</td><td class="ctr2">27</td><td class="ctr1">37</td><td class="ctr2">53</td><td class="ctr1">13</td><td class="ctr2">17</td></tr></tfoot><tbody><tr><td id="a12"><a href="ListaDeReproduccion.java.html#L120" class="el_method">modificar(DtListaDeReproduccion)</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="90" height="10" title="39" alt="39"/></td><td class="ctr2" id="c4">0%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="90" height="10" title="6" alt="6"/></td><td class="ctr2" id="e1">0%</td><td class="ctr1" id="f0">4</td><td class="ctr2" id="g1">4</td><td class="ctr1" id="h0">10</td><td class="ctr2" id="i1">10</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a16"><a href="ListaDeReproduccion.java.html#L82" class="el_method">toString()</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="87" height="10" title="38" alt="38"/></td><td class="ctr2" id="c5">0%</td><td class="bar" id="d5"/><td class="ctr2" id="e5">n/a</td><td class="ctr1" id="f5">1</td><td class="ctr2" id="g5">1</td><td class="ctr1" id="h7">1</td><td class="ctr2" id="i9">1</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a11"><a href="ListaDeReproduccion.java.html#L102" class="el_method">listarVideos()</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="60" height="10" title="26" alt="26"/></td><td class="ctr2" id="c6">0%</td><td class="bar" id="d2"><img src="../.resources/redbar.gif" width="30" height="10" title="2" alt="2"/></td><td class="ctr2" id="e2">0%</td><td class="ctr1" id="f2">2</td><td class="ctr2" id="g2">2</td><td class="ctr1" id="h1">5</td><td class="ctr2" id="i2">5</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a1"><a href="ListaDeReproduccion.java.html#L88" class="el_method">agregarVideoA(Video)</a></td><td class="bar" id="b3"><img src="../.resources/redbar.gif" width="36" height="10" title="16" alt="16"/></td><td class="ctr2" id="c7">0%</td><td class="bar" id="d3"><img src="../.resources/redbar.gif" width="30" height="10" title="2" alt="2"/></td><td class="ctr2" id="e3">0%</td><td class="ctr1" id="f3">2</td><td class="ctr2" id="g3">2</td><td class="ctr1" id="h2">4</td><td class="ctr2" id="i3">4</td><td class="ctr1" id="j3">1</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a9"><a href="ListaDeReproduccion.java.html#L23" class="el_method">ListaDeReproduccion(int, String, Privacidad, TipoListaDeReproduccion, String)</a></td><td class="bar" id="b4"><img src="../.resources/redbar.gif" width="34" height="10" title="15" alt="15"/><img src="../.resources/greenbar.gif" width="85" height="10" title="37" alt="37"/></td><td class="ctr2" id="c3">71%</td><td class="bar" id="d1"><img src="../.resources/redbar.gif" width="60" height="10" title="4" alt="4"/><img src="../.resources/greenbar.gif" width="60" height="10" title="4" alt="4"/></td><td class="ctr2" id="e0">50%</td><td class="ctr1" id="f1">4</td><td class="ctr2" id="g0">5</td><td class="ctr1" id="h4">3</td><td class="ctr2" id="i0">14</td><td class="ctr1" id="j13">0</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a0"><a href="ListaDeReproduccion.java.html#L45" class="el_method">agregarListaPorDefecto(String)</a></td><td class="bar" id="b5"><img src="../.resources/redbar.gif" width="32" height="10" title="14" alt="14"/></td><td class="ctr2" id="c8">0%</td><td class="bar" id="d4"><img src="../.resources/redbar.gif" width="30" height="10" title="2" alt="2"/></td><td class="ctr2" id="e4">0%</td><td class="ctr1" id="f4">2</td><td class="ctr2" id="g4">2</td><td class="ctr1" id="h3">4</td><td class="ctr2" id="i4">4</td><td class="ctr1" id="j4">1</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a3"><a href="ListaDeReproduccion.java.html#L97" class="el_method">getDt()</a></td><td class="bar" id="b6"><img src="../.resources/redbar.gif" width="32" height="10" title="14" alt="14"/></td><td class="ctr2" id="c9">0%</td><td class="bar" id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f6">1</td><td class="ctr2" id="g6">1</td><td class="ctr1" id="h8">1</td><td class="ctr2" id="i10">1</td><td class="ctr1" id="j5">1</td><td class="ctr2" id="k6">1</td></tr><tr><td id="a13"><a href="ListaDeReproduccion.java.html#L138" class="el_method">quitarVideo(int)</a></td><td class="bar" id="b7"><img src="../.resources/redbar.gif" width="16" height="10" title="7" alt="7"/></td><td class="ctr2" id="c10">0%</td><td class="bar" id="d7"/><td class="ctr2" id="e7">n/a</td><td class="ctr1" id="f7">1</td><td class="ctr2" id="g7">1</td><td class="ctr1" id="h5">2</td><td class="ctr2" id="i5">2</td><td class="ctr1" id="j6">1</td><td class="ctr2" id="k7">1</td></tr><tr><td id="a14"><a href="ListaDeReproduccion.java.html#L69" class="el_method">setPrivacidad(Privacidad)</a></td><td class="bar" id="b8"><img src="../.resources/redbar.gif" width="9" height="10" title="4" alt="4"/></td><td class="ctr2" id="c11">0%</td><td class="bar" id="d8"/><td class="ctr2" id="e8">n/a</td><td class="ctr1" id="f8">1</td><td class="ctr2" id="g8">1</td><td class="ctr1" id="h6">2</td><td class="ctr2" id="i6">2</td><td class="ctr1" id="j7">1</td><td class="ctr2" id="k8">1</td></tr><tr><td id="a4"><a href="ListaDeReproduccion.java.html#L57" class="el_method">getId()</a></td><td class="bar" id="b9"><img src="../.resources/redbar.gif" width="6" height="10" title="3" alt="3"/></td><td class="ctr2" id="c12">0%</td><td class="bar" id="d9"/><td class="ctr2" id="e9">n/a</td><td class="ctr1" id="f9">1</td><td class="ctr2" id="g9">1</td><td class="ctr1" id="h9">1</td><td class="ctr2" id="i11">1</td><td class="ctr1" id="j8">1</td><td class="ctr2" id="k9">1</td></tr><tr><td id="a5"><a href="ListaDeReproduccion.java.html#L61" class="el_method">getNombre()</a></td><td class="bar" id="b10"><img src="../.resources/redbar.gif" width="6" height="10" title="3" alt="3"/></td><td class="ctr2" id="c13">0%</td><td class="bar" id="d10"/><td class="ctr2" id="e10">n/a</td><td class="ctr1" id="f10">1</td><td class="ctr2" id="g10">1</td><td class="ctr1" id="h10">1</td><td class="ctr2" id="i12">1</td><td class="ctr1" id="j9">1</td><td class="ctr2" id="k10">1</td></tr><tr><td id="a7"><a href="ListaDeReproduccion.java.html#L65" class="el_method">getPrivacidad()</a></td><td class="bar" id="b11"><img src="../.resources/redbar.gif" width="6" height="10" title="3" alt="3"/></td><td class="ctr2" id="c14">0%</td><td class="bar" id="d11"/><td class="ctr2" id="e11">n/a</td><td class="ctr1" id="f11">1</td><td class="ctr2" id="g11">1</td><td class="ctr1" id="h11">1</td><td class="ctr2" id="i13">1</td><td class="ctr1" id="j10">1</td><td class="ctr2" id="k11">1</td></tr><tr><td id="a8"><a href="ListaDeReproduccion.java.html#L73" class="el_method">getTipo()</a></td><td class="bar" id="b12"><img src="../.resources/redbar.gif" width="6" height="10" title="3" alt="3"/></td><td class="ctr2" id="c15">0%</td><td class="bar" id="d12"/><td class="ctr2" id="e12">n/a</td><td class="ctr1" id="f12">1</td><td class="ctr2" id="g12">1</td><td class="ctr1" id="h12">1</td><td class="ctr2" id="i14">1</td><td class="ctr1" id="j11">1</td><td class="ctr2" id="k12">1</td></tr><tr><td id="a2"><a href="ListaDeReproduccion.java.html#L77" class="el_method">getCategoria()</a></td><td class="bar" id="b13"><img src="../.resources/redbar.gif" width="6" height="10" title="3" alt="3"/></td><td class="ctr2" id="c16">0%</td><td class="bar" id="d13"/><td class="ctr2" id="e13">n/a</td><td class="ctr1" id="f13">1</td><td class="ctr2" id="g13">1</td><td class="ctr1" id="h13">1</td><td class="ctr2" id="i15">1</td><td class="ctr1" id="j12">1</td><td class="ctr2" id="k13">1</td></tr><tr><td id="a15"><a href="ListaDeReproduccion.java.html#L13" class="el_method">static {...}</a></td><td class="bar" id="b14"><img src="../.resources/greenbar.gif" width="32" height="10" title="14" alt="14"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d14"/><td class="ctr2" id="e14">n/a</td><td class="ctr1" id="f14">0</td><td class="ctr2" id="g14">1</td><td class="ctr1" id="h14">0</td><td class="ctr2" id="i7">2</td><td class="ctr1" id="j14">0</td><td class="ctr2" id="k14">1</td></tr><tr><td id="a10"><a href="ListaDeReproduccion.java.html#L52" class="el_method">listarNombresDeListasPorDefecto()</a></td><td class="bar" id="b15"><img src="../.resources/greenbar.gif" width="16" height="10" title="7" alt="7"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d15"/><td class="ctr2" id="e15">n/a</td><td class="ctr1" id="f15">0</td><td class="ctr2" id="g15">1</td><td class="ctr1" id="h15">0</td><td class="ctr2" id="i8">2</td><td class="ctr1" id="j15">0</td><td class="ctr2" id="k15">1</td></tr><tr><td id="a6"><a href="ListaDeReproduccion.java.html#L42" class="el_method">getNuevoId()</a></td><td class="bar" id="b16"><img src="../.resources/greenbar.gif" width="13" height="10" title="6" alt="6"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d16"/><td class="ctr2" id="e16">n/a</td><td class="ctr1" id="f16">0</td><td class="ctr2" id="g16">1</td><td class="ctr1" id="h16">0</td><td class="ctr2" id="i16">1</td><td class="ctr1" id="j16">0</td><td class="ctr2" id="k16">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/ListaDeReproduccion.java.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/ListaDeReproduccion.java.html
new file mode 100644
index 0000000000000000000000000000000000000000..a834b6dda369a33c2e04b18db9710cd50eeab0db
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/ListaDeReproduccion.java.html
@@ -0,0 +1,142 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>ListaDeReproduccion.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.source.html" class="el_package">Logica.Clases</a> &gt; <span class="el_source">ListaDeReproduccion.java</span></div><h1>ListaDeReproduccion.java</h1><pre class="source lang-java linenums">package Logica.Clases;
+
+import Logica.DataType.DtListaDeReproduccion;
+import Logica.DataType.DtVideo;
+import Logica.Enumerados.Privacidad;
+import Logica.Enumerados.TipoListaDeReproduccion;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Map;
+import java.util.TreeMap;
+
+public class ListaDeReproduccion {
+<span class="fc" id="L13">    private static int contadorListasDeReproduccion = 1;</span>
+<span class="fc" id="L14">    private static ArrayList&lt;String&gt; nombresListasPorDefecto = new ArrayList(Arrays.asList(&quot;Ver mas tarde&quot;));</span>
+    
+    private int id;
+    private String nombre;
+    private Privacidad privacidad;
+    private TipoListaDeReproduccion tipo;
+    private String categoria;
+    private Map&lt;Integer, Video&gt; misVideos;
+
+<span class="fc" id="L23">    public ListaDeReproduccion(int id, String nombre, Privacidad privacidad, TipoListaDeReproduccion tipo, String categoria) {</span>
+<span class="pc bpc" id="L24" title="1 of 2 branches missed.">        if (nombre.equals(&quot;&quot;)){</span>
+<span class="nc" id="L25">            throw new RuntimeException(&quot;El nombre de la lista de reproduccion no puede ser vacio&quot;);</span>
+        }
+<span class="pc bpc" id="L27" title="1 of 2 branches missed.">        if (categoria.equals(&quot;&quot;)){</span>
+<span class="nc" id="L28">            throw new RuntimeException(&quot;La Categoria de la lista de reproduccion no puede ser vacia&quot;);</span>
+        }
+<span class="pc bpc" id="L30" title="2 of 4 branches missed.">        if (tipo == TipoListaDeReproduccion.POR_DEFECTO &amp;&amp; privacidad != Privacidad.PRIVADO){</span>
+<span class="nc" id="L31">            throw new RuntimeException(&quot;No se puede crear una lista de reproduccion por defecto publica&quot;);</span>
+        }
+<span class="fc" id="L33">        this.id = id;</span>
+<span class="fc" id="L34">        this.nombre = nombre;</span>
+<span class="fc" id="L35">        this.privacidad = privacidad;</span>
+<span class="fc" id="L36">        this.tipo = tipo;</span>
+<span class="fc" id="L37">        this.categoria = categoria;</span>
+<span class="fc" id="L38">        this.misVideos = new TreeMap();</span>
+<span class="fc" id="L39">    }</span>
+
+    public static int getNuevoId() {
+<span class="fc" id="L42">        return contadorListasDeReproduccion++;</span>
+    }
+    public static void agregarListaPorDefecto(String cat) {
+<span class="nc bnc" id="L45" title="All 2 branches missed.">        if (cat.equals(&quot;&quot;)){</span>
+<span class="nc" id="L46">            throw new RuntimeException(&quot;No se puede agregar una categoria vacia&quot;);</span>
+        }
+<span class="nc" id="L48">        nombresListasPorDefecto.add(cat);</span>
+<span class="nc" id="L49">    }</span>
+    
+    public static ArrayList&lt;String&gt; listarNombresDeListasPorDefecto() {
+<span class="fc" id="L52">        ArrayList&lt;String&gt; ret = new ArrayList(nombresListasPorDefecto);</span>
+<span class="fc" id="L53">        return ret;</span>
+    }
+    
+    public int getId() {
+<span class="nc" id="L57">        return id;</span>
+    }
+
+    public String getNombre() {
+<span class="nc" id="L61">        return nombre;</span>
+    }
+
+    public Privacidad getPrivacidad() {
+<span class="nc" id="L65">        return privacidad;</span>
+    }
+
+    public void setPrivacidad(Privacidad privacidad) {
+<span class="nc" id="L69">        this.privacidad = privacidad;</span>
+<span class="nc" id="L70">    }</span>
+
+    public TipoListaDeReproduccion getTipo() {
+<span class="nc" id="L73">        return tipo;</span>
+    }
+
+    public String getCategoria() {
+<span class="nc" id="L77">        return categoria;</span>
+    }
+
+    @Override
+    public String toString() {
+<span class="nc" id="L82">        return &quot;ListaDeReproduccion{&quot; + &quot;id=&quot; + id + &quot;, nombre=&quot; + nombre + &quot;, privacidad=&quot; + privacidad + &quot;, tipo=&quot; + tipo + &quot;, categoria=&quot; + categoria + &quot;, misVideos.size=&quot; + misVideos.size() + '}';</span>
+    }
+    
+    /////////////////////////////////////////////////////////////////////////////////////////
+
+    public void agregarVideoA(Video v){
+<span class="nc bnc" id="L88" title="All 2 branches missed.">        if (v == null){</span>
+<span class="nc" id="L89">            throw new RuntimeException(&quot;El video recibido para agregar a la lista es NULL&quot;);</span>
+        }
+        // agrega el video y su clave a la coleccion
+<span class="nc" id="L92">        this.misVideos.put(v.getId(), v);</span>
+<span class="nc" id="L93">    }</span>
+    
+    public DtListaDeReproduccion getDt(){
+        // devuelve un DT con los datos de la lista
+<span class="nc" id="L97">        return new DtListaDeReproduccion(this.id, this.nombre, this.privacidad, this.tipo, this.categoria);</span>
+    }
+
+    public ArrayList&lt;DtVideo&gt; listarVideos(){
+        // crea una lista de retorno
+<span class="nc" id="L102">        ArrayList&lt;DtVideo&gt; ret = new ArrayList();</span>
+        
+        // para cada elemento en misVideos
+        /**
+         * este for no es normal, se declara la variable m que es de tipo
+         * Entrada de Map (como un nodo arbol), y autmaticamente la hace avanzar
+         * por todas las entradas de la coleccion.
+         * De la entrada actual se puede obtener la Key y el Valor almacenado
+         */
+<span class="nc bnc" id="L111" title="All 2 branches missed.">        for (Map.Entry&lt;Integer, Video&gt; m : misVideos.entrySet()){</span>
+            // hace un getDT y lo agrega a la coleccion de retorno
+<span class="nc" id="L113">            ret.add(m.getValue().getDt());</span>
+<span class="nc" id="L114">        }</span>
+        
+<span class="nc" id="L116">        return ret;</span>
+    }
+    
+    public void modificar(DtListaDeReproduccion ldr) {
+<span class="nc bnc" id="L120" title="All 2 branches missed.">        if (this.tipo == TipoListaDeReproduccion.POR_DEFECTO){</span>
+<span class="nc" id="L121">            throw new RuntimeException(&quot;No se puede modificar una lista por defecto&quot;);</span>
+        }
+<span class="nc bnc" id="L123" title="All 2 branches missed.">        if (ldr == null){</span>
+<span class="nc" id="L124">            throw new RuntimeException(&quot;El DataTyppe recibido para modificar la lista de reproduccion es NULL&quot;);</span>
+        }
+<span class="nc bnc" id="L126" title="All 2 branches missed.">        if (ldr.getNombre().equals(&quot;&quot;)){</span>
+<span class="nc" id="L127">            throw new RuntimeException(&quot;El nombre de la lista de reproduccion no puede ser vacio&quot;);</span>
+        }
+        // se sobreescriben los atributos que pueden ser modificados
+<span class="nc" id="L130">        this.nombre = ldr.getNombre();</span>
+<span class="nc" id="L131">        this.privacidad = ldr.getPrivacidad();</span>
+<span class="nc" id="L132">        this.categoria = ldr.getCategoria();</span>
+        // el ID y el tipo de lista no se puede modificar
+<span class="nc" id="L134">    }</span>
+    
+    public void quitarVideo(int idVideo) {
+        // remueve de la coleccion el video con la clave idVideo
+<span class="nc" id="L138">        this.misVideos.remove(idVideo);</span>
+<span class="nc" id="L139">    }</span>
+    
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Persona.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Persona.html
new file mode 100644
index 0000000000000000000000000000000000000000..e050990d52fc58d5293593ead186629e2745072d
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Persona.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Persona</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.html" class="el_package">Logica.Clases</a> &gt; <span class="el_class">Persona</span></div><h1>Persona</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">31 of 46</td><td class="ctr2">33%</td><td class="bar">1 of 2</td><td class="ctr2">50%</td><td class="ctr1">8</td><td class="ctr2">9</td><td class="ctr1">11</td><td class="ctr2">17</td><td class="ctr1">7</td><td class="ctr2">8</td></tr></tfoot><tbody><tr><td id="a3"><a href="Persona.java.html#L8" class="el_method">Persona(String, String, String)</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="30" height="10" title="5" alt="5"/><img src="../.resources/greenbar.gif" width="90" height="10" title="15" alt="15"/></td><td class="ctr2" id="c0">75%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="60" height="10" title="1" alt="1"/><img src="../.resources/greenbar.gif" width="60" height="10" title="1" alt="1"/></td><td class="ctr2" id="e0">50%</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">2</td><td class="ctr1" id="h3">1</td><td class="ctr2" id="i0">7</td><td class="ctr1" id="j7">0</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a7"><a href="Persona.java.html#L42" class="el_method">validarContrasenia(String)</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="30" height="10" title="5" alt="5"/></td><td class="ctr2" id="c1">0%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h4">1</td><td class="ctr2" id="i4">1</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a6"><a href="Persona.java.html#L22" class="el_method">setNombre(String)</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="24" height="10" title="4" alt="4"/></td><td class="ctr2" id="c2">0%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">1</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h0">2</td><td class="ctr2" id="i1">2</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a4"><a href="Persona.java.html#L30" class="el_method">setApellido(String)</a></td><td class="bar" id="b3"><img src="../.resources/redbar.gif" width="24" height="10" title="4" alt="4"/></td><td class="ctr2" id="c3">0%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">1</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h1">2</td><td class="ctr2" id="i2">2</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a5"><a href="Persona.java.html#L38" class="el_method">setContrasenia(String)</a></td><td class="bar" id="b4"><img src="../.resources/redbar.gif" width="24" height="10" title="4" alt="4"/></td><td class="ctr2" id="c4">0%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">1</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h2">2</td><td class="ctr2" id="i3">2</td><td class="ctr1" id="j3">1</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a2"><a href="Persona.java.html#L18" class="el_method">getNombre()</a></td><td class="bar" id="b5"><img src="../.resources/redbar.gif" width="18" height="10" title="3" alt="3"/></td><td class="ctr2" id="c5">0%</td><td class="bar" id="d5"/><td class="ctr2" id="e5">n/a</td><td class="ctr1" id="f5">1</td><td class="ctr2" id="g5">1</td><td class="ctr1" id="h5">1</td><td class="ctr2" id="i5">1</td><td class="ctr1" id="j4">1</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a0"><a href="Persona.java.html#L26" class="el_method">getApellido()</a></td><td class="bar" id="b6"><img src="../.resources/redbar.gif" width="18" height="10" title="3" alt="3"/></td><td class="ctr2" id="c6">0%</td><td class="bar" id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f6">1</td><td class="ctr2" id="g6">1</td><td class="ctr1" id="h6">1</td><td class="ctr2" id="i6">1</td><td class="ctr1" id="j5">1</td><td class="ctr2" id="k6">1</td></tr><tr><td id="a1"><a href="Persona.java.html#L34" class="el_method">getContrasena()</a></td><td class="bar" id="b7"><img src="../.resources/redbar.gif" width="18" height="10" title="3" alt="3"/></td><td class="ctr2" id="c7">0%</td><td class="bar" id="d7"/><td class="ctr2" id="e7">n/a</td><td class="ctr1" id="f7">1</td><td class="ctr2" id="g7">1</td><td class="ctr1" id="h7">1</td><td class="ctr2" id="i7">1</td><td class="ctr1" id="j6">1</td><td class="ctr2" id="k7">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Persona.java.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Persona.java.html
new file mode 100644
index 0000000000000000000000000000000000000000..e7547c26c6f4e5681c8e9d6286bfcf3c2b7e114f
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Persona.java.html
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Persona.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.source.html" class="el_package">Logica.Clases</a> &gt; <span class="el_source">Persona.java</span></div><h1>Persona.java</h1><pre class="source lang-java linenums">package Logica.Clases;
+
+public class Persona {
+    private String nombre;
+    private String apellido;
+    private String contrasenia;
+
+<span class="fc" id="L8">    public Persona(String nombre, String apellido, String contrasenia) {</span>
+<span class="pc bpc" id="L9" title="1 of 2 branches missed.">        if(contrasenia == &quot;&quot;){</span>
+<span class="nc" id="L10">                throw new RuntimeException(&quot;La contraseña no puede ser Vacio&quot;);</span>
+        }
+<span class="fc" id="L12">        this.nombre = nombre;</span>
+<span class="fc" id="L13">        this.apellido = apellido;</span>
+<span class="fc" id="L14">        this.contrasenia = contrasenia;</span>
+<span class="fc" id="L15">    }</span>
+
+    public String getNombre() {
+<span class="nc" id="L18">        return nombre;</span>
+    }
+
+    public void setNombre(String nombre) {
+<span class="nc" id="L22">        this.nombre = nombre;</span>
+<span class="nc" id="L23">    }</span>
+
+    public String getApellido() {
+<span class="nc" id="L26">        return apellido;</span>
+    }
+
+    public void setApellido(String apellido) {
+<span class="nc" id="L30">        this.apellido = apellido;</span>
+<span class="nc" id="L31">    }</span>
+
+    public String getContrasena() {
+<span class="nc" id="L34">        return contrasenia;</span>
+    }
+
+    public void setContrasenia(String contrasenia) {
+<span class="nc" id="L38">        this.contrasenia = contrasenia;</span>
+<span class="nc" id="L39">    }</span>
+    
+    public boolean validarContrasenia(String pass){
+<span class="nc" id="L42">        return this.contrasenia.equals(pass);</span>
+    }
+    
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Usuario.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Usuario.html
new file mode 100644
index 0000000000000000000000000000000000000000..05d35440687891d9be7de1fc91cc22b3be763e6f
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Usuario.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Usuario</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.html" class="el_package">Logica.Clases</a> &gt; <span class="el_class">Usuario</span></div><h1>Usuario</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">494 of 550</td><td class="ctr2">10%</td><td class="bar">58 of 62</td><td class="ctr2">6%</td><td class="ctr1">65</td><td class="ctr2">67</td><td class="ctr1">119</td><td class="ctr2">134</td><td class="ctr1">34</td><td class="ctr2">36</td></tr></tfoot><tbody><tr><td id="a22"><a href="Usuario.java.html#L211" class="el_method">modificar(DtUsuario, DtCanal)</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="77" height="10" title="47" alt="47"/></td><td class="ctr2" id="c2">0%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="90" height="10" title="6" alt="6"/></td><td class="ctr2" id="e1">0%</td><td class="ctr1" id="f0">4</td><td class="ctr2" id="g1">4</td><td class="ctr1" id="h0">13</td><td class="ctr2" id="i1">13</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a6"><a href="Usuario.java.html#L135" class="el_method">agregarOQuitarSeguidor(Usuario)</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="65" height="10" title="40" alt="40"/></td><td class="ctr2" id="c3">0%</td><td class="bar" id="d3"><img src="../.resources/redbar.gif" width="60" height="10" title="4" alt="4"/></td><td class="ctr2" id="e2">0%</td><td class="ctr1" id="f3">3</td><td class="ctr2" id="g3">3</td><td class="ctr1" id="h2">8</td><td class="ctr2" id="i3">8</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a5"><a href="Usuario.java.html#L117" class="el_method">agregarOQuitarSeguido(Usuario)</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="64" height="10" title="39" alt="39"/></td><td class="ctr2" id="c4">0%</td><td class="bar" id="d1"><img src="../.resources/redbar.gif" width="90" height="10" title="6" alt="6"/></td><td class="ctr2" id="e3">0%</td><td class="ctr1" id="f1">4</td><td class="ctr2" id="g2">4</td><td class="ctr1" id="h1">9</td><td class="ctr2" id="i2">9</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a8"><a href="Usuario.java.html#L157" class="el_method">agregarVideoALista(int, int, Usuario)</a></td><td class="bar" id="b3"><img src="../.resources/redbar.gif" width="52" height="10" title="32" alt="32"/></td><td class="ctr2" id="c5">0%</td><td class="bar" id="d4"><img src="../.resources/redbar.gif" width="60" height="10" title="4" alt="4"/></td><td class="ctr2" id="e4">0%</td><td class="ctr1" id="f4">3</td><td class="ctr2" id="g4">3</td><td class="ctr1" id="h3">7</td><td class="ctr2" id="i4">7</td><td class="ctr1" id="j3">1</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a18"><a href="Usuario.java.html#L178" class="el_method">listarUsuariosSeguidos()</a></td><td class="bar" id="b4"><img src="../.resources/redbar.gif" width="42" height="10" title="26" alt="26"/></td><td class="ctr2" id="c6">0%</td><td class="bar" id="d8"><img src="../.resources/redbar.gif" width="30" height="10" title="2" alt="2"/></td><td class="ctr2" id="e5">0%</td><td class="ctr1" id="f8">2</td><td class="ctr2" id="g8">2</td><td class="ctr1" id="h7">5</td><td class="ctr2" id="i8">5</td><td class="ctr1" id="j4">1</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a17"><a href="Usuario.java.html#L189" class="el_method">listarUsuariosSeguidores()</a></td><td class="bar" id="b5"><img src="../.resources/redbar.gif" width="42" height="10" title="26" alt="26"/></td><td class="ctr2" id="c7">0%</td><td class="bar" id="d9"><img src="../.resources/redbar.gif" width="30" height="10" title="2" alt="2"/></td><td class="ctr2" id="e6">0%</td><td class="ctr1" id="f9">2</td><td class="ctr2" id="g9">2</td><td class="ctr1" id="h8">5</td><td class="ctr2" id="i9">5</td><td class="ctr1" id="j5">1</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a2"><a href="Usuario.java.html#L87" class="el_method">agregarComentarioAVideo(int, int, DtComentario, Usuario)</a></td><td class="bar" id="b6"><img src="../.resources/redbar.gif" width="36" height="10" title="22" alt="22"/></td><td class="ctr2" id="c8">0%</td><td class="bar" id="d5"><img src="../.resources/redbar.gif" width="60" height="10" title="4" alt="4"/></td><td class="ctr2" id="e7">0%</td><td class="ctr1" id="f5">3</td><td class="ctr2" id="g5">3</td><td class="ctr1" id="h4">6</td><td class="ctr2" id="i5">6</td><td class="ctr1" id="j6">1</td><td class="ctr2" id="k6">1</td></tr><tr><td id="a1"><a href="Usuario.java.html#L76" class="el_method">agregarComentarioAVideo(int, DtComentario, Usuario)</a></td><td class="bar" id="b7"><img src="../.resources/redbar.gif" width="34" height="10" title="21" alt="21"/></td><td class="ctr2" id="c9">0%</td><td class="bar" id="d6"><img src="../.resources/redbar.gif" width="60" height="10" title="4" alt="4"/></td><td class="ctr2" id="e8">0%</td><td class="ctr1" id="f6">3</td><td class="ctr2" id="g6">3</td><td class="ctr1" id="h5">6</td><td class="ctr2" id="i6">6</td><td class="ctr1" id="j7">1</td><td class="ctr2" id="k7">1</td></tr><tr><td id="a4"><a href="Usuario.java.html#L106" class="el_method">agregarModificarValoracionDeVideo(int, DtValoracion, Usuario)</a></td><td class="bar" id="b8"><img src="../.resources/redbar.gif" width="34" height="10" title="21" alt="21"/></td><td class="ctr2" id="c10">0%</td><td class="bar" id="d7"><img src="../.resources/redbar.gif" width="60" height="10" title="4" alt="4"/></td><td class="ctr2" id="e9">0%</td><td class="ctr1" id="f7">3</td><td class="ctr2" id="g7">3</td><td class="ctr1" id="h6">6</td><td class="ctr2" id="i7">6</td><td class="ctr1" id="j8">1</td><td class="ctr2" id="k8">1</td></tr><tr><td id="a34"><a href="Usuario.java.html#L21" class="el_method">Usuario(String, String, Date, String, String, String, String, DtCanal)</a></td><td class="bar" id="b9"><img src="../.resources/redbar.gif" width="32" height="10" title="20" alt="20"/><img src="../.resources/greenbar.gif" width="87" height="10" title="53" alt="53"/></td><td class="ctr2" id="c1">73%</td><td class="bar" id="d2"><img src="../.resources/redbar.gif" width="60" height="10" title="4" alt="4"/><img src="../.resources/greenbar.gif" width="60" height="10" title="4" alt="4"/></td><td class="ctr2" id="e0">50%</td><td class="ctr1" id="f2">4</td><td class="ctr2" id="g0">5</td><td class="ctr1" id="h9">4</td><td class="ctr2" id="i0">18</td><td class="ctr1" id="j34">0</td><td class="ctr2" id="k9">1</td></tr><tr><td id="a10"><a href="Usuario.java.html#L68" class="el_method">getDT()</a></td><td class="bar" id="b10"><img src="../.resources/redbar.gif" width="32" height="10" title="20" alt="20"/></td><td class="ctr2" id="c11">0%</td><td class="bar" id="d19"/><td class="ctr2" id="e19">n/a</td><td class="ctr1" id="f19">1</td><td class="ctr2" id="g19">1</td><td class="ctr1" id="h21">1</td><td class="ctr2" id="i21">1</td><td class="ctr1" id="j9">1</td><td class="ctr2" id="k10">1</td></tr><tr><td id="a28"><a href="Usuario.java.html#L264" class="el_method">obtenerValoracion(int, String)</a></td><td class="bar" id="b11"><img src="../.resources/redbar.gif" width="23" height="10" title="14" alt="14"/></td><td class="ctr2" id="c12">0%</td><td class="bar" id="d10"><img src="../.resources/redbar.gif" width="30" height="10" title="2" alt="2"/></td><td class="ctr2" id="e10">0%</td><td class="ctr1" id="f10">2</td><td class="ctr2" id="g10">2</td><td class="ctr1" id="h15">3</td><td class="ctr2" id="i15">3</td><td class="ctr1" id="j10">1</td><td class="ctr2" id="k11">1</td></tr><tr><td id="a32"><a href="Usuario.java.html#L289" class="el_method">quitarValoracion(int, String)</a></td><td class="bar" id="b12"><img src="../.resources/redbar.gif" width="23" height="10" title="14" alt="14"/></td><td class="ctr2" id="c13">0%</td><td class="bar" id="d11"><img src="../.resources/redbar.gif" width="30" height="10" title="2" alt="2"/></td><td class="ctr2" id="e11">0%</td><td class="ctr1" id="f11">2</td><td class="ctr2" id="g11">2</td><td class="ctr1" id="h10">4</td><td class="ctr2" id="i10">4</td><td class="ctr1" id="j11">1</td><td class="ctr2" id="k12">1</td></tr><tr><td id="a27"><a href="Usuario.java.html#L256" class="el_method">obtenerListasEnCategoria(String)</a></td><td class="bar" id="b13"><img src="../.resources/redbar.gif" width="21" height="10" title="13" alt="13"/></td><td class="ctr2" id="c14">0%</td><td class="bar" id="d12"><img src="../.resources/redbar.gif" width="30" height="10" title="2" alt="2"/></td><td class="ctr2" id="e12">0%</td><td class="ctr1" id="f12">2</td><td class="ctr2" id="g12">2</td><td class="ctr1" id="h16">3</td><td class="ctr2" id="i16">3</td><td class="ctr1" id="j12">1</td><td class="ctr2" id="k13">1</td></tr><tr><td id="a31"><a href="Usuario.java.html#L280" class="el_method">obtenerVideosEnCategoria(String)</a></td><td class="bar" id="b14"><img src="../.resources/redbar.gif" width="21" height="10" title="13" alt="13"/></td><td class="ctr2" id="c15">0%</td><td class="bar" id="d13"><img src="../.resources/redbar.gif" width="30" height="10" title="2" alt="2"/></td><td class="ctr2" id="e13">0%</td><td class="ctr1" id="f13">2</td><td class="ctr2" id="g13">2</td><td class="ctr1" id="h17">3</td><td class="ctr2" id="i17">3</td><td class="ctr1" id="j13">1</td><td class="ctr2" id="k14">1</td></tr><tr><td id="a35"><a href="Usuario.java.html#L300" class="el_method">validarListaParticular(String)</a></td><td class="bar" id="b15"><img src="../.resources/redbar.gif" width="21" height="10" title="13" alt="13"/></td><td class="ctr2" id="c16">0%</td><td class="bar" id="d14"><img src="../.resources/redbar.gif" width="30" height="10" title="2" alt="2"/></td><td class="ctr2" id="e14">0%</td><td class="ctr1" id="f14">2</td><td class="ctr2" id="g14">2</td><td class="ctr1" id="h18">3</td><td class="ctr2" id="i18">3</td><td class="ctr1" id="j14">1</td><td class="ctr2" id="k15">1</td></tr><tr><td id="a3"><a href="Usuario.java.html#L98" class="el_method">agregarListaParticular(DtListaDeReproduccion)</a></td><td class="bar" id="b16"><img src="../.resources/redbar.gif" width="19" height="10" title="12" alt="12"/></td><td class="ctr2" id="c17">0%</td><td class="bar" id="d15"><img src="../.resources/redbar.gif" width="30" height="10" title="2" alt="2"/></td><td class="ctr2" id="e15">0%</td><td class="ctr1" id="f15">2</td><td class="ctr2" id="g15">2</td><td class="ctr1" id="h11">4</td><td class="ctr2" id="i11">4</td><td class="ctr1" id="j15">1</td><td class="ctr2" id="k16">1</td></tr><tr><td id="a7"><a href="Usuario.java.html#L149" class="el_method">agregarVideoACanal(DtVideo)</a></td><td class="bar" id="b17"><img src="../.resources/redbar.gif" width="19" height="10" title="12" alt="12"/></td><td class="ctr2" id="c18">0%</td><td class="bar" id="d16"><img src="../.resources/redbar.gif" width="30" height="10" title="2" alt="2"/></td><td class="ctr2" id="e16">0%</td><td class="ctr1" id="f16">2</td><td class="ctr2" id="g16">2</td><td class="ctr1" id="h12">4</td><td class="ctr2" id="i12">4</td><td class="ctr1" id="j16">1</td><td class="ctr2" id="k17">1</td></tr><tr><td id="a23"><a href="Usuario.java.html#L231" class="el_method">modificarListaDeReproduccionDeCanal(DtListaDeReproduccion)</a></td><td class="bar" id="b18"><img src="../.resources/redbar.gif" width="19" height="10" title="12" alt="12"/></td><td class="ctr2" id="c19">0%</td><td class="bar" id="d17"><img src="../.resources/redbar.gif" width="30" height="10" title="2" alt="2"/></td><td class="ctr2" id="e17">0%</td><td class="ctr1" id="f17">2</td><td class="ctr2" id="g17">2</td><td class="ctr1" id="h13">4</td><td class="ctr2" id="i13">4</td><td class="ctr1" id="j17">1</td><td class="ctr2" id="k18">1</td></tr><tr><td id="a24"><a href="Usuario.java.html#L239" class="el_method">modificarVideoDeCanal(DtVideo)</a></td><td class="bar" id="b19"><img src="../.resources/redbar.gif" width="19" height="10" title="12" alt="12"/></td><td class="ctr2" id="c20">0%</td><td class="bar" id="d18"><img src="../.resources/redbar.gif" width="30" height="10" title="2" alt="2"/></td><td class="ctr2" id="e18">0%</td><td class="ctr1" id="f18">2</td><td class="ctr2" id="g18">2</td><td class="ctr1" id="h14">4</td><td class="ctr2" id="i14">4</td><td class="ctr1" id="j18">1</td><td class="ctr2" id="k19">1</td></tr><tr><td id="a33"><a href="Usuario.java.html#L296" class="el_method">quitarVideoDeListaDeReproduccion(int, int)</a></td><td class="bar" id="b20"><img src="../.resources/redbar.gif" width="9" height="10" title="6" alt="6"/></td><td class="ctr2" id="c21">0%</td><td class="bar" id="d20"/><td class="ctr2" id="e20">n/a</td><td class="ctr1" id="f20">1</td><td class="ctr2" id="g20">1</td><td class="ctr1" id="h19">2</td><td class="ctr2" id="i19">2</td><td class="ctr1" id="j19">1</td><td class="ctr2" id="k20">1</td></tr><tr><td id="a15"><a href="Usuario.java.html#L169" class="el_method">listarComentariosDeVideo(int)</a></td><td class="bar" id="b21"><img src="../.resources/redbar.gif" width="8" height="10" title="5" alt="5"/></td><td class="ctr2" id="c22">0%</td><td class="bar" id="d21"/><td class="ctr2" id="e21">n/a</td><td class="ctr1" id="f21">1</td><td class="ctr2" id="g21">1</td><td class="ctr1" id="h22">1</td><td class="ctr2" id="i22">1</td><td class="ctr1" id="j20">1</td><td class="ctr2" id="k21">1</td></tr><tr><td id="a16"><a href="Usuario.java.html#L173" class="el_method">listarListasDeReproduccionDeCanal(boolean)</a></td><td class="bar" id="b22"><img src="../.resources/redbar.gif" width="8" height="10" title="5" alt="5"/></td><td class="ctr2" id="c23">0%</td><td class="bar" id="d22"/><td class="ctr2" id="e22">n/a</td><td class="ctr1" id="f22">1</td><td class="ctr2" id="g22">1</td><td class="ctr1" id="h23">1</td><td class="ctr2" id="i23">1</td><td class="ctr1" id="j21">1</td><td class="ctr2" id="k22">1</td></tr><tr><td id="a19"><a href="Usuario.java.html#L199" class="el_method">listarValoracionesDeVideo(int)</a></td><td class="bar" id="b23"><img src="../.resources/redbar.gif" width="8" height="10" title="5" alt="5"/></td><td class="ctr2" id="c24">0%</td><td class="bar" id="d23"/><td class="ctr2" id="e23">n/a</td><td class="ctr1" id="f23">1</td><td class="ctr2" id="g23">1</td><td class="ctr1" id="h24">1</td><td class="ctr2" id="i24">1</td><td class="ctr1" id="j22">1</td><td class="ctr2" id="k23">1</td></tr><tr><td id="a21"><a href="Usuario.java.html#L207" class="el_method">listarVideosDeListaDeReproduccion(int)</a></td><td class="bar" id="b24"><img src="../.resources/redbar.gif" width="8" height="10" title="5" alt="5"/></td><td class="ctr2" id="c25">0%</td><td class="bar" id="d24"/><td class="ctr2" id="e24">n/a</td><td class="ctr1" id="f24">1</td><td class="ctr2" id="g24">1</td><td class="ctr1" id="h25">1</td><td class="ctr2" id="i25">1</td><td class="ctr1" id="j23">1</td><td class="ctr2" id="k24">1</td></tr><tr><td id="a26"><a href="Usuario.java.html#L251" class="el_method">obtenerListaDeReproduccion(int)</a></td><td class="bar" id="b25"><img src="../.resources/redbar.gif" width="8" height="10" title="5" alt="5"/></td><td class="ctr2" id="c26">0%</td><td class="bar" id="d25"/><td class="ctr2" id="e25">n/a</td><td class="ctr1" id="f25">1</td><td class="ctr2" id="g25">1</td><td class="ctr1" id="h26">1</td><td class="ctr2" id="i26">1</td><td class="ctr1" id="j24">1</td><td class="ctr2" id="k25">1</td></tr><tr><td id="a29"><a href="Usuario.java.html#L272" class="el_method">obtenerVideo(int)</a></td><td class="bar" id="b26"><img src="../.resources/redbar.gif" width="8" height="10" title="5" alt="5"/></td><td class="ctr2" id="c27">0%</td><td class="bar" id="d26"/><td class="ctr2" id="e26">n/a</td><td class="ctr1" id="f26">1</td><td class="ctr2" id="g26">1</td><td class="ctr1" id="h27">1</td><td class="ctr2" id="i27">1</td><td class="ctr1" id="j25">1</td><td class="ctr2" id="k26">1</td></tr><tr><td id="a30"><a href="Usuario.java.html#L276" class="el_method">obtenerVideoDeCanal(int)</a></td><td class="bar" id="b27"><img src="../.resources/redbar.gif" width="8" height="10" title="5" alt="5"/></td><td class="ctr2" id="c28">0%</td><td class="bar" id="d27"/><td class="ctr2" id="e27">n/a</td><td class="ctr1" id="f27">1</td><td class="ctr2" id="g27">1</td><td class="ctr1" id="h28">1</td><td class="ctr2" id="i28">1</td><td class="ctr1" id="j26">1</td><td class="ctr2" id="k27">1</td></tr><tr><td id="a0"><a href="Usuario.java.html#L72" class="el_method">actualizarListasPorDefecto()</a></td><td class="bar" id="b28"><img src="../.resources/redbar.gif" width="6" height="10" title="4" alt="4"/></td><td class="ctr2" id="c29">0%</td><td class="bar" id="d28"/><td class="ctr2" id="e28">n/a</td><td class="ctr1" id="f28">1</td><td class="ctr2" id="g28">1</td><td class="ctr1" id="h20">2</td><td class="ctr2" id="i20">2</td><td class="ctr1" id="j27">1</td><td class="ctr2" id="k28">1</td></tr><tr><td id="a20"><a href="Usuario.java.html#L203" class="el_method">listarVideosDeCanal()</a></td><td class="bar" id="b29"><img src="../.resources/redbar.gif" width="6" height="10" title="4" alt="4"/></td><td class="ctr2" id="c30">0%</td><td class="bar" id="d29"/><td class="ctr2" id="e29">n/a</td><td class="ctr1" id="f29">1</td><td class="ctr2" id="g29">1</td><td class="ctr1" id="h29">1</td><td class="ctr2" id="i29">1</td><td class="ctr1" id="j28">1</td><td class="ctr2" id="k29">1</td></tr><tr><td id="a25"><a href="Usuario.java.html#L246" class="el_method">obtenerCanal()</a></td><td class="bar" id="b30"><img src="../.resources/redbar.gif" width="6" height="10" title="4" alt="4"/></td><td class="ctr2" id="c31">0%</td><td class="bar" id="d30"/><td class="ctr2" id="e30">n/a</td><td class="ctr1" id="f30">1</td><td class="ctr2" id="g30">1</td><td class="ctr1" id="h30">1</td><td class="ctr2" id="i30">1</td><td class="ctr1" id="j29">1</td><td class="ctr2" id="k30">1</td></tr><tr><td id="a9"><a href="Usuario.java.html#L52" class="el_method">getCorreo()</a></td><td class="bar" id="b31"><img src="../.resources/redbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c32">0%</td><td class="bar" id="d31"/><td class="ctr2" id="e31">n/a</td><td class="ctr1" id="f31">1</td><td class="ctr2" id="g31">1</td><td class="ctr1" id="h31">1</td><td class="ctr2" id="i31">1</td><td class="ctr1" id="j30">1</td><td class="ctr2" id="k31">1</td></tr><tr><td id="a11"><a href="Usuario.java.html#L56" class="el_method">getFechaNacimiento()</a></td><td class="bar" id="b32"><img src="../.resources/redbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c33">0%</td><td class="bar" id="d32"/><td class="ctr2" id="e32">n/a</td><td class="ctr1" id="f32">1</td><td class="ctr2" id="g32">1</td><td class="ctr1" id="h32">1</td><td class="ctr2" id="i32">1</td><td class="ctr1" id="j31">1</td><td class="ctr2" id="k32">1</td></tr><tr><td id="a12"><a href="Usuario.java.html#L60" class="el_method">getImagen()</a></td><td class="bar" id="b33"><img src="../.resources/redbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c34">0%</td><td class="bar" id="d33"/><td class="ctr2" id="e33">n/a</td><td class="ctr1" id="f33">1</td><td class="ctr2" id="g33">1</td><td class="ctr1" id="h33">1</td><td class="ctr2" id="i33">1</td><td class="ctr1" id="j32">1</td><td class="ctr2" id="k33">1</td></tr><tr><td id="a14"><a href="Usuario.java.html#L64" class="el_method">getSeguidores()</a></td><td class="bar" id="b34"><img src="../.resources/redbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c35">0%</td><td class="bar" id="d34"/><td class="ctr2" id="e34">n/a</td><td class="ctr1" id="f34">1</td><td class="ctr2" id="g34">1</td><td class="ctr1" id="h34">1</td><td class="ctr2" id="i34">1</td><td class="ctr1" id="j33">1</td><td class="ctr2" id="k34">1</td></tr><tr><td id="a13"><a href="Usuario.java.html#L48" class="el_method">getNickname()</a></td><td class="bar" id="b35"><img src="../.resources/greenbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d35"/><td class="ctr2" id="e35">n/a</td><td class="ctr1" id="f35">0</td><td class="ctr2" id="g35">1</td><td class="ctr1" id="h35">0</td><td class="ctr2" id="i35">1</td><td class="ctr1" id="j35">0</td><td class="ctr2" id="k35">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Usuario.java.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Usuario.java.html
new file mode 100644
index 0000000000000000000000000000000000000000..87c8b5ef7ab4a82b2847e513e3ce61712d1e9280
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Usuario.java.html
@@ -0,0 +1,307 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Usuario.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.source.html" class="el_package">Logica.Clases</a> &gt; <span class="el_source">Usuario.java</span></div><h1>Usuario.java</h1><pre class="source lang-java linenums">package Logica.Clases;
+import java.sql.Date;
+import Logica.DataType.*;
+import java.util.ArrayList;
+import java.util.Map;
+import java.util.TreeMap;
+
+public class Usuario extends Persona{
+    
+    private String nickname;
+    private String correo;
+    private Date fechaNacimiento;
+    private String imagen;
+    private int seguidores;
+    private Canal MiCanal;
+    private Map&lt;String, Usuario&gt; misSeguidores;
+    private Map&lt;String, Usuario&gt; seguidos;
+    
+
+    public Usuario(String nickname, String correo, Date fechaNacimiento, String imagen, String contrasenia, String nombre, String apellido ,DtCanal DTC) {
+<span class="fc" id="L21">        super(nombre,apellido,contrasenia);</span>
+        
+<span class="pc bpc" id="L23" title="1 of 2 branches missed.">        if(fechaNacimiento == null){</span>
+<span class="nc" id="L24">            throw new RuntimeException(&quot;la fecha no puede ser nill&quot;);</span>
+        }
+<span class="pc bpc" id="L26" title="1 of 2 branches missed.">        if(DTC == null){</span>
+<span class="nc" id="L27">            throw new RuntimeException(&quot;El canal no puede ser null&quot;);</span>
+        }
+<span class="pc bpc" id="L29" title="1 of 2 branches missed.">        if(nickname == &quot;&quot;){</span>
+<span class="nc" id="L30">            throw new RuntimeException(&quot;El nickname no puede ser Vacio&quot;);</span>
+        }
+        
+<span class="pc bpc" id="L33" title="1 of 2 branches missed.">        if(correo == &quot;&quot;){</span>
+<span class="nc" id="L34">            throw new RuntimeException(&quot;El correo no puede ser Vacio&quot;);</span>
+        }
+        
+<span class="fc" id="L37">        this.nickname = nickname;</span>
+<span class="fc" id="L38">        this.correo = correo;</span>
+<span class="fc" id="L39">        this.fechaNacimiento = fechaNacimiento;</span>
+<span class="fc" id="L40">        this.imagen = imagen;</span>
+<span class="fc" id="L41">        this.seguidores = 0;</span>
+<span class="fc" id="L42">        this.MiCanal = new Canal(Canal.getNuevoId(),DTC.getNombre(),DTC.getDescripcion(),DTC.getPrivacidad());</span>
+<span class="fc" id="L43">        this.misSeguidores = new TreeMap();</span>
+<span class="fc" id="L44">        this.seguidos = new TreeMap();</span>
+<span class="fc" id="L45">    }</span>
+
+    public String getNickname() {
+<span class="fc" id="L48">        return nickname;</span>
+    }
+    
+    public String getCorreo() {
+<span class="nc" id="L52">        return correo;</span>
+    }
+    
+    public Date getFechaNacimiento() {
+<span class="nc" id="L56">        return fechaNacimiento;</span>
+    }
+    
+    public String getImagen() {
+<span class="nc" id="L60">        return imagen;</span>
+    }
+
+    public int getSeguidores() {
+<span class="nc" id="L64">        return seguidores;</span>
+    }
+
+    public DtUsuario getDT(){
+<span class="nc" id="L68">        return new DtUsuario(this.nickname, super.getContrasena(), super.getNombre(), super.getApellido(), this.correo, this.fechaNacimiento, this.imagen, this.seguidores);</span>
+    }
+    
+    public void actualizarListasPorDefecto(){
+<span class="nc" id="L72">        this.MiCanal.actualizarListasPorDefecto();</span>
+<span class="nc" id="L73">    }</span>
+    
+    public void agregarComentarioAVideo(int idVideo, DtComentario DtComentario, Usuario Usu){
+<span class="nc bnc" id="L76" title="All 2 branches missed.">        if(DtComentario == null){</span>
+<span class="nc" id="L77">            throw new RuntimeException(&quot;El comentario no puede ser null&quot;);</span>
+        }
+<span class="nc bnc" id="L79" title="All 2 branches missed.">        if(Usu == null){</span>
+<span class="nc" id="L80">            throw new RuntimeException(&quot;El usuario no puede ser null&quot;);</span>
+        }
+        
+<span class="nc" id="L83">        this.MiCanal.agregarComentarioAVideo(idVideo, DtComentario, Usu);</span>
+<span class="nc" id="L84">    }</span>
+    
+    public void agregarComentarioAVideo(int idVideo, int idCom, DtComentario DtComentario, Usuario Usu){
+<span class="nc bnc" id="L87" title="All 2 branches missed.">        if(DtComentario == null){</span>
+<span class="nc" id="L88">            throw new RuntimeException(&quot;El comentario no puede ser null&quot;);</span>
+        }
+<span class="nc bnc" id="L90" title="All 2 branches missed.">        if(Usu == null){</span>
+<span class="nc" id="L91">            throw new RuntimeException(&quot;El usuario no puede ser null&quot;);</span>
+        }
+        
+<span class="nc" id="L94">        this.MiCanal.agregarComentarioAVideo(idVideo, idCom, DtComentario, Usu);</span>
+<span class="nc" id="L95">    }</span>
+    
+    public void agregarListaParticular(DtListaDeReproduccion DtValoracion){
+<span class="nc bnc" id="L98" title="All 2 branches missed.">        if(DtValoracion == null){</span>
+<span class="nc" id="L99">            throw new RuntimeException(&quot;La valoracion no puede ser null&quot;);</span>
+        }
+        
+<span class="nc" id="L102">        this.MiCanal.agregarListaParticular(DtValoracion);</span>
+<span class="nc" id="L103">    }</span>
+    
+    public void agregarModificarValoracionDeVideo(int idVideo, DtValoracion DtValoracion, Usuario Usu){
+<span class="nc bnc" id="L106" title="All 2 branches missed.">        if(DtValoracion == null){</span>
+<span class="nc" id="L107">            throw new RuntimeException(&quot;La valoracion no puede ser null&quot;);</span>
+        }
+<span class="nc bnc" id="L109" title="All 2 branches missed.">        if(Usu == null){</span>
+<span class="nc" id="L110">            throw new RuntimeException(&quot;El usuario no puede ser null&quot;);</span>
+        }
+        
+<span class="nc" id="L113">        this.MiCanal.agregarModificarValoracion(idVideo , DtValoracion, Usu);</span>
+<span class="nc" id="L114">    }</span>
+    
+    public void agregarOQuitarSeguido(Usuario Usu){
+<span class="nc bnc" id="L117" title="All 2 branches missed.">        if(Usu == null){</span>
+<span class="nc" id="L118">            throw new RuntimeException(&quot;El usuario no puede ser null&quot;);</span>
+        }
+<span class="nc bnc" id="L120" title="All 2 branches missed.">        if(Usu == this){</span>
+<span class="nc" id="L121">            throw new RuntimeException(&quot;Un usuario no se puede seguir a si mismo&quot;);</span>
+        }
+        
+<span class="nc bnc" id="L124" title="All 2 branches missed.">        if (this.seguidos.containsKey(Usu.getNickname())){</span>
+<span class="nc" id="L125">            this.seguidos.remove(Usu.getNickname());</span>
+        }else{
+<span class="nc" id="L127">            this.seguidos.put(Usu.getNickname(), Usu);</span>
+        }
+        
+<span class="nc" id="L130">        Usu.agregarOQuitarSeguidor(this);</span>
+<span class="nc" id="L131">    }</span>
+    
+    // si, esta si es private, no es un error
+    private void agregarOQuitarSeguidor(Usuario Usu){
+<span class="nc bnc" id="L135" title="All 2 branches missed.">        if(Usu == null){</span>
+<span class="nc" id="L136">            throw new RuntimeException(&quot;El usuario no puede ser null&quot;);</span>
+        }
+        
+<span class="nc bnc" id="L139" title="All 2 branches missed.">        if (this.misSeguidores.containsKey(Usu.nickname)){</span>
+<span class="nc" id="L140">            this.misSeguidores.remove(Usu.getNickname());</span>
+<span class="nc" id="L141">            this.seguidores--;</span>
+        }else{
+<span class="nc" id="L143">            this.misSeguidores.put(Usu.getNickname(), Usu);</span>
+<span class="nc" id="L144">            this.seguidores++;</span>
+        }
+<span class="nc" id="L146">    }</span>
+    
+    public void agregarVideoACanal(DtVideo DtVideo){
+<span class="nc bnc" id="L149" title="All 2 branches missed.">        if(DtVideo == null){</span>
+<span class="nc" id="L150">            throw new RuntimeException(&quot;El video no puede ser null&quot;);</span>
+        }
+        
+<span class="nc" id="L153">        this.MiCanal.agregarVideo(DtVideo);</span>
+<span class="nc" id="L154">    }</span>
+    
+    public void agregarVideoALista(int idLista , int idVideo, Usuario Usu){
+<span class="nc bnc" id="L157" title="All 2 branches missed.">        if(Usu == null){</span>
+<span class="nc" id="L158">            throw new RuntimeException(&quot;El usuario no puede ser null&quot;);</span>
+        }
+        
+<span class="nc" id="L161">        Video v = Usu.obtenerVideo(idVideo);</span>
+<span class="nc bnc" id="L162" title="All 2 branches missed.">        if (v == null){</span>
+<span class="nc" id="L163">            throw new RuntimeException(&quot;El video no pertenece al usuario: &quot; + Usu.getNickname());</span>
+        }
+<span class="nc" id="L165">        this.MiCanal.agregarVideoALista(idLista, v);</span>
+<span class="nc" id="L166">    }</span>
+    
+    public ArrayList&lt;DtComentario&gt; listarComentariosDeVideo(int idVideo){
+<span class="nc" id="L169">        return this.MiCanal.listarComentariosDeVideo(idVideo);</span>
+    }
+    
+    public ArrayList&lt;DtListaDeReproduccion&gt; listarListasDeReproduccionDeCanal(boolean porDefecto){
+<span class="nc" id="L173">        return this.MiCanal.listarListasDeReproduccion(porDefecto);</span>
+    }
+    
+    public ArrayList&lt;DtUsuario&gt; listarUsuariosSeguidos(){
+        // crea una lista de retorno
+<span class="nc" id="L178">        ArrayList&lt;DtUsuario&gt; ret = new ArrayList();</span>
+        
+<span class="nc bnc" id="L180" title="All 2 branches missed.">        for (Map.Entry&lt;String,Usuario&gt; i : this.seguidos.entrySet()){</span>
+            // hace un getDT y lo agrega a la coleccion de retorno
+<span class="nc" id="L182">            ret.add(i.getValue().getDT());</span>
+<span class="nc" id="L183">        }</span>
+<span class="nc" id="L184">        return ret;</span>
+    }//(Ctrl + C Ctrl + V) De la clase video
+    
+    public ArrayList&lt;DtUsuario&gt; listarUsuariosSeguidores(){
+        // crea una lista de retorno
+<span class="nc" id="L189">        ArrayList&lt;DtUsuario&gt; ret = new ArrayList();</span>
+        
+<span class="nc bnc" id="L191" title="All 2 branches missed.">        for (Map.Entry&lt;String,Usuario&gt; i : this.misSeguidores.entrySet()){</span>
+            // hace un getDT y lo agrega a la coleccion de retorno
+<span class="nc" id="L193">            ret.add(i.getValue().getDT());</span>
+<span class="nc" id="L194">        }</span>
+<span class="nc" id="L195">        return ret;</span>
+    }//(Ctrl + C Ctrl + V) De la clase lirRepro
+    
+    public ArrayList&lt;DtValoracion&gt; listarValoracionesDeVideo(int id){
+<span class="nc" id="L199">        return this.MiCanal.listarValoracionesDeVideo(id);</span>
+    }
+    
+    public ArrayList&lt;DtVideo&gt; listarVideosDeCanal(){
+<span class="nc" id="L203">        return this.MiCanal.listarVideos();</span>
+    }
+    
+    public ArrayList&lt;DtVideo&gt; listarVideosDeListaDeReproduccion(int id){
+<span class="nc" id="L207">        return this.MiCanal.listarVideosDeListaDeReproduccion(id);</span>
+    }
+    
+    public void modificar(DtUsuario DtUsu, DtCanal DtCanal){
+<span class="nc bnc" id="L211" title="All 2 branches missed.">        if(DtUsu == null){</span>
+<span class="nc" id="L212">            throw new RuntimeException(&quot;El usuario no puede ser null&quot;);</span>
+        }
+<span class="nc bnc" id="L214" title="All 2 branches missed.">        if(DtUsu.getFechaNacimiento() == null){</span>
+<span class="nc" id="L215">            throw new RuntimeException(&quot;La fecha no puede ser null&quot;);</span>
+        }
+<span class="nc bnc" id="L217" title="All 2 branches missed.">        if(DtCanal == null){</span>
+<span class="nc" id="L218">            throw new RuntimeException(&quot;El canal no puede ser null&quot;);</span>
+        }
+        
+<span class="nc" id="L221">        super.setNombre(DtUsu.getNombre());</span>
+<span class="nc" id="L222">        super.setApellido(DtUsu.getApellido());</span>
+<span class="nc" id="L223">        super.setContrasenia(DtUsu.getContrasenia());</span>
+<span class="nc" id="L224">        this.fechaNacimiento = DtUsu.getFechaNacimiento();</span>
+<span class="nc" id="L225">        this.imagen = DtUsu.getImagen();</span>
+        
+<span class="nc" id="L227">        this.MiCanal.modificar(DtCanal);</span>
+<span class="nc" id="L228">    }</span>
+    
+    public void modificarListaDeReproduccionDeCanal(DtListaDeReproduccion DtListaDeReproduccion){
+<span class="nc bnc" id="L231" title="All 2 branches missed.">        if(DtListaDeReproduccion == null){</span>
+<span class="nc" id="L232">            throw new RuntimeException(&quot;La lista de reproduccion no puede ser null&quot;);</span>
+        }
+        
+<span class="nc" id="L235">        this.MiCanal.modificarListaDeReproduccion(DtListaDeReproduccion);</span>
+<span class="nc" id="L236">    }</span>
+    
+    public void modificarVideoDeCanal(DtVideo DtVideo){
+<span class="nc bnc" id="L239" title="All 2 branches missed.">        if(DtVideo == null){</span>
+<span class="nc" id="L240">            throw new RuntimeException(&quot;El video no puede ser null&quot;);</span>
+        }
+<span class="nc" id="L242">        this.MiCanal.modificarVideo(DtVideo);</span>
+<span class="nc" id="L243">    }</span>
+    
+    public DtCanal obtenerCanal(){
+<span class="nc" id="L246">        return this.MiCanal.getDT();</span>
+    }
+    
+    
+    public DtListaDeReproduccion obtenerListaDeReproduccion(int id){
+<span class="nc" id="L251">        return MiCanal.obtenerListaDeReproduccion(id);</span>
+    }
+    
+    
+    public ArrayList&lt;DtListaDeReproduccion&gt; obtenerListasEnCategoria(String cat){
+<span class="nc bnc" id="L256" title="All 2 branches missed.">        if(cat == &quot;&quot;){</span>
+<span class="nc" id="L257">            throw new RuntimeException(&quot;La categoria no puede ser vacia&quot;);</span>
+        }
+        
+<span class="nc" id="L260">        return this.MiCanal.obtenerListasEnCategoria(cat);</span>
+    }
+    
+    public DtValoracion obtenerValoracion(int id, String nickname){
+<span class="nc bnc" id="L264" title="All 2 branches missed.">        if(nickname == &quot;&quot;){</span>
+<span class="nc" id="L265">            throw new RuntimeException(&quot;El nickname no puede ser vacio&quot;);</span>
+        }
+        
+<span class="nc" id="L268">        return this.MiCanal.obtenerValoracion(id, nickname);</span>
+    }
+    
+    public Video obtenerVideo(int id){
+<span class="nc" id="L272">        return this.MiCanal.obtenerVideo(id);</span>
+    }
+    
+    public DtVideo obtenerVideoDeCanal(int idVideo){
+<span class="nc" id="L276">        return this.MiCanal.obtenerDtVideo(idVideo);</span>
+    }
+    
+    public ArrayList&lt;DtVideo&gt; obtenerVideosEnCategoria(String cat){
+<span class="nc bnc" id="L280" title="All 2 branches missed.">        if(cat == &quot;&quot;){</span>
+<span class="nc" id="L281">            throw new RuntimeException(&quot;La categoria no puede ser vacia&quot;);</span>
+        }
+        
+<span class="nc" id="L284">        return this.MiCanal.obtenerVideosEnCategoria(cat);</span>
+        
+    }
+    
+    public void quitarValoracion(int id, String nickname){
+<span class="nc bnc" id="L289" title="All 2 branches missed.">        if(nickname == &quot;&quot;){</span>
+<span class="nc" id="L290">            throw new RuntimeException(&quot;El nickname no puede ser vacia&quot;);</span>
+        }
+<span class="nc" id="L292">        this.MiCanal.quitarValoracion(id, nickname);</span>
+<span class="nc" id="L293">    }</span>
+    
+    public void quitarVideoDeListaDeReproduccion(int idLista, int idVideo){
+<span class="nc" id="L296">        this.MiCanal.quitarVideoDeListaDeReproduccion(idLista, idVideo);</span>
+<span class="nc" id="L297">    }</span>
+    
+    public boolean validarListaParticular(String nombre){
+<span class="nc bnc" id="L300" title="All 2 branches missed.">        if(nombre == &quot;&quot;){</span>
+<span class="nc" id="L301">            throw new RuntimeException(&quot;El nombre de la lista no puede ser vacia&quot;);</span>
+        }
+<span class="nc" id="L303">        return this.MiCanal.validarListaParticular(nombre);</span>
+    }
+}
+
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Valoracion.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Valoracion.html
new file mode 100644
index 0000000000000000000000000000000000000000..d5897835256d4c31e5a5aef34f3e76604ba8f1a4
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Valoracion.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Valoracion</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.html" class="el_package">Logica.Clases</a> &gt; <span class="el_class">Valoracion</span></div><h1>Valoracion</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">0 of 84</td><td class="ctr2">100%</td><td class="bar">0 of 12</td><td class="ctr2">100%</td><td class="ctr1">0</td><td class="ctr2">13</td><td class="ctr1">0</td><td class="ctr2">25</td><td class="ctr1">0</td><td class="ctr2">7</td></tr></tfoot><tbody><tr><td id="a4"><a href="Valoracion.java.html#L46" class="el_method">modificar(DtValoracion, String)</a></td><td class="bar" id="b0"><img src="../.resources/greenbar.gif" width="120" height="10" title="28" alt="28"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d0"><img src="../.resources/greenbar.gif" width="120" height="10" title="6" alt="6"/></td><td class="ctr2" id="e0">100%</td><td class="ctr1" id="f0">0</td><td class="ctr2" id="g0">4</td><td class="ctr1" id="h0">0</td><td class="ctr2" id="i0">8</td><td class="ctr1" id="j0">0</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a1"><a href="Valoracion.java.html#L35" class="el_method">getDT(String)</a></td><td class="bar" id="b1"><img src="../.resources/greenbar.gif" width="77" height="10" title="18" alt="18"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d1"><img src="../.resources/greenbar.gif" width="80" height="10" title="4" alt="4"/></td><td class="ctr2" id="e1">100%</td><td class="ctr1" id="f1">0</td><td class="ctr2" id="g1">3</td><td class="ctr1" id="h1">0</td><td class="ctr2" id="i2">5</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a6"><a href="Valoracion.java.html#L10" class="el_method">Valoracion(TipoValoracion, Usuario)</a></td><td class="bar" id="b2"><img src="../.resources/greenbar.gif" width="68" height="10" title="16" alt="16"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d2"><img src="../.resources/greenbar.gif" width="40" height="10" title="2" alt="2"/></td><td class="ctr2" id="e2">100%</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g2">2</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i1">6</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a0"><a href="Valoracion.java.html#L31" class="el_method">getDT()</a></td><td class="bar" id="b3"><img src="../.resources/greenbar.gif" width="47" height="10" title="11" alt="11"/></td><td class="ctr2" id="c3">100%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i3">2</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a5"><a href="Valoracion.java.html#L23" class="el_method">setVal(TipoValoracion)</a></td><td class="bar" id="b4"><img src="../.resources/greenbar.gif" width="17" height="10" title="4" alt="4"/></td><td class="ctr2" id="c4">100%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">0</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h4">0</td><td class="ctr2" id="i4">2</td><td class="ctr1" id="j4">0</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a2"><a href="Valoracion.java.html#L27" class="el_method">getNicknameDeUsuario()</a></td><td class="bar" id="b5"><img src="../.resources/greenbar.gif" width="17" height="10" title="4" alt="4"/></td><td class="ctr2" id="c5">100%</td><td class="bar" id="d5"/><td class="ctr2" id="e5">n/a</td><td class="ctr1" id="f5">0</td><td class="ctr2" id="g5">1</td><td class="ctr1" id="h5">0</td><td class="ctr2" id="i5">1</td><td class="ctr1" id="j5">0</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a3"><a href="Valoracion.java.html#L19" class="el_method">getVal()</a></td><td class="bar" id="b6"><img src="../.resources/greenbar.gif" width="12" height="10" title="3" alt="3"/></td><td class="ctr2" id="c6">100%</td><td class="bar" id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f6">0</td><td class="ctr2" id="g6">1</td><td class="ctr1" id="h6">0</td><td class="ctr2" id="i6">1</td><td class="ctr1" id="j6">0</td><td class="ctr2" id="k6">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Valoracion.java.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Valoracion.java.html
new file mode 100644
index 0000000000000000000000000000000000000000..cddc6be7e56b4bce2c4bb1d9c38ac02a1d1879bf
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Valoracion.java.html
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Valoracion.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.source.html" class="el_package">Logica.Clases</a> &gt; <span class="el_source">Valoracion.java</span></div><h1>Valoracion.java</h1><pre class="source lang-java linenums">package Logica.Clases;
+
+import Logica.DataType.DtValoracion;
+import Logica.Enumerados.TipoValoracion;
+
+public class Valoracion {
+    private TipoValoracion val;
+    private Usuario usr;
+ 
+<span class="fc" id="L10">    public Valoracion(TipoValoracion val, Usuario usr) {</span>
+<span class="fc bfc" id="L11" title="All 2 branches covered.">        if(usr==null){</span>
+<span class="fc" id="L12">            throw new RuntimeException(&quot;Usuario No puede ser null&quot;);</span>
+        }
+<span class="fc" id="L14">        this.val = val;</span>
+<span class="fc" id="L15">        this.usr = usr;</span>
+<span class="fc" id="L16">    }</span>
+
+    public TipoValoracion getVal() {
+<span class="fc" id="L19">        return val;</span>
+    }
+
+    public void setVal(TipoValoracion val) {
+<span class="fc" id="L23">        this.val = val;</span>
+<span class="fc" id="L24">    }</span>
+
+    public String getNicknameDeUsuario() {
+<span class="fc" id="L27">        return this.usr.getNickname();</span>
+    }
+    
+    public DtValoracion getDT(){
+<span class="fc" id="L31">        DtValoracion dtV = new DtValoracion(this.val, this.usr.getNickname());</span>
+<span class="fc" id="L32">        return dtV;</span>
+    }
+    public DtValoracion getDT(String nickname){
+<span class="fc bfc" id="L35" title="All 2 branches covered.">        if(nickname==null){</span>
+<span class="fc" id="L36">            throw new RuntimeException(&quot;Nickname No puede ser null&quot;);</span>
+        }
+        // si esta valoracion corresponde al usuario, devuelve su DT, sino null
+<span class="fc bfc" id="L39" title="All 2 branches covered.">        if (nickname.equals(this.usr.getNickname())){</span>
+<span class="fc" id="L40">            return this.getDT();</span>
+        }else{
+<span class="fc" id="L42">            return null;</span>
+        }
+    }
+    public boolean modificar(DtValoracion dtV, String nickname){
+<span class="fc bfc" id="L46" title="All 2 branches covered.">        if(dtV==null){</span>
+<span class="fc" id="L47">            throw new RuntimeException(&quot;DtValoracion No puede ser null&quot;);</span>
+        }
+<span class="fc bfc" id="L49" title="All 2 branches covered.">        if(nickname==null){</span>
+<span class="fc" id="L50">            throw new RuntimeException(&quot;Nickname No puede ser null&quot;);</span>
+        }
+<span class="fc bfc" id="L52" title="All 2 branches covered.">        if (nickname.equals(this.usr.getNickname())){</span>
+<span class="fc" id="L53">            this.val = dtV.getVal();</span>
+<span class="fc" id="L54">            return true;</span>
+        }else{
+<span class="fc" id="L56">            return false;</span>
+        }
+    }
+    
+    
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Video.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Video.html
new file mode 100644
index 0000000000000000000000000000000000000000..fe93188a1acc69e8c8bf4e60dc546baa85b9bebe
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Video.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Video</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.html" class="el_package">Logica.Clases</a> &gt; <span class="el_class">Video</span></div><h1>Video</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">636 of 636</td><td class="ctr2">0%</td><td class="bar">66 of 66</td><td class="ctr2">0%</td><td class="ctr1">67</td><td class="ctr2">67</td><td class="ctr1">137</td><td class="ctr2">137</td><td class="ctr1">34</td><td class="ctr2">34</td></tr></tfoot><tbody><tr><td id="a2"><a href="Video.java.html#L82" class="el_method">agregarModificarValoracion(DtValoracion, Usuario)</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="120" height="10" title="89" alt="89"/></td><td class="ctr2" id="c0">0%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="120" height="10" title="14" alt="14"/></td><td class="ctr2" id="e0">0%</td><td class="ctr1" id="f0">8</td><td class="ctr2" id="g0">8</td><td class="ctr1" id="h0">20</td><td class="ctr2" id="i0">20</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a33"><a href="Video.java.html#L20" class="el_method">Video(int, String, String, Time, Date, String, String)</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="118" height="10" title="88" alt="88"/></td><td class="ctr2" id="c1">0%</td><td class="bar" id="d1"><img src="../.resources/redbar.gif" width="102" height="10" title="12" alt="12"/></td><td class="ctr2" id="e1">0%</td><td class="ctr1" id="f1">7</td><td class="ctr2" id="g1">7</td><td class="ctr1" id="h1">20</td><td class="ctr2" id="i1">20</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a17"><a href="Video.java.html#L148" class="el_method">modificar(DtVideo)</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="88" height="10" title="66" alt="66"/></td><td class="ctr2" id="c2">0%</td><td class="bar" id="d2"><img src="../.resources/redbar.gif" width="85" height="10" title="10" alt="10"/></td><td class="ctr2" id="e2">0%</td><td class="ctr1" id="f2">6</td><td class="ctr2" id="g2">6</td><td class="ctr1" id="h2">17</td><td class="ctr2" id="i2">17</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a31"><a href="Video.java.html#L303" class="el_method">toString()</a></td><td class="bar" id="b3"><img src="../.resources/redbar.gif" width="76" height="10" title="57" alt="57"/></td><td class="ctr2" id="c3">0%</td><td class="bar" id="d9"/><td class="ctr2" id="e9">n/a</td><td class="ctr1" id="f9">1</td><td class="ctr2" id="g9">1</td><td class="ctr1" id="h21">1</td><td class="ctr2" id="i21">1</td><td class="ctr1" id="j3">1</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a19"><a href="Video.java.html#L192" class="el_method">quitarValoracion(String)</a></td><td class="bar" id="b4"><img src="../.resources/redbar.gif" width="74" height="10" title="55" alt="55"/></td><td class="ctr2" id="c4">0%</td><td class="bar" id="d3"><img src="../.resources/redbar.gif" width="68" height="10" title="8" alt="8"/></td><td class="ctr2" id="e3">0%</td><td class="ctr1" id="f3">5</td><td class="ctr2" id="g3">5</td><td class="ctr1" id="h3">10</td><td class="ctr2" id="i3">10</td><td class="ctr1" id="j4">1</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a1"><a href="Video.java.html#L66" class="el_method">agregarComentario(int, DtComentario, Usuario)</a></td><td class="bar" id="b5"><img src="../.resources/redbar.gif" width="49" height="10" title="37" alt="37"/></td><td class="ctr2" id="c5">0%</td><td class="bar" id="d4"><img src="../.resources/redbar.gif" width="68" height="10" title="8" alt="8"/></td><td class="ctr2" id="e4">0%</td><td class="ctr1" id="f4">5</td><td class="ctr2" id="g4">5</td><td class="ctr1" id="h4">9</td><td class="ctr2" id="i4">9</td><td class="ctr1" id="j5">1</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a0"><a href="Video.java.html#L52" class="el_method">agregarComentario(DtComentario, Usuario)</a></td><td class="bar" id="b6"><img src="../.resources/redbar.gif" width="47" height="10" title="35" alt="35"/></td><td class="ctr2" id="c6">0%</td><td class="bar" id="d6"><img src="../.resources/redbar.gif" width="34" height="10" title="4" alt="4"/></td><td class="ctr2" id="e5">0%</td><td class="ctr1" id="f6">3</td><td class="ctr2" id="g6">3</td><td class="ctr1" id="h5">8</td><td class="ctr2" id="i5">8</td><td class="ctr1" id="j6">1</td><td class="ctr2" id="k6">1</td></tr><tr><td id="a18"><a href="Video.java.html#L180" class="el_method">obtenerValoracion(String)</a></td><td class="bar" id="b7"><img src="../.resources/redbar.gif" width="47" height="10" title="35" alt="35"/></td><td class="ctr2" id="c7">0%</td><td class="bar" id="d5"><img src="../.resources/redbar.gif" width="51" height="10" title="6" alt="6"/></td><td class="ctr2" id="e6">0%</td><td class="ctr1" id="f5">4</td><td class="ctr2" id="g5">4</td><td class="ctr1" id="h6">6</td><td class="ctr2" id="i6">6</td><td class="ctr1" id="j7">1</td><td class="ctr2" id="k7">1</td></tr><tr><td id="a15"><a href="Video.java.html#L126" class="el_method">listarComentarios()</a></td><td class="bar" id="b8"><img src="../.resources/redbar.gif" width="44" height="10" title="33" alt="33"/></td><td class="ctr2" id="c8">0%</td><td class="bar" id="d7"><img src="../.resources/redbar.gif" width="17" height="10" title="2" alt="2"/></td><td class="ctr2" id="e7">0%</td><td class="ctr1" id="f7">2</td><td class="ctr2" id="g7">2</td><td class="ctr1" id="h7">6</td><td class="ctr2" id="i7">6</td><td class="ctr1" id="j8">1</td><td class="ctr2" id="k8">1</td></tr><tr><td id="a7"><a href="Video.java.html#L122" class="el_method">getDt()</a></td><td class="bar" id="b9"><img src="../.resources/redbar.gif" width="32" height="10" title="24" alt="24"/></td><td class="ctr2" id="c9">0%</td><td class="bar" id="d10"/><td class="ctr2" id="e10">n/a</td><td class="ctr1" id="f10">1</td><td class="ctr2" id="g10">1</td><td class="ctr1" id="h22">1</td><td class="ctr2" id="i22">1</td><td class="ctr1" id="j9">1</td><td class="ctr2" id="k9">1</td></tr><tr><td id="a16"><a href="Video.java.html#L138" class="el_method">listarValoraciones()</a></td><td class="bar" id="b10"><img src="../.resources/redbar.gif" width="32" height="10" title="24" alt="24"/></td><td class="ctr2" id="c10">0%</td><td class="bar" id="d8"><img src="../.resources/redbar.gif" width="17" height="10" title="2" alt="2"/></td><td class="ctr2" id="e8">0%</td><td class="ctr1" id="f8">2</td><td class="ctr2" id="g8">2</td><td class="ctr1" id="h9">4</td><td class="ctr2" id="i9">4</td><td class="ctr1" id="j10">1</td><td class="ctr2" id="k10">1</td></tr><tr><td id="a32"><a href="Video.java.html#L20" class="el_method">Video()</a></td><td class="bar" id="b11"><img src="../.resources/redbar.gif" width="16" height="10" title="12" alt="12"/></td><td class="ctr2" id="c11">0%</td><td class="bar" id="d11"/><td class="ctr2" id="e11">n/a</td><td class="ctr1" id="f11">1</td><td class="ctr2" id="g11">1</td><td class="ctr1" id="h8">5</td><td class="ctr2" id="i8">5</td><td class="ctr1" id="j11">1</td><td class="ctr2" id="k11">1</td></tr><tr><td id="a12"><a href="Video.java.html#L216" class="el_method">getNuevoId()</a></td><td class="bar" id="b12"><img src="../.resources/redbar.gif" width="10" height="10" title="8" alt="8"/></td><td class="ctr2" id="c12">0%</td><td class="bar" id="d12"/><td class="ctr2" id="e12">n/a</td><td class="ctr1" id="f12">1</td><td class="ctr2" id="g12">1</td><td class="ctr1" id="h10">2</td><td class="ctr2" id="i10">2</td><td class="ctr1" id="j12">1</td><td class="ctr2" id="k12">1</td></tr><tr><td id="a26"><a href="Video.java.html#L226" class="el_method">setId(int)</a></td><td class="bar" id="b13"><img src="../.resources/redbar.gif" width="5" height="10" title="4" alt="4"/></td><td class="ctr2" id="c13">0%</td><td class="bar" id="d13"/><td class="ctr2" id="e13">n/a</td><td class="ctr1" id="f13">1</td><td class="ctr2" id="g13">1</td><td class="ctr1" id="h11">2</td><td class="ctr2" id="i11">2</td><td class="ctr1" id="j13">1</td><td class="ctr2" id="k13">1</td></tr><tr><td id="a27"><a href="Video.java.html#L234" class="el_method">setNombre(String)</a></td><td class="bar" id="b14"><img src="../.resources/redbar.gif" width="5" height="10" title="4" alt="4"/></td><td class="ctr2" id="c14">0%</td><td class="bar" id="d14"/><td class="ctr2" id="e14">n/a</td><td class="ctr1" id="f14">1</td><td class="ctr2" id="g14">1</td><td class="ctr1" id="h12">2</td><td class="ctr2" id="i12">2</td><td class="ctr1" id="j14">1</td><td class="ctr2" id="k14">1</td></tr><tr><td id="a23"><a href="Video.java.html#L242" class="el_method">setDescripcion(String)</a></td><td class="bar" id="b15"><img src="../.resources/redbar.gif" width="5" height="10" title="4" alt="4"/></td><td class="ctr2" id="c15">0%</td><td class="bar" id="d15"/><td class="ctr2" id="e15">n/a</td><td class="ctr1" id="f15">1</td><td class="ctr2" id="g15">1</td><td class="ctr1" id="h13">2</td><td class="ctr2" id="i13">2</td><td class="ctr1" id="j15">1</td><td class="ctr2" id="k15">1</td></tr><tr><td id="a24"><a href="Video.java.html#L250" class="el_method">setDuracion(Time)</a></td><td class="bar" id="b16"><img src="../.resources/redbar.gif" width="5" height="10" title="4" alt="4"/></td><td class="ctr2" id="c16">0%</td><td class="bar" id="d16"/><td class="ctr2" id="e16">n/a</td><td class="ctr1" id="f16">1</td><td class="ctr2" id="g16">1</td><td class="ctr1" id="h14">2</td><td class="ctr2" id="i14">2</td><td class="ctr1" id="j16">1</td><td class="ctr2" id="k16">1</td></tr><tr><td id="a25"><a href="Video.java.html#L258" class="el_method">setFechaPublicacion(Date)</a></td><td class="bar" id="b17"><img src="../.resources/redbar.gif" width="5" height="10" title="4" alt="4"/></td><td class="ctr2" id="c17">0%</td><td class="bar" id="d17"/><td class="ctr2" id="e17">n/a</td><td class="ctr1" id="f17">1</td><td class="ctr2" id="g17">1</td><td class="ctr1" id="h15">2</td><td class="ctr2" id="i15">2</td><td class="ctr1" id="j17">1</td><td class="ctr2" id="k17">1</td></tr><tr><td id="a29"><a href="Video.java.html#L266" class="el_method">setUrlVideoOriginal(String)</a></td><td class="bar" id="b18"><img src="../.resources/redbar.gif" width="5" height="10" title="4" alt="4"/></td><td class="ctr2" id="c18">0%</td><td class="bar" id="d18"/><td class="ctr2" id="e18">n/a</td><td class="ctr1" id="f18">1</td><td class="ctr2" id="g18">1</td><td class="ctr1" id="h16">2</td><td class="ctr2" id="i16">2</td><td class="ctr1" id="j18">1</td><td class="ctr2" id="k18">1</td></tr><tr><td id="a28"><a href="Video.java.html#L274" class="el_method">setPrivacidad(Privacidad)</a></td><td class="bar" id="b19"><img src="../.resources/redbar.gif" width="5" height="10" title="4" alt="4"/></td><td class="ctr2" id="c19">0%</td><td class="bar" id="d19"/><td class="ctr2" id="e19">n/a</td><td class="ctr1" id="f19">1</td><td class="ctr2" id="g19">1</td><td class="ctr1" id="h17">2</td><td class="ctr2" id="i17">2</td><td class="ctr1" id="j19">1</td><td class="ctr2" id="k19">1</td></tr><tr><td id="a22"><a href="Video.java.html#L282" class="el_method">setCategoria(String)</a></td><td class="bar" id="b20"><img src="../.resources/redbar.gif" width="5" height="10" title="4" alt="4"/></td><td class="ctr2" id="c20">0%</td><td class="bar" id="d20"/><td class="ctr2" id="e20">n/a</td><td class="ctr1" id="f20">1</td><td class="ctr2" id="g20">1</td><td class="ctr1" id="h18">2</td><td class="ctr2" id="i18">2</td><td class="ctr1" id="j20">1</td><td class="ctr2" id="k20">1</td></tr><tr><td id="a21"><a href="Video.java.html#L290" class="el_method">setCantLikes(int)</a></td><td class="bar" id="b21"><img src="../.resources/redbar.gif" width="5" height="10" title="4" alt="4"/></td><td class="ctr2" id="c21">0%</td><td class="bar" id="d21"/><td class="ctr2" id="e21">n/a</td><td class="ctr1" id="f21">1</td><td class="ctr2" id="g21">1</td><td class="ctr1" id="h19">2</td><td class="ctr2" id="i19">2</td><td class="ctr1" id="j21">1</td><td class="ctr2" id="k21">1</td></tr><tr><td id="a20"><a href="Video.java.html#L298" class="el_method">setCantDisLikes(int)</a></td><td class="bar" id="b22"><img src="../.resources/redbar.gif" width="5" height="10" title="4" alt="4"/></td><td class="ctr2" id="c22">0%</td><td class="bar" id="d22"/><td class="ctr2" id="e22">n/a</td><td class="ctr1" id="f22">1</td><td class="ctr2" id="g22">1</td><td class="ctr1" id="h20">2</td><td class="ctr2" id="i20">2</td><td class="ctr1" id="j22">1</td><td class="ctr2" id="k22">1</td></tr><tr><td id="a10"><a href="Video.java.html#L222" class="el_method">getId()</a></td><td class="bar" id="b23"><img src="../.resources/redbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c23">0%</td><td class="bar" id="d23"/><td class="ctr2" id="e23">n/a</td><td class="ctr1" id="f23">1</td><td class="ctr2" id="g23">1</td><td class="ctr1" id="h23">1</td><td class="ctr2" id="i23">1</td><td class="ctr1" id="j23">1</td><td class="ctr2" id="k23">1</td></tr><tr><td id="a11"><a href="Video.java.html#L230" class="el_method">getNombre()</a></td><td class="bar" id="b24"><img src="../.resources/redbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c24">0%</td><td class="bar" id="d24"/><td class="ctr2" id="e24">n/a</td><td class="ctr1" id="f24">1</td><td class="ctr2" id="g24">1</td><td class="ctr1" id="h24">1</td><td class="ctr2" id="i24">1</td><td class="ctr1" id="j24">1</td><td class="ctr2" id="k24">1</td></tr><tr><td id="a6"><a href="Video.java.html#L238" class="el_method">getDescripcion()</a></td><td class="bar" id="b25"><img src="../.resources/redbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c25">0%</td><td class="bar" id="d25"/><td class="ctr2" id="e25">n/a</td><td class="ctr1" id="f25">1</td><td class="ctr2" id="g25">1</td><td class="ctr1" id="h25">1</td><td class="ctr2" id="i25">1</td><td class="ctr1" id="j25">1</td><td class="ctr2" id="k25">1</td></tr><tr><td id="a8"><a href="Video.java.html#L246" class="el_method">getDuracion()</a></td><td class="bar" id="b26"><img src="../.resources/redbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c26">0%</td><td class="bar" id="d26"/><td class="ctr2" id="e26">n/a</td><td class="ctr1" id="f26">1</td><td class="ctr2" id="g26">1</td><td class="ctr1" id="h26">1</td><td class="ctr2" id="i26">1</td><td class="ctr1" id="j26">1</td><td class="ctr2" id="k26">1</td></tr><tr><td id="a9"><a href="Video.java.html#L254" class="el_method">getFechaPublicacion()</a></td><td class="bar" id="b27"><img src="../.resources/redbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c27">0%</td><td class="bar" id="d27"/><td class="ctr2" id="e27">n/a</td><td class="ctr1" id="f27">1</td><td class="ctr2" id="g27">1</td><td class="ctr1" id="h27">1</td><td class="ctr2" id="i27">1</td><td class="ctr1" id="j27">1</td><td class="ctr2" id="k27">1</td></tr><tr><td id="a14"><a href="Video.java.html#L262" class="el_method">getUrlVideoOriginal()</a></td><td class="bar" id="b28"><img src="../.resources/redbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c28">0%</td><td class="bar" id="d28"/><td class="ctr2" id="e28">n/a</td><td class="ctr1" id="f28">1</td><td class="ctr2" id="g28">1</td><td class="ctr1" id="h28">1</td><td class="ctr2" id="i28">1</td><td class="ctr1" id="j28">1</td><td class="ctr2" id="k28">1</td></tr><tr><td id="a13"><a href="Video.java.html#L270" class="el_method">getPrivacidad()</a></td><td class="bar" id="b29"><img src="../.resources/redbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c29">0%</td><td class="bar" id="d29"/><td class="ctr2" id="e29">n/a</td><td class="ctr1" id="f29">1</td><td class="ctr2" id="g29">1</td><td class="ctr1" id="h29">1</td><td class="ctr2" id="i29">1</td><td class="ctr1" id="j29">1</td><td class="ctr2" id="k29">1</td></tr><tr><td id="a5"><a href="Video.java.html#L278" class="el_method">getCategoria()</a></td><td class="bar" id="b30"><img src="../.resources/redbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c30">0%</td><td class="bar" id="d30"/><td class="ctr2" id="e30">n/a</td><td class="ctr1" id="f30">1</td><td class="ctr2" id="g30">1</td><td class="ctr1" id="h30">1</td><td class="ctr2" id="i30">1</td><td class="ctr1" id="j30">1</td><td class="ctr2" id="k30">1</td></tr><tr><td id="a4"><a href="Video.java.html#L286" class="el_method">getCantLikes()</a></td><td class="bar" id="b31"><img src="../.resources/redbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c31">0%</td><td class="bar" id="d31"/><td class="ctr2" id="e31">n/a</td><td class="ctr1" id="f31">1</td><td class="ctr2" id="g31">1</td><td class="ctr1" id="h31">1</td><td class="ctr2" id="i31">1</td><td class="ctr1" id="j31">1</td><td class="ctr2" id="k31">1</td></tr><tr><td id="a3"><a href="Video.java.html#L294" class="el_method">getCantDisLikes()</a></td><td class="bar" id="b32"><img src="../.resources/redbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c32">0%</td><td class="bar" id="d32"/><td class="ctr2" id="e32">n/a</td><td class="ctr1" id="f32">1</td><td class="ctr2" id="g32">1</td><td class="ctr1" id="h32">1</td><td class="ctr2" id="i32">1</td><td class="ctr1" id="j32">1</td><td class="ctr2" id="k32">1</td></tr><tr><td id="a30"><a href="Video.java.html#L26" class="el_method">static {...}</a></td><td class="bar" id="b33"><img src="../.resources/redbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c33">0%</td><td class="bar" id="d33"/><td class="ctr2" id="e33">n/a</td><td class="ctr1" id="f33">1</td><td class="ctr2" id="g33">1</td><td class="ctr1" id="h33">1</td><td class="ctr2" id="i33">1</td><td class="ctr1" id="j33">1</td><td class="ctr2" id="k33">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Video.java.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Video.java.html
new file mode 100644
index 0000000000000000000000000000000000000000..0a3e86759af9332ed980182b1e8877b03beff673
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/Video.java.html
@@ -0,0 +1,310 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Video.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.source.html" class="el_package">Logica.Clases</a> &gt; <span class="el_source">Video.java</span></div><h1>Video.java</h1><pre class="source lang-java linenums">package Logica.Clases;
+import Logica.DataType.DtComentario;
+import Logica.DataType.DtValoracion;
+import Logica.DataType.DtVideo;
+import java.sql.Time;
+import java.sql.Date;
+import Logica.Enumerados.Privacidad;
+import Logica.Enumerados.TipoValoracion;
+import java.util.ArrayList;
+import java.util.Map;
+import java.util.TreeMap;
+
+public class Video {    
+    private int id;
+    private String nombre;
+    private String descripcion;
+    private Time duracion;
+    private Date fechaPublicacion;
+    private String urlVideoOriginal;
+<span class="nc" id="L20">    private Privacidad privacidad = Privacidad.PRIVADO;</span>
+    private String categoria;
+<span class="nc" id="L22">    private int cantLikes = 0;</span>
+<span class="nc" id="L23">    private int cantDisLikes = 0;</span>
+    private ArrayList&lt;Valoracion&gt; valoraciones;
+    private Map&lt;Integer, Comentario&gt; comentarios;
+<span class="nc" id="L26">    private static int idActual = 1;</span>
+    
+<span class="nc" id="L28">    public Video(){</span>
+        
+<span class="nc" id="L30">    }</span>
+    /********************** Constructor *********************/
+<span class="nc" id="L32">    public Video(int _id, String _nombre, String _descripcion,Time _duracion, Date _fechaPublicacion,String _urlVideoOriginal,String _categoria ){</span>
+<span class="nc bnc" id="L33" title="All 2 branches missed.">        if( _id &lt; 0){ throw new RuntimeException(&quot;Error, el id del video es un negativo o cero.&quot;); }</span>
+<span class="nc bnc" id="L34" title="All 2 branches missed.">        if( _nombre == &quot;&quot;){ throw new RuntimeException(&quot;Error, el nombre del video está vacío&quot;);}</span>
+<span class="nc bnc" id="L35" title="All 2 branches missed.">        if( _duracion == null){ throw new RuntimeException(&quot;Error, la duración del video es null.&quot;);}</span>
+<span class="nc bnc" id="L36" title="All 2 branches missed.">        if( _fechaPublicacion == null){ throw new RuntimeException(&quot;Error, la fecha de publicación del video es null.&quot;);}</span>
+<span class="nc bnc" id="L37" title="All 2 branches missed.">        if( _urlVideoOriginal == &quot;&quot;){ throw new RuntimeException(&quot;Error, la url del video está vacía.&quot;);}</span>
+<span class="nc bnc" id="L38" title="All 2 branches missed.">        if( _categoria == &quot;&quot; ){ throw new RuntimeException(&quot;Error, la descripción del video está vacía.&quot;);}</span>
+<span class="nc" id="L39">        this.id = _id;</span>
+<span class="nc" id="L40">        this.nombre = _nombre;</span>
+<span class="nc" id="L41">        this.descripcion = _descripcion;</span>
+<span class="nc" id="L42">        this.duracion = _duracion;</span>
+<span class="nc" id="L43">        this.fechaPublicacion = _fechaPublicacion;</span>
+<span class="nc" id="L44">        this.urlVideoOriginal = _urlVideoOriginal;    </span>
+<span class="nc" id="L45">        this.categoria = _categoria;</span>
+<span class="nc" id="L46">        this.valoraciones = new ArrayList&lt;Valoracion&gt;();</span>
+<span class="nc" id="L47">        this.comentarios = new TreeMap&lt;Integer, Comentario&gt;();        </span>
+<span class="nc" id="L48">    }</span>
+    
+    /** Agregar un nuevo comentario **/
+    public void agregarComentario(DtComentario dtComentario, Usuario usuario){
+<span class="nc bnc" id="L52" title="All 2 branches missed.">        if (dtComentario == null){</span>
+<span class="nc" id="L53">            throw new RuntimeException(&quot;El DataType es null&quot;);</span>
+        }
+<span class="nc bnc" id="L55" title="All 2 branches missed.">        if (usuario == null){</span>
+<span class="nc" id="L56">            throw new RuntimeException(&quot;El usuario es null&quot;);</span>
+        }
+        
+<span class="nc" id="L59">        int nuevoId = Comentario.getNuevoID();</span>
+<span class="nc" id="L60">        Comentario nuevoComentario = new Comentario(nuevoId, dtComentario.getFecha(), dtComentario.getTexto(), 0, usuario);</span>
+<span class="nc" id="L61">        comentarios.put(nuevoId, nuevoComentario);</span>
+<span class="nc" id="L62">    }</span>
+    
+    /*  Agregar un subcomentario a un comentario existente  */
+    public void agregarComentario(int idCom, DtComentario dtComentario, Usuario usuario){
+<span class="nc bnc" id="L66" title="All 2 branches missed.">        if (dtComentario == null){</span>
+<span class="nc" id="L67">            throw new RuntimeException(&quot;El DataType es null&quot;);</span>
+        }
+<span class="nc bnc" id="L69" title="All 2 branches missed.">        if (usuario == null){</span>
+<span class="nc" id="L70">            throw new RuntimeException(&quot;El usuario es null&quot;);</span>
+        }
+        
+<span class="nc bnc" id="L73" title="All 2 branches missed.">        for (Map.Entry&lt;Integer, Comentario&gt; coment : comentarios.entrySet()) {</span>
+<span class="nc bnc" id="L74" title="All 2 branches missed.">            if(coment.getValue().agregarSubComentario(idCom, dtComentario, usuario)){</span>
+<span class="nc" id="L75">                break;</span>
+            }
+<span class="nc" id="L77">        }</span>
+<span class="nc" id="L78">    }</span>
+    
+    /* Agrega o midifica una valoración */
+    public void agregarModificarValoracion(DtValoracion dtValoracion, Usuario usuario) {
+<span class="nc bnc" id="L82" title="All 2 branches missed.">        if (dtValoracion == null) {</span>
+<span class="nc" id="L83">            throw new RuntimeException(&quot;El DataType es null&quot;);</span>
+        }
+<span class="nc bnc" id="L85" title="All 2 branches missed.">        if (usuario == null){</span>
+<span class="nc" id="L86">            throw new RuntimeException(&quot;El usuario es null&quot;);</span>
+        }
+        
+<span class="nc" id="L89">        String nickname = usuario.getNickname();</span>
+        // por las dudas, para que los contadores de likes no queden inconsistentes:
+        // obtengo la valoracion que le habia dado antes el usuario (si es que lo habia alorado)
+<span class="nc" id="L92">        DtValoracion dtv = this.obtenerValoracion(nickname);</span>
+        // si el usuario ya lo valoro
+<span class="nc bnc" id="L94" title="All 2 branches missed.">        if (dtv != null) {</span>
+            // segun cual fuera la valoracion anterior, resta 1 al contador
+<span class="nc bnc" id="L96" title="All 2 branches missed.">            if (dtv.getVal() == TipoValoracion.LIKE) {</span>
+<span class="nc" id="L97">                cantLikes--;</span>
+            } else {
+<span class="nc" id="L99">                cantDisLikes--;</span>
+            }
+
+<span class="nc bnc" id="L102" title="All 2 branches missed.">            for (Valoracion val : valoraciones) {</span>
+<span class="nc bnc" id="L103" title="All 2 branches missed.">                if (val.modificar(dtValoracion, nickname)) {</span>
+<span class="nc" id="L104">                    break;</span>
+                }
+<span class="nc" id="L106">            }</span>
+        } else {
+<span class="nc" id="L108">            Valoracion nuevaValoracion = new Valoracion(dtValoracion.getVal(), usuario);</span>
+<span class="nc" id="L109">            valoraciones.add(nuevaValoracion);</span>
+        }
+
+        // segun cual sea la nueva valoracion, suma 1 al contador
+<span class="nc bnc" id="L113" title="All 2 branches missed.">        if (dtValoracion.getVal() == TipoValoracion.LIKE) {</span>
+<span class="nc" id="L114">            cantLikes++;</span>
+        } else {
+<span class="nc" id="L116">            cantDisLikes++;</span>
+        }
+
+<span class="nc" id="L119">    }</span>
+
+    public DtVideo getDt(){
+<span class="nc" id="L122">        return new DtVideo(this.id, this.nombre, this.descripcion, this.duracion, this.fechaPublicacion, this.urlVideoOriginal, this.privacidad, this.categoria, this.cantLikes, this.cantDisLikes);</span>
+    }
+    
+    public ArrayList&lt;DtComentario&gt; listarComentarios(){
+<span class="nc" id="L126">        ArrayList&lt;DtComentario&gt; listaComent = new ArrayList&lt;DtComentario&gt;();</span>
+        // recorro los comentarios sobre el video
+<span class="nc bnc" id="L128" title="All 2 branches missed.">        for (Map.Entry&lt;Integer, Comentario&gt; coment : comentarios.entrySet()) {</span>
+            // le obtengo el DT y lo agrego a la lista resultado
+<span class="nc" id="L130">            listaComent.add(coment.getValue().getDT());</span>
+            // agrego a la lista resultado, la lista de sub comentarios
+<span class="nc" id="L132">            listaComent.addAll(coment.getValue().listarSubComentarios());</span>
+<span class="nc" id="L133">        }</span>
+<span class="nc" id="L134">        return listaComent;</span>
+    }
+   
+    public ArrayList&lt;DtValoracion&gt; listarValoraciones(){
+<span class="nc" id="L138">        ArrayList&lt;DtValoracion&gt; listaValoraciones = new ArrayList();</span>
+        // recorre todo el array de valoraciones
+<span class="nc bnc" id="L140" title="All 2 branches missed.">        for(int i = 0; i &lt; this.valoraciones.size(); i++){</span>
+            // para cada elemento le pide el DT (al llamar esa funcion es que hace el new) y lo agrega a la coleccion de retorno
+<span class="nc" id="L142">            listaValoraciones.add(this.valoraciones.get(i).getDT());</span>
+        }
+<span class="nc" id="L144">        return listaValoraciones;</span>
+    }
+    
+    public void modificar(DtVideo dtVideo){
+<span class="nc bnc" id="L148" title="All 2 branches missed.">        if(dtVideo == null){</span>
+<span class="nc" id="L149">            throw new RuntimeException(&quot;El DtVideo es vacío&quot;);</span>
+        }
+        // Perdon julio pero no entendi nada xD
+        
+<span class="nc bnc" id="L153" title="All 2 branches missed.">        if(dtVideo.getNombre()== &quot;&quot;){</span>
+<span class="nc" id="L154">            throw new RuntimeException(&quot;El nombre no puede ser vacío&quot;);</span>
+        } 
+        
+<span class="nc bnc" id="L157" title="All 2 branches missed.">        if (dtVideo.getDuracion()== null) {</span>
+<span class="nc" id="L158">            throw new RuntimeException(&quot;La duracion no puede ser vacía&quot;);</span>
+        }
+        
+<span class="nc bnc" id="L161" title="All 2 branches missed.">        if (dtVideo.getFechaPublicacion() == null) {</span>
+<span class="nc" id="L162">            throw new RuntimeException(&quot;La fecha no puede ser vacía&quot;);</span>
+        }
+        
+<span class="nc bnc" id="L165" title="All 2 branches missed.">        if (dtVideo.getCategoria() == &quot;&quot;) {</span>
+<span class="nc" id="L166">            throw new RuntimeException(&quot;La categoria no puede ser vacía&quot;);</span>
+        }
+        
+<span class="nc" id="L169">        this.nombre = dtVideo.getNombre();</span>
+<span class="nc" id="L170">        this.descripcion = dtVideo.getDescripcion();</span>
+<span class="nc" id="L171">        this.duracion = dtVideo.getDuracion();</span>
+<span class="nc" id="L172">        this.fechaPublicacion = dtVideo.getFechaPublicacion();</span>
+<span class="nc" id="L173">        this.privacidad = dtVideo.getPrivacidad();</span>
+<span class="nc" id="L174">        this.categoria = dtVideo.getCategoria();</span>
+        
+<span class="nc" id="L176">    }</span>
+    
+    /*   Obtiene la valoracion que hizo un usuario */
+    public DtValoracion obtenerValoracion(String nickname) {
+<span class="nc bnc" id="L180" title="All 2 branches missed.">        if (nickname.equals(&quot;&quot;)) {</span>
+<span class="nc" id="L181">            throw new RuntimeException(&quot;El nickname no puede ser vacio&quot;);</span>
+        }
+<span class="nc bnc" id="L183" title="All 2 branches missed.">        for(int i = 0; i &lt; this.valoraciones.size(); i++){</span>
+<span class="nc bnc" id="L184" title="All 2 branches missed.">            if( valoraciones.get(i).getNicknameDeUsuario() == nickname){</span>
+<span class="nc" id="L185">                return valoraciones.get(i).getDT();</span>
+            }
+        }
+<span class="nc" id="L188">        return null;</span>
+    }
+    
+    public void quitarValoracion(String nickname){
+<span class="nc bnc" id="L192" title="All 2 branches missed.">        if (nickname.equals(&quot;&quot;)){</span>
+<span class="nc" id="L193">            throw new RuntimeException(&quot;El nickname no puede ser vacio&quot;);</span>
+        }
+        // Recorrer todas las valoraciones hasta encontrar la valoracion cuyo usuario sea el que tiene ese nickname
+        // cuando la encuentre, la saca de la coleccion
+<span class="nc bnc" id="L197" title="All 2 branches missed.">        for(int i = 0; i &lt; this.valoraciones.size(); i++){</span>
+<span class="nc bnc" id="L198" title="All 2 branches missed.">            if(valoraciones.get(i).getNicknameDeUsuario().equals(nickname) ){</span>
+
+                // segun cual fuera la valoracion anterior, resta 1 al contador
+<span class="nc bnc" id="L201" title="All 2 branches missed.">                if (valoraciones.get(i).getVal() == TipoValoracion.LIKE) {</span>
+<span class="nc" id="L202">                    cantLikes--;</span>
+                } else {
+<span class="nc" id="L204">                    cantDisLikes--;</span>
+                }
+                
+                // remueve de la coleccion
+<span class="nc" id="L208">                valoraciones.remove(i);</span>
+<span class="nc" id="L209">                break;</span>
+            }
+        }
+<span class="nc" id="L212">    }</span>
+    
+    
+    public static int getNuevoId(){
+<span class="nc" id="L216">        int nuevoId = idActual ++;</span>
+<span class="nc" id="L217">        return nuevoId;        </span>
+    }
+    
+//============================  Get and Set ================================
+    public int getId() {
+<span class="nc" id="L222">        return id;</span>
+    }
+
+    public void setId(int id) {
+<span class="nc" id="L226">        this.id = id;</span>
+<span class="nc" id="L227">    }</span>
+
+    public String getNombre() {
+<span class="nc" id="L230">        return nombre;</span>
+    }
+
+    public void setNombre(String nombre) {
+<span class="nc" id="L234">        this.nombre = nombre;</span>
+<span class="nc" id="L235">    }</span>
+
+    public String getDescripcion() {
+<span class="nc" id="L238">        return descripcion;</span>
+    }
+
+    public void setDescripcion(String descripcion) {
+<span class="nc" id="L242">        this.descripcion = descripcion;</span>
+<span class="nc" id="L243">    }</span>
+
+    public Time getDuracion() {
+<span class="nc" id="L246">        return duracion;</span>
+    }
+
+    public void setDuracion(Time duracion) {
+<span class="nc" id="L250">        this.duracion = duracion;</span>
+<span class="nc" id="L251">    }</span>
+
+    public Date getFechaPublicacion() {
+<span class="nc" id="L254">        return fechaPublicacion;</span>
+    }
+
+    public void setFechaPublicacion(Date fechaPublicacion) {
+<span class="nc" id="L258">        this.fechaPublicacion = fechaPublicacion;</span>
+<span class="nc" id="L259">    }</span>
+
+    public String getUrlVideoOriginal() {
+<span class="nc" id="L262">        return urlVideoOriginal;</span>
+    }
+
+    public void setUrlVideoOriginal(String urlVideoOriginal) {
+<span class="nc" id="L266">        this.urlVideoOriginal = urlVideoOriginal;</span>
+<span class="nc" id="L267">    }</span>
+
+    public Privacidad getPrivacidad() {
+<span class="nc" id="L270">        return privacidad;</span>
+    }
+
+    public void setPrivacidad(Privacidad privacidad) {
+<span class="nc" id="L274">        this.privacidad = privacidad;</span>
+<span class="nc" id="L275">    }</span>
+
+    public String getCategoria() {
+<span class="nc" id="L278">        return categoria;</span>
+    }
+
+    public void setCategoria(String categoria) {
+<span class="nc" id="L282">        this.categoria = categoria;</span>
+<span class="nc" id="L283">    }</span>
+
+    public int getCantLikes() {
+<span class="nc" id="L286">        return cantLikes;</span>
+    }
+
+    public void setCantLikes(int cantLikes) {
+<span class="nc" id="L290">        this.cantLikes = cantLikes;</span>
+<span class="nc" id="L291">    }</span>
+
+    public int getCantDisLikes() {
+<span class="nc" id="L294">        return cantDisLikes;</span>
+    }
+
+    public void setCantDisLikes(int cantDisLikes) {
+<span class="nc" id="L298">        this.cantDisLikes = cantDisLikes;</span>
+<span class="nc" id="L299">    }</span>
+
+    @Override
+    public String toString() {
+<span class="nc" id="L303">        return &quot;Video{&quot; + &quot;id=&quot; + id + &quot;, nombre=&quot; + nombre + &quot;, descripcion=&quot; + descripcion + &quot;, duracion=&quot; + duracion + &quot;, fechaPublicacion=&quot; + fechaPublicacion + &quot;, urlVideoOriginal=&quot; + urlVideoOriginal + &quot;, privacidad=&quot; + privacidad + &quot;, categoria=&quot; + categoria + &quot;, cantLikes=&quot; + cantLikes + &quot;, cantDisLikes=&quot; + cantDisLikes + '}';</span>
+    }
+    
+    
+    
+
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/index.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/index.html
new file mode 100644
index 0000000000000000000000000000000000000000..6b1ed46894a3fa04fdd133da42431e20fe6d24a8
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/index.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Logica.Clases</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.source.html" class="el_source">Source Files</a><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <span class="el_package">Logica.Clases</span></div><h1>Logica.Clases</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">2.283 of 2.769</td><td class="ctr2">18%</td><td class="bar">260 of 300</td><td class="ctr2">13%</td><td class="ctr1">262</td><td class="ctr2">306</td><td class="ctr1">496</td><td class="ctr2">615</td><td class="ctr1">127</td><td class="ctr2">156</td><td class="ctr1">3</td><td class="ctr2">9</td></tr></tfoot><tbody><tr><td id="a1"><a href="Canal.html" class="el_class">Canal</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="111" height="10" title="904" alt="904"/><img src="../.resources/greenbar.gif" width="8" height="10" title="67" alt="67"/></td><td class="ctr2" id="c5">7%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="117" height="10" title="119" alt="119"/><img src="../.resources/greenbar.gif" width="2" height="10" title="3" alt="3"/></td><td class="ctr2" id="e5">2%</td><td class="ctr1" id="f0">93</td><td class="ctr2" id="g0">97</td><td class="ctr1" id="h0">182</td><td class="ctr2" id="i0">198</td><td class="ctr1" id="j2">33</td><td class="ctr2" id="k0">36</td><td class="ctr1" id="l3">0</td><td class="ctr2" id="m0">1</td></tr><tr><td id="a8"><a href="Video.html" class="el_class">Video</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="78" height="10" title="636" alt="636"/></td><td class="ctr2" id="c6">0%</td><td class="bar" id="d1"><img src="../.resources/redbar.gif" width="64" height="10" title="66" alt="66"/></td><td class="ctr2" id="e6">0%</td><td class="ctr1" id="f1">67</td><td class="ctr2" id="g1">67</td><td class="ctr1" id="h1">137</td><td class="ctr2" id="i1">137</td><td class="ctr1" id="j0">34</td><td class="ctr2" id="k2">34</td><td class="ctr1" id="l0">1</td><td class="ctr2" id="m1">1</td></tr><tr><td id="a6"><a href="Usuario.html" class="el_class">Usuario</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="61" height="10" title="494" alt="494"/><img src="../.resources/greenbar.gif" width="6" height="10" title="56" alt="56"/></td><td class="ctr2" id="c4">10%</td><td class="bar" id="d2"><img src="../.resources/redbar.gif" width="57" height="10" title="58" alt="58"/><img src="../.resources/greenbar.gif" width="3" height="10" title="4" alt="4"/></td><td class="ctr2" id="e4">6%</td><td class="ctr1" id="f2">65</td><td class="ctr2" id="g2">67</td><td class="ctr1" id="h2">119</td><td class="ctr2" id="i2">134</td><td class="ctr1" id="j1">34</td><td class="ctr2" id="k1">36</td><td class="ctr1" id="l4">0</td><td class="ctr2" id="m2">1</td></tr><tr><td id="a4"><a href="ListaDeReproduccion.html" class="el_class">ListaDeReproduccion</a></td><td class="bar" id="b3"><img src="../.resources/redbar.gif" width="23" height="10" title="188" alt="188"/><img src="../.resources/greenbar.gif" width="7" height="10" title="64" alt="64"/></td><td class="ctr2" id="c3">25%</td><td class="bar" id="d3"><img src="../.resources/redbar.gif" width="15" height="10" title="16" alt="16"/><img src="../.resources/greenbar.gif" width="3" height="10" title="4" alt="4"/></td><td class="ctr2" id="e3">20%</td><td class="ctr1" id="f3">23</td><td class="ctr2" id="g3">27</td><td class="ctr1" id="h3">37</td><td class="ctr2" id="i3">53</td><td class="ctr1" id="j3">13</td><td class="ctr2" id="k3">17</td><td class="ctr1" id="l5">0</td><td class="ctr2" id="m3">1</td></tr><tr><td id="a5"><a href="Persona.html" class="el_class">Persona</a></td><td class="bar" id="b4"><img src="../.resources/redbar.gif" width="3" height="10" title="31" alt="31"/><img src="../.resources/greenbar.gif" width="1" height="10" title="15" alt="15"/></td><td class="ctr2" id="c2">33%</td><td class="bar" id="d4"/><td class="ctr2" id="e2">50%</td><td class="ctr1" id="f4">8</td><td class="ctr2" id="g6">9</td><td class="ctr1" id="h4">11</td><td class="ctr2" id="i6">17</td><td class="ctr1" id="j4">7</td><td class="ctr2" id="k5">8</td><td class="ctr1" id="l6">0</td><td class="ctr2" id="m4">1</td></tr><tr><td id="a0"><a href="Administrador.html" class="el_class">Administrador</a></td><td class="bar" id="b5"><img src="../.resources/redbar.gif" width="2" height="10" title="21" alt="21"/></td><td class="ctr2" id="c7">0%</td><td class="bar" id="d7"/><td class="ctr2" id="e7">n/a</td><td class="ctr1" id="f5">4</td><td class="ctr2" id="g7">4</td><td class="ctr1" id="h5">6</td><td class="ctr2" id="i7">6</td><td class="ctr1" id="j5">4</td><td class="ctr2" id="k7">4</td><td class="ctr1" id="l1">1</td><td class="ctr2" id="m5">1</td></tr><tr><td id="a2"><a href="Categoria.html" class="el_class">Categoria</a></td><td class="bar" id="b6"><img src="../.resources/redbar.gif" width="1" height="10" title="9" alt="9"/></td><td class="ctr2" id="c8">0%</td><td class="bar" id="d8"/><td class="ctr2" id="e8">n/a</td><td class="ctr1" id="f6">2</td><td class="ctr2" id="g8">2</td><td class="ctr1" id="h6">4</td><td class="ctr2" id="i8">4</td><td class="ctr1" id="j6">2</td><td class="ctr2" id="k8">2</td><td class="ctr1" id="l2">1</td><td class="ctr2" id="m6">1</td></tr><tr><td id="a3"><a href="Comentario.html" class="el_class">Comentario</a></td><td class="bar" id="b7"><img src="../.resources/greenbar.gif" width="24" height="10" title="200" alt="200"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d5"><img src="../.resources/greenbar.gif" width="15" height="10" title="16" alt="16"/></td><td class="ctr2" id="e0">100%</td><td class="ctr1" id="f7">0</td><td class="ctr2" id="g4">20</td><td class="ctr1" id="h7">0</td><td class="ctr2" id="i4">41</td><td class="ctr1" id="j7">0</td><td class="ctr2" id="k4">12</td><td class="ctr1" id="l7">0</td><td class="ctr2" id="m7">1</td></tr><tr><td id="a7"><a href="Valoracion.html" class="el_class">Valoracion</a></td><td class="bar" id="b8"><img src="../.resources/greenbar.gif" width="10" height="10" title="84" alt="84"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d6"><img src="../.resources/greenbar.gif" width="11" height="10" title="12" alt="12"/></td><td class="ctr2" id="e1">100%</td><td class="ctr1" id="f8">0</td><td class="ctr2" id="g5">13</td><td class="ctr1" id="h8">0</td><td class="ctr2" id="i5">25</td><td class="ctr1" id="j8">0</td><td class="ctr2" id="k6">7</td><td class="ctr1" id="l8">0</td><td class="ctr2" id="m8">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/index.source.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/index.source.html
new file mode 100644
index 0000000000000000000000000000000000000000..7e9d5bc48300a07b8951888a5886e86cb4fde3ae
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Clases/index.source.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Logica.Clases</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.html" class="el_class">Classes</a><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <span class="el_package">Logica.Clases</span></div><h1>Logica.Clases</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">2.283 of 2.769</td><td class="ctr2">18%</td><td class="bar">260 of 300</td><td class="ctr2">13%</td><td class="ctr1">262</td><td class="ctr2">306</td><td class="ctr1">496</td><td class="ctr2">615</td><td class="ctr1">127</td><td class="ctr2">156</td><td class="ctr1">3</td><td class="ctr2">9</td></tr></tfoot><tbody><tr><td id="a1"><a href="Canal.java.html" class="el_source">Canal.java</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="111" height="10" title="904" alt="904"/><img src="../.resources/greenbar.gif" width="8" height="10" title="67" alt="67"/></td><td class="ctr2" id="c5">7%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="117" height="10" title="119" alt="119"/><img src="../.resources/greenbar.gif" width="2" height="10" title="3" alt="3"/></td><td class="ctr2" id="e5">2%</td><td class="ctr1" id="f0">93</td><td class="ctr2" id="g0">97</td><td class="ctr1" id="h0">182</td><td class="ctr2" id="i0">198</td><td class="ctr1" id="j2">33</td><td class="ctr2" id="k0">36</td><td class="ctr1" id="l3">0</td><td class="ctr2" id="m0">1</td></tr><tr><td id="a8"><a href="Video.java.html" class="el_source">Video.java</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="78" height="10" title="636" alt="636"/></td><td class="ctr2" id="c6">0%</td><td class="bar" id="d1"><img src="../.resources/redbar.gif" width="64" height="10" title="66" alt="66"/></td><td class="ctr2" id="e6">0%</td><td class="ctr1" id="f1">67</td><td class="ctr2" id="g1">67</td><td class="ctr1" id="h1">137</td><td class="ctr2" id="i1">137</td><td class="ctr1" id="j0">34</td><td class="ctr2" id="k2">34</td><td class="ctr1" id="l0">1</td><td class="ctr2" id="m1">1</td></tr><tr><td id="a6"><a href="Usuario.java.html" class="el_source">Usuario.java</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="61" height="10" title="494" alt="494"/><img src="../.resources/greenbar.gif" width="6" height="10" title="56" alt="56"/></td><td class="ctr2" id="c4">10%</td><td class="bar" id="d2"><img src="../.resources/redbar.gif" width="57" height="10" title="58" alt="58"/><img src="../.resources/greenbar.gif" width="3" height="10" title="4" alt="4"/></td><td class="ctr2" id="e4">6%</td><td class="ctr1" id="f2">65</td><td class="ctr2" id="g2">67</td><td class="ctr1" id="h2">119</td><td class="ctr2" id="i2">134</td><td class="ctr1" id="j1">34</td><td class="ctr2" id="k1">36</td><td class="ctr1" id="l4">0</td><td class="ctr2" id="m2">1</td></tr><tr><td id="a4"><a href="ListaDeReproduccion.java.html" class="el_source">ListaDeReproduccion.java</a></td><td class="bar" id="b3"><img src="../.resources/redbar.gif" width="23" height="10" title="188" alt="188"/><img src="../.resources/greenbar.gif" width="7" height="10" title="64" alt="64"/></td><td class="ctr2" id="c3">25%</td><td class="bar" id="d3"><img src="../.resources/redbar.gif" width="15" height="10" title="16" alt="16"/><img src="../.resources/greenbar.gif" width="3" height="10" title="4" alt="4"/></td><td class="ctr2" id="e3">20%</td><td class="ctr1" id="f3">23</td><td class="ctr2" id="g3">27</td><td class="ctr1" id="h3">37</td><td class="ctr2" id="i3">53</td><td class="ctr1" id="j3">13</td><td class="ctr2" id="k3">17</td><td class="ctr1" id="l5">0</td><td class="ctr2" id="m3">1</td></tr><tr><td id="a5"><a href="Persona.java.html" class="el_source">Persona.java</a></td><td class="bar" id="b4"><img src="../.resources/redbar.gif" width="3" height="10" title="31" alt="31"/><img src="../.resources/greenbar.gif" width="1" height="10" title="15" alt="15"/></td><td class="ctr2" id="c2">33%</td><td class="bar" id="d4"/><td class="ctr2" id="e2">50%</td><td class="ctr1" id="f4">8</td><td class="ctr2" id="g6">9</td><td class="ctr1" id="h4">11</td><td class="ctr2" id="i6">17</td><td class="ctr1" id="j4">7</td><td class="ctr2" id="k5">8</td><td class="ctr1" id="l6">0</td><td class="ctr2" id="m4">1</td></tr><tr><td id="a0"><a href="Administrador.java.html" class="el_source">Administrador.java</a></td><td class="bar" id="b5"><img src="../.resources/redbar.gif" width="2" height="10" title="21" alt="21"/></td><td class="ctr2" id="c7">0%</td><td class="bar" id="d7"/><td class="ctr2" id="e7">n/a</td><td class="ctr1" id="f5">4</td><td class="ctr2" id="g7">4</td><td class="ctr1" id="h5">6</td><td class="ctr2" id="i7">6</td><td class="ctr1" id="j5">4</td><td class="ctr2" id="k7">4</td><td class="ctr1" id="l1">1</td><td class="ctr2" id="m5">1</td></tr><tr><td id="a2"><a href="Categoria.java.html" class="el_source">Categoria.java</a></td><td class="bar" id="b6"><img src="../.resources/redbar.gif" width="1" height="10" title="9" alt="9"/></td><td class="ctr2" id="c8">0%</td><td class="bar" id="d8"/><td class="ctr2" id="e8">n/a</td><td class="ctr1" id="f6">2</td><td class="ctr2" id="g8">2</td><td class="ctr1" id="h6">4</td><td class="ctr2" id="i8">4</td><td class="ctr1" id="j6">2</td><td class="ctr2" id="k8">2</td><td class="ctr1" id="l2">1</td><td class="ctr2" id="m6">1</td></tr><tr><td id="a3"><a href="Comentario.java.html" class="el_source">Comentario.java</a></td><td class="bar" id="b7"><img src="../.resources/greenbar.gif" width="24" height="10" title="200" alt="200"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d5"><img src="../.resources/greenbar.gif" width="15" height="10" title="16" alt="16"/></td><td class="ctr2" id="e0">100%</td><td class="ctr1" id="f7">0</td><td class="ctr2" id="g4">20</td><td class="ctr1" id="h7">0</td><td class="ctr2" id="i4">41</td><td class="ctr1" id="j7">0</td><td class="ctr2" id="k4">12</td><td class="ctr1" id="l7">0</td><td class="ctr2" id="m7">1</td></tr><tr><td id="a7"><a href="Valoracion.java.html" class="el_source">Valoracion.java</a></td><td class="bar" id="b8"><img src="../.resources/greenbar.gif" width="10" height="10" title="84" alt="84"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d6"><img src="../.resources/greenbar.gif" width="11" height="10" title="12" alt="12"/></td><td class="ctr2" id="e1">100%</td><td class="ctr1" id="f8">0</td><td class="ctr2" id="g5">13</td><td class="ctr1" id="h8">0</td><td class="ctr2" id="i5">25</td><td class="ctr1" id="j8">0</td><td class="ctr2" id="k6">7</td><td class="ctr1" id="l8">0</td><td class="ctr2" id="m8">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtCanal.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtCanal.html
new file mode 100644
index 0000000000000000000000000000000000000000..9f713a6d56c7f992336a14db8a132c82a7f1fbf4
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtCanal.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DtCanal</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.html" class="el_package">Logica.DataType</a> &gt; <span class="el_class">DtCanal</span></div><h1>DtCanal</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">33 of 57</td><td class="ctr2">42%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">3</td><td class="ctr2">7</td><td class="ctr1">3</td><td class="ctr2">12</td><td class="ctr1">3</td><td class="ctr2">7</td></tr></tfoot><tbody><tr><td id="a6"><a href="DtCanal.java.html#L38" class="el_method">toString()</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="120" height="10" title="27" alt="27"/></td><td class="ctr2" id="c4">0%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h0">1</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a0"><a href="DtCanal.java.html#L11" class="el_method">DtCanal()</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="13" height="10" title="3" alt="3"/></td><td class="ctr2" id="c5">0%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a3"><a href="DtCanal.java.html#L21" class="el_method">getId()</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="13" height="10" title="3" alt="3"/></td><td class="ctr2" id="c6">0%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">1</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">1</td><td class="ctr2" id="i3">1</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a1"><a href="DtCanal.java.html#L13" class="el_method">DtCanal(int, String, String, Privacidad)</a></td><td class="bar" id="b3"><img src="../.resources/greenbar.gif" width="66" height="10" title="15" alt="15"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i0">6</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a4"><a href="DtCanal.java.html#L25" class="el_method">getNombre()</a></td><td class="bar" id="b4"><img src="../.resources/greenbar.gif" width="13" height="10" title="3" alt="3"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">0</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h4">0</td><td class="ctr2" id="i4">1</td><td class="ctr1" id="j4">0</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a2"><a href="DtCanal.java.html#L29" class="el_method">getDescripcion()</a></td><td class="bar" id="b5"><img src="../.resources/greenbar.gif" width="13" height="10" title="3" alt="3"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d5"/><td class="ctr2" id="e5">n/a</td><td class="ctr1" id="f5">0</td><td class="ctr2" id="g5">1</td><td class="ctr1" id="h5">0</td><td class="ctr2" id="i5">1</td><td class="ctr1" id="j5">0</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a5"><a href="DtCanal.java.html#L33" class="el_method">getPrivacidad()</a></td><td class="bar" id="b6"><img src="../.resources/greenbar.gif" width="13" height="10" title="3" alt="3"/></td><td class="ctr2" id="c3">100%</td><td class="bar" id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f6">0</td><td class="ctr2" id="g6">1</td><td class="ctr1" id="h6">0</td><td class="ctr2" id="i6">1</td><td class="ctr1" id="j6">0</td><td class="ctr2" id="k6">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtCanal.java.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtCanal.java.html
new file mode 100644
index 0000000000000000000000000000000000000000..2c84995d067379cbe698e611e51a2c52f96c888a
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtCanal.java.html
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DtCanal.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.source.html" class="el_package">Logica.DataType</a> &gt; <span class="el_source">DtCanal.java</span></div><h1>DtCanal.java</h1><pre class="source lang-java linenums">package Logica.DataType;
+
+import Logica.Enumerados.Privacidad;
+
+public class DtCanal {
+    private int id;
+    private String nombre;
+    private String descripcion;
+    private Privacidad privacidad;
+
+<span class="nc" id="L11">    public DtCanal() {}</span>
+    
+<span class="fc" id="L13">    public DtCanal(int id, String nombre, String descripcion,Privacidad privacidad) {</span>
+<span class="fc" id="L14">        this.id = id;</span>
+<span class="fc" id="L15">        this.nombre = nombre;</span>
+<span class="fc" id="L16">        this.descripcion = descripcion;</span>
+<span class="fc" id="L17">        this.privacidad = privacidad;</span>
+<span class="fc" id="L18">    }</span>
+
+    public int getId() {
+<span class="nc" id="L21">        return id;</span>
+    }
+
+    public String getNombre() {
+<span class="fc" id="L25">        return nombre;</span>
+    }
+
+    public String getDescripcion() {
+<span class="fc" id="L29">        return descripcion;</span>
+    }
+    
+    public Privacidad getPrivacidad() {
+<span class="fc" id="L33">        return privacidad;</span>
+    }
+
+    @Override
+    public String toString() {
+<span class="nc" id="L38">        return &quot;DtCanal{&quot; + &quot;id=&quot; + id + &quot;, nombre=&quot; + nombre + &quot;, descripcion=&quot; + descripcion + &quot;, privacidad=&quot; + privacidad + '}';</span>
+    }
+    
+    
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtCategoria.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtCategoria.html
new file mode 100644
index 0000000000000000000000000000000000000000..9935f3b56eafff5f8c1a9f657664256f2290ecca
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtCategoria.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DtCategoria</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.html" class="el_package">Logica.DataType</a> &gt; <span class="el_class">DtCategoria</span></div><h1>DtCategoria</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">24 of 24</td><td class="ctr2">0%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">4</td><td class="ctr2">4</td><td class="ctr1">6</td><td class="ctr2">6</td><td class="ctr1">4</td><td class="ctr2">4</td></tr></tfoot><tbody><tr><td id="a3"><a href="DtCategoria.java.html#L18" class="el_method">toString()</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="120" height="10" title="12" alt="12"/></td><td class="ctr2" id="c0">0%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a1"><a href="DtCategoria.java.html#L8" class="el_method">DtCategoria(String)</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="60" height="10" title="6" alt="6"/></td><td class="ctr2" id="c1">0%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h0">3</td><td class="ctr2" id="i0">3</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a0"><a href="DtCategoria.java.html#L6" class="el_method">DtCategoria()</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="30" height="10" title="3" alt="3"/></td><td class="ctr2" id="c2">0%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">1</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">1</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a2"><a href="DtCategoria.java.html#L13" class="el_method">getNombre()</a></td><td class="bar" id="b3"><img src="../.resources/redbar.gif" width="30" height="10" title="3" alt="3"/></td><td class="ctr2" id="c3">0%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">1</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">1</td><td class="ctr2" id="i3">1</td><td class="ctr1" id="j3">1</td><td class="ctr2" id="k3">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtCategoria.java.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtCategoria.java.html
new file mode 100644
index 0000000000000000000000000000000000000000..9add1bb0876d0068112504f8833d2415d63f0145
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtCategoria.java.html
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DtCategoria.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.source.html" class="el_package">Logica.DataType</a> &gt; <span class="el_source">DtCategoria.java</span></div><h1>DtCategoria.java</h1><pre class="source lang-java linenums">package Logica.DataType;
+
+public class DtCategoria {
+    private String nombre;
+
+<span class="nc" id="L6">    public DtCategoria() {}</span>
+
+<span class="nc" id="L8">    public DtCategoria(String nombre) {</span>
+<span class="nc" id="L9">        this.nombre = nombre;</span>
+<span class="nc" id="L10">    }</span>
+
+    public String getNombre() {
+<span class="nc" id="L13">        return nombre;</span>
+    }
+
+    @Override
+    public String toString() {
+<span class="nc" id="L18">        return &quot;DtCategoria{&quot; + &quot;nombre=&quot; + nombre + '}';</span>
+    }
+    
+    
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtComentario.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtComentario.html
new file mode 100644
index 0000000000000000000000000000000000000000..3cde3dc1f25ff8b5b4029533aebd863466c58427
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtComentario.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DtComentario</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.html" class="el_package">Logica.DataType</a> &gt; <span class="el_class">DtComentario</span></div><h1>DtComentario</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">12 of 68</td><td class="ctr2">82%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">4</td><td class="ctr2">8</td><td class="ctr1">4</td><td class="ctr2">14</td><td class="ctr1">4</td><td class="ctr2">8</td></tr></tfoot><tbody><tr><td id="a0"><a href="DtComentario.java.html#L12" class="el_method">DtComentario()</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="11" height="10" title="3" alt="3"/></td><td class="ctr2" id="c4">0%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h0">1</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a3"><a href="DtComentario.java.html#L23" class="el_method">getId()</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="11" height="10" title="3" alt="3"/></td><td class="ctr2" id="c5">0%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a4"><a href="DtComentario.java.html#L27" class="el_method">getNickname()</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="11" height="10" title="3" alt="3"/></td><td class="ctr2" id="c6">0%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">1</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">1</td><td class="ctr2" id="i3">1</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a5"><a href="DtComentario.java.html#L39" class="el_method">getNivelSubComentario()</a></td><td class="bar" id="b3"><img src="../.resources/redbar.gif" width="11" height="10" title="3" alt="3"/></td><td class="ctr2" id="c7">0%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">1</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">1</td><td class="ctr2" id="i4">1</td><td class="ctr1" id="j3">1</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a7"><a href="DtComentario.java.html#L44" class="el_method">toString()</a></td><td class="bar" id="b4"><img src="../.resources/greenbar.gif" width="120" height="10" title="32" alt="32"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">0</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h4">0</td><td class="ctr2" id="i5">1</td><td class="ctr1" id="j4">0</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a1"><a href="DtComentario.java.html#L14" class="el_method">DtComentario(int, String, Date, String, int)</a></td><td class="bar" id="b5"><img src="../.resources/greenbar.gif" width="67" height="10" title="18" alt="18"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d5"/><td class="ctr2" id="e5">n/a</td><td class="ctr1" id="f5">0</td><td class="ctr2" id="g5">1</td><td class="ctr1" id="h5">0</td><td class="ctr2" id="i0">7</td><td class="ctr1" id="j5">0</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a2"><a href="DtComentario.java.html#L31" class="el_method">getFecha()</a></td><td class="bar" id="b6"><img src="../.resources/greenbar.gif" width="11" height="10" title="3" alt="3"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f6">0</td><td class="ctr2" id="g6">1</td><td class="ctr1" id="h6">0</td><td class="ctr2" id="i6">1</td><td class="ctr1" id="j6">0</td><td class="ctr2" id="k6">1</td></tr><tr><td id="a6"><a href="DtComentario.java.html#L35" class="el_method">getTexto()</a></td><td class="bar" id="b7"><img src="../.resources/greenbar.gif" width="11" height="10" title="3" alt="3"/></td><td class="ctr2" id="c3">100%</td><td class="bar" id="d7"/><td class="ctr2" id="e7">n/a</td><td class="ctr1" id="f7">0</td><td class="ctr2" id="g7">1</td><td class="ctr1" id="h7">0</td><td class="ctr2" id="i7">1</td><td class="ctr1" id="j7">0</td><td class="ctr2" id="k7">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtComentario.java.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtComentario.java.html
new file mode 100644
index 0000000000000000000000000000000000000000..cf506869276d2f1ae35f13e8a8e20eb6488be9c8
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtComentario.java.html
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DtComentario.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.source.html" class="el_package">Logica.DataType</a> &gt; <span class="el_source">DtComentario.java</span></div><h1>DtComentario.java</h1><pre class="source lang-java linenums">package Logica.DataType;
+
+import java.sql.Date;
+
+public class DtComentario {
+    private int id;
+    private String nickname;
+    private  Date fecha;
+    private String texto;
+    private int nivelSubComentario;
+
+<span class="nc" id="L12">    public DtComentario() {}</span>
+
+<span class="fc" id="L14">    public DtComentario(int id, String nickname, Date fecha, String texto, int nivelSubComentario) {</span>
+<span class="fc" id="L15">        this.id = id;</span>
+<span class="fc" id="L16">        this.nickname = nickname;</span>
+<span class="fc" id="L17">        this.fecha = fecha;</span>
+<span class="fc" id="L18">        this.texto = texto;</span>
+<span class="fc" id="L19">        this.nivelSubComentario = nivelSubComentario;</span>
+<span class="fc" id="L20">    }</span>
+
+    public int getId() {
+<span class="nc" id="L23">        return id;</span>
+    }
+
+    public String getNickname() {
+<span class="nc" id="L27">        return nickname;</span>
+    }
+
+    public Date getFecha() {
+<span class="fc" id="L31">        return fecha;</span>
+    }
+
+    public String getTexto() {
+<span class="fc" id="L35">        return texto;</span>
+    }
+
+    public int getNivelSubComentario() {
+<span class="nc" id="L39">        return nivelSubComentario;</span>
+    }
+
+    @Override
+    public String toString() {
+<span class="fc" id="L44">        return &quot;DtComentario{&quot; + &quot;id=&quot; + id + &quot;, nickname=&quot; + nickname + &quot;, fecha=&quot; + fecha + &quot;, texto=&quot; + texto + &quot;, nivelSubComentario=&quot; + nivelSubComentario + '}';</span>
+    }
+    
+    
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtListaDeReproduccion.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtListaDeReproduccion.html
new file mode 100644
index 0000000000000000000000000000000000000000..e466bcafcb597b0092f09cf1fea0c68394fe367a
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtListaDeReproduccion.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DtListaDeReproduccion</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.html" class="el_package">Logica.DataType</a> &gt; <span class="el_class">DtListaDeReproduccion</span></div><h1>DtListaDeReproduccion</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">68 of 68</td><td class="ctr2">0%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">8</td><td class="ctr2">8</td><td class="ctr1">14</td><td class="ctr2">14</td><td class="ctr1">8</td><td class="ctr2">8</td></tr></tfoot><tbody><tr><td id="a7"><a href="DtListaDeReproduccion.java.html#L45" class="el_method">toString()</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="120" height="10" title="32" alt="32"/></td><td class="ctr2" id="c0">0%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a1"><a href="DtListaDeReproduccion.java.html#L15" class="el_method">DtListaDeReproduccion(int, String, Privacidad, TipoListaDeReproduccion, String)</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="67" height="10" title="18" alt="18"/></td><td class="ctr2" id="c1">0%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h0">7</td><td class="ctr2" id="i0">7</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a0"><a href="DtListaDeReproduccion.java.html#L13" class="el_method">DtListaDeReproduccion()</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="11" height="10" title="3" alt="3"/></td><td class="ctr2" id="c2">0%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">1</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">1</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a3"><a href="DtListaDeReproduccion.java.html#L24" class="el_method">getId()</a></td><td class="bar" id="b3"><img src="../.resources/redbar.gif" width="11" height="10" title="3" alt="3"/></td><td class="ctr2" id="c3">0%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">1</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">1</td><td class="ctr2" id="i3">1</td><td class="ctr1" id="j3">1</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a4"><a href="DtListaDeReproduccion.java.html#L28" class="el_method">getNombre()</a></td><td class="bar" id="b4"><img src="../.resources/redbar.gif" width="11" height="10" title="3" alt="3"/></td><td class="ctr2" id="c4">0%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">1</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h4">1</td><td class="ctr2" id="i4">1</td><td class="ctr1" id="j4">1</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a5"><a href="DtListaDeReproduccion.java.html#L32" class="el_method">getPrivacidad()</a></td><td class="bar" id="b5"><img src="../.resources/redbar.gif" width="11" height="10" title="3" alt="3"/></td><td class="ctr2" id="c5">0%</td><td class="bar" id="d5"/><td class="ctr2" id="e5">n/a</td><td class="ctr1" id="f5">1</td><td class="ctr2" id="g5">1</td><td class="ctr1" id="h5">1</td><td class="ctr2" id="i5">1</td><td class="ctr1" id="j5">1</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a6"><a href="DtListaDeReproduccion.java.html#L36" class="el_method">getTipo()</a></td><td class="bar" id="b6"><img src="../.resources/redbar.gif" width="11" height="10" title="3" alt="3"/></td><td class="ctr2" id="c6">0%</td><td class="bar" id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f6">1</td><td class="ctr2" id="g6">1</td><td class="ctr1" id="h6">1</td><td class="ctr2" id="i6">1</td><td class="ctr1" id="j6">1</td><td class="ctr2" id="k6">1</td></tr><tr><td id="a2"><a href="DtListaDeReproduccion.java.html#L40" class="el_method">getCategoria()</a></td><td class="bar" id="b7"><img src="../.resources/redbar.gif" width="11" height="10" title="3" alt="3"/></td><td class="ctr2" id="c7">0%</td><td class="bar" id="d7"/><td class="ctr2" id="e7">n/a</td><td class="ctr1" id="f7">1</td><td class="ctr2" id="g7">1</td><td class="ctr1" id="h7">1</td><td class="ctr2" id="i7">1</td><td class="ctr1" id="j7">1</td><td class="ctr2" id="k7">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtListaDeReproduccion.java.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtListaDeReproduccion.java.html
new file mode 100644
index 0000000000000000000000000000000000000000..fa2b657f0da0d467741c67526bf0d8aca0324eca
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtListaDeReproduccion.java.html
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DtListaDeReproduccion.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.source.html" class="el_package">Logica.DataType</a> &gt; <span class="el_source">DtListaDeReproduccion.java</span></div><h1>DtListaDeReproduccion.java</h1><pre class="source lang-java linenums">package Logica.DataType;
+
+import Logica.Enumerados.Privacidad;
+import Logica.Enumerados.TipoListaDeReproduccion;
+
+public class DtListaDeReproduccion {
+    private int id;
+    private String nombre;
+    private Privacidad privacidad;
+    private TipoListaDeReproduccion tipo;
+    private String categoria;
+
+<span class="nc" id="L13">    public DtListaDeReproduccion() {}</span>
+
+<span class="nc" id="L15">    public DtListaDeReproduccion(int id, String nombre, Privacidad privacidad, TipoListaDeReproduccion tipo, String categoria) {</span>
+<span class="nc" id="L16">        this.id = id;</span>
+<span class="nc" id="L17">        this.nombre = nombre;</span>
+<span class="nc" id="L18">        this.privacidad = privacidad;</span>
+<span class="nc" id="L19">        this.tipo = tipo;</span>
+<span class="nc" id="L20">        this.categoria = categoria;</span>
+<span class="nc" id="L21">    }</span>
+
+    public int getId() {
+<span class="nc" id="L24">        return id;</span>
+    }
+
+    public String getNombre() {
+<span class="nc" id="L28">        return nombre;</span>
+    }
+
+    public Privacidad getPrivacidad() {
+<span class="nc" id="L32">        return privacidad;</span>
+    }
+
+    public TipoListaDeReproduccion getTipo() {
+<span class="nc" id="L36">        return tipo;</span>
+    }
+
+    public String getCategoria() {
+<span class="nc" id="L40">        return categoria;</span>
+    }
+
+    @Override
+    public String toString() {
+<span class="nc" id="L45">        return &quot;DtListaDeReproduccion{&quot; + &quot;id=&quot; + id + &quot;, nombre=&quot; + nombre + &quot;, privacidad=&quot; + privacidad + &quot;, tipo=&quot; + tipo + &quot;, categoria=&quot; + categoria + '}';</span>
+    }
+    
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtPersona.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtPersona.html
new file mode 100644
index 0000000000000000000000000000000000000000..10254ff66eddb3ef707a1b1773095e88989ff664
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtPersona.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DtPersona</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.html" class="el_package">Logica.DataType</a> &gt; <span class="el_class">DtPersona</span></div><h1>DtPersona</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">46 of 46</td><td class="ctr2">0%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">6</td><td class="ctr2">6</td><td class="ctr1">10</td><td class="ctr2">10</td><td class="ctr1">6</td><td class="ctr2">6</td></tr></tfoot><tbody><tr><td id="a5"><a href="DtPersona.java.html#L32" class="el_method">toString()</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="120" height="10" title="22" alt="22"/></td><td class="ctr2" id="c0">0%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a1"><a href="DtPersona.java.html#L10" class="el_method">DtPersona(String, String, String)</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="65" height="10" title="12" alt="12"/></td><td class="ctr2" id="c1">0%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h0">5</td><td class="ctr2" id="i0">5</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a0"><a href="DtPersona.java.html#L8" class="el_method">DtPersona()</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="16" height="10" title="3" alt="3"/></td><td class="ctr2" id="c2">0%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">1</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">1</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a4"><a href="DtPersona.java.html#L19" class="el_method">getNombre()</a></td><td class="bar" id="b3"><img src="../.resources/redbar.gif" width="16" height="10" title="3" alt="3"/></td><td class="ctr2" id="c3">0%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">1</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">1</td><td class="ctr2" id="i3">1</td><td class="ctr1" id="j3">1</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a2"><a href="DtPersona.java.html#L23" class="el_method">getApellido()</a></td><td class="bar" id="b4"><img src="../.resources/redbar.gif" width="16" height="10" title="3" alt="3"/></td><td class="ctr2" id="c4">0%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">1</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h4">1</td><td class="ctr2" id="i4">1</td><td class="ctr1" id="j4">1</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a3"><a href="DtPersona.java.html#L27" class="el_method">getContrasenia()</a></td><td class="bar" id="b5"><img src="../.resources/redbar.gif" width="16" height="10" title="3" alt="3"/></td><td class="ctr2" id="c5">0%</td><td class="bar" id="d5"/><td class="ctr2" id="e5">n/a</td><td class="ctr1" id="f5">1</td><td class="ctr2" id="g5">1</td><td class="ctr1" id="h5">1</td><td class="ctr2" id="i5">1</td><td class="ctr1" id="j5">1</td><td class="ctr2" id="k5">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtPersona.java.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtPersona.java.html
new file mode 100644
index 0000000000000000000000000000000000000000..d0674502a333e4acab7e929c1ff4b99fa5365fd4
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtPersona.java.html
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DtPersona.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.source.html" class="el_package">Logica.DataType</a> &gt; <span class="el_source">DtPersona.java</span></div><h1>DtPersona.java</h1><pre class="source lang-java linenums">package Logica.DataType;
+
+public abstract class DtPersona {
+    private String nombre;
+    private String apellido;
+    private String contrasenia;
+
+<span class="nc" id="L8">    public DtPersona() {}</span>
+
+<span class="nc" id="L10">    public DtPersona(String nombre, String apellido, String contrasenia) {</span>
+        // esta clase es abstracta, eso se define arriba al hacer 'public abstract class...'
+        // aca se setean los valores recibidos
+<span class="nc" id="L13">        this.nombre = nombre;</span>
+<span class="nc" id="L14">        this.apellido = apellido;</span>
+<span class="nc" id="L15">        this.contrasenia = contrasenia;</span>
+<span class="nc" id="L16">    }</span>
+
+    public String getNombre() {
+<span class="nc" id="L19">        return nombre;</span>
+    }
+
+    public String getApellido() {
+<span class="nc" id="L23">        return apellido;</span>
+    }
+
+    public String getContrasenia() {
+<span class="nc" id="L27">        return contrasenia;</span>
+    }
+
+    @Override
+    public String toString() {
+<span class="nc" id="L32">        return &quot;DtPersona{&quot; + &quot;nombre=&quot; + nombre + &quot;, apellido=&quot; + apellido + &quot;, contrasenia=&quot; + contrasenia + '}';</span>
+    }
+    
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtUsuario.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtUsuario.html
new file mode 100644
index 0000000000000000000000000000000000000000..ac8298a1128daeabded4d510688286fb4b57b7e9
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtUsuario.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DtUsuario</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.html" class="el_package">Logica.DataType</a> &gt; <span class="el_class">DtUsuario</span></div><h1>DtUsuario</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">76 of 76</td><td class="ctr2">0%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">8</td><td class="ctr2">8</td><td class="ctr1">14</td><td class="ctr2">14</td><td class="ctr1">8</td><td class="ctr2">8</td></tr></tfoot><tbody><tr><td id="a7"><a href="DtUsuario.java.html#L49" class="el_method">toString()</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="120" height="10" title="37" alt="37"/></td><td class="ctr2" id="c0">0%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a1"><a href="DtUsuario.java.html#L18" class="el_method">DtUsuario(String, String, String, String, String, Date, String, int)</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="68" height="10" title="21" alt="21"/></td><td class="ctr2" id="c1">0%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h0">7</td><td class="ctr2" id="i0">7</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a0"><a href="DtUsuario.java.html#L12" class="el_method">DtUsuario()</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="9" height="10" title="3" alt="3"/></td><td class="ctr2" id="c2">0%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">1</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">1</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a6"><a href="DtUsuario.java.html#L28" class="el_method">getNickname()</a></td><td class="bar" id="b3"><img src="../.resources/redbar.gif" width="9" height="10" title="3" alt="3"/></td><td class="ctr2" id="c3">0%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">1</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">1</td><td class="ctr2" id="i3">1</td><td class="ctr1" id="j3">1</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a3"><a href="DtUsuario.java.html#L32" class="el_method">getCorreo()</a></td><td class="bar" id="b4"><img src="../.resources/redbar.gif" width="9" height="10" title="3" alt="3"/></td><td class="ctr2" id="c4">0%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">1</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h4">1</td><td class="ctr2" id="i4">1</td><td class="ctr1" id="j4">1</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a4"><a href="DtUsuario.java.html#L36" class="el_method">getFechaNacimiento()</a></td><td class="bar" id="b5"><img src="../.resources/redbar.gif" width="9" height="10" title="3" alt="3"/></td><td class="ctr2" id="c5">0%</td><td class="bar" id="d5"/><td class="ctr2" id="e5">n/a</td><td class="ctr1" id="f5">1</td><td class="ctr2" id="g5">1</td><td class="ctr1" id="h5">1</td><td class="ctr2" id="i5">1</td><td class="ctr1" id="j5">1</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a5"><a href="DtUsuario.java.html#L40" class="el_method">getImagen()</a></td><td class="bar" id="b6"><img src="../.resources/redbar.gif" width="9" height="10" title="3" alt="3"/></td><td class="ctr2" id="c6">0%</td><td class="bar" id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f6">1</td><td class="ctr2" id="g6">1</td><td class="ctr1" id="h6">1</td><td class="ctr2" id="i6">1</td><td class="ctr1" id="j6">1</td><td class="ctr2" id="k6">1</td></tr><tr><td id="a2"><a href="DtUsuario.java.html#L44" class="el_method">getCantSeguidores()</a></td><td class="bar" id="b7"><img src="../.resources/redbar.gif" width="9" height="10" title="3" alt="3"/></td><td class="ctr2" id="c7">0%</td><td class="bar" id="d7"/><td class="ctr2" id="e7">n/a</td><td class="ctr1" id="f7">1</td><td class="ctr2" id="g7">1</td><td class="ctr1" id="h7">1</td><td class="ctr2" id="i7">1</td><td class="ctr1" id="j7">1</td><td class="ctr2" id="k7">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtUsuario.java.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtUsuario.java.html
new file mode 100644
index 0000000000000000000000000000000000000000..d5a4dfb28d9f4bbfb60d3f1b34fd577f736d6873
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtUsuario.java.html
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DtUsuario.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.source.html" class="el_package">Logica.DataType</a> &gt; <span class="el_source">DtUsuario.java</span></div><h1>DtUsuario.java</h1><pre class="source lang-java linenums">package Logica.DataType;
+
+import java.sql.Date;
+
+public class DtUsuario extends DtPersona{
+    private String nickname;
+    private String correo;
+    private Date fechaNacimiento;
+    private String imagen;
+    private int cantSeguidores;
+
+<span class="nc" id="L12">    public DtUsuario() {}</span>
+
+    public DtUsuario(String nickname, String contrasenia, String nombre, String apellido, String correo, Date fechaNacimiento, String imagen, int cantSeguidores) {
+        // Antes de leer esto, lee el constructor de DtPersona...
+        // para setear los atributos de la clase padre, se utiliza super(..) y 
+        // sele asan los atributos que recibe el constructor de la clase padre
+<span class="nc" id="L18">        super(nombre, apellido, contrasenia);</span>
+        // y ahora se setean los atributos propios
+<span class="nc" id="L20">        this.nickname = nickname;</span>
+<span class="nc" id="L21">        this.correo = correo;</span>
+<span class="nc" id="L22">        this.fechaNacimiento = fechaNacimiento;</span>
+<span class="nc" id="L23">        this.imagen = imagen;</span>
+<span class="nc" id="L24">        this.cantSeguidores = cantSeguidores;</span>
+<span class="nc" id="L25">    }</span>
+
+    public String getNickname() {
+<span class="nc" id="L28">        return nickname;</span>
+    }
+
+    public String getCorreo() {
+<span class="nc" id="L32">        return correo;</span>
+    }
+
+    public Date getFechaNacimiento() {
+<span class="nc" id="L36">        return fechaNacimiento;</span>
+    }
+
+    public String getImagen() {
+<span class="nc" id="L40">        return imagen;</span>
+    }
+
+    public int getCantSeguidores() {
+<span class="nc" id="L44">        return cantSeguidores;</span>
+    }
+
+    @Override
+    public String toString() {
+<span class="nc" id="L49">        return &quot;DtUsuario{&quot; + super.toString() + &quot;, nickname=&quot; + nickname + &quot;, correo=&quot; + correo + &quot;, fechaNacimiento=&quot; + fechaNacimiento + &quot;, imagen=&quot; + imagen + &quot;, cantSeguidores=&quot; + cantSeguidores + '}';</span>
+    }
+    
+    
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtValoracion.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtValoracion.html
new file mode 100644
index 0000000000000000000000000000000000000000..52a05164a012ef2874a4f6a834c0ada93caab548
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtValoracion.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DtValoracion</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.html" class="el_package">Logica.DataType</a> &gt; <span class="el_class">DtValoracion</span></div><h1>DtValoracion</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">6 of 35</td><td class="ctr2">83%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">2</td><td class="ctr2">5</td><td class="ctr1">2</td><td class="ctr2">8</td><td class="ctr1">2</td><td class="ctr2">5</td></tr></tfoot><tbody><tr><td id="a0"><a href="DtValoracion.java.html#L9" class="el_method">DtValoracion()</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="21" height="10" title="3" alt="3"/></td><td class="ctr2" id="c3">0%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h0">1</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a2"><a href="DtValoracion.java.html#L16" class="el_method">getNickname()</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="21" height="10" title="3" alt="3"/></td><td class="ctr2" id="c4">0%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a4"><a href="DtValoracion.java.html#L24" class="el_method">toString()</a></td><td class="bar" id="b2"><img src="../.resources/greenbar.gif" width="120" height="10" title="17" alt="17"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i3">1</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a1"><a href="DtValoracion.java.html#L11" class="el_method">DtValoracion(TipoValoracion, String)</a></td><td class="bar" id="b3"><img src="../.resources/greenbar.gif" width="63" height="10" title="9" alt="9"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i0">4</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a3"><a href="DtValoracion.java.html#L19" class="el_method">getVal()</a></td><td class="bar" id="b4"><img src="../.resources/greenbar.gif" width="21" height="10" title="3" alt="3"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">0</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h4">0</td><td class="ctr2" id="i4">1</td><td class="ctr1" id="j4">0</td><td class="ctr2" id="k4">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtValoracion.java.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtValoracion.java.html
new file mode 100644
index 0000000000000000000000000000000000000000..2fdb7f36f280f92afdcf30060bbbd2e039663191
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtValoracion.java.html
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DtValoracion.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.source.html" class="el_package">Logica.DataType</a> &gt; <span class="el_source">DtValoracion.java</span></div><h1>DtValoracion.java</h1><pre class="source lang-java linenums">package Logica.DataType;
+
+import Logica.Enumerados.TipoValoracion;
+
+public class DtValoracion {
+    private TipoValoracion val;
+    private String nickname;
+
+<span class="nc" id="L9">    public DtValoracion() {}</span>
+    
+<span class="fc" id="L11">    public DtValoracion(TipoValoracion val, String nickname) {</span>
+<span class="fc" id="L12">        this.val = val;</span>
+<span class="fc" id="L13">        this.nickname = nickname;</span>
+<span class="fc" id="L14">    }</span>
+    public String getNickname() {
+<span class="nc" id="L16">        return nickname;</span>
+    }
+    public TipoValoracion getVal() {
+<span class="fc" id="L19">        return val;</span>
+    }
+
+    @Override
+    public String toString() {
+<span class="fc" id="L24">        return &quot;DtValoracion{&quot; + &quot;val=&quot; + val + &quot;, nickname=&quot; + nickname + '}';</span>
+    }
+    
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtVideo.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtVideo.html
new file mode 100644
index 0000000000000000000000000000000000000000..3c036530e96c82df7c76246816eef860048904e7
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtVideo.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DtVideo</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.html" class="el_package">Logica.DataType</a> &gt; <span class="el_class">DtVideo</span></div><h1>DtVideo</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">0 of 120</td><td class="ctr2">100%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">0</td><td class="ctr2">12</td><td class="ctr1">0</td><td class="ctr2">23</td><td class="ctr1">0</td><td class="ctr2">12</td></tr></tfoot><tbody><tr><td id="a11"><a href="DtVideo.java.html#L74" class="el_method">toString()</a></td><td class="bar" id="b0"><img src="../.resources/greenbar.gif" width="120" height="10" title="57" alt="57"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">0</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h0">0</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j0">0</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a0"><a href="DtVideo.java.html#L19" class="el_method">DtVideo(int, String, String, Time, Date, String, Privacidad, String, int, int)</a></td><td class="bar" id="b1"><img src="../.resources/greenbar.gif" width="69" height="10" title="33" alt="33"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">0</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">0</td><td class="ctr2" id="i0">12</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a7"><a href="DtVideo.java.html#L33" class="el_method">getId()</a></td><td class="bar" id="b2"><img src="../.resources/greenbar.gif" width="6" height="10" title="3" alt="3"/></td><td class="ctr2" id="c2">100%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a8"><a href="DtVideo.java.html#L37" class="el_method">getNombre()</a></td><td class="bar" id="b3"><img src="../.resources/greenbar.gif" width="6" height="10" title="3" alt="3"/></td><td class="ctr2" id="c3">100%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i3">1</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a4"><a href="DtVideo.java.html#L41" class="el_method">getDescripcion()</a></td><td class="bar" id="b4"><img src="../.resources/greenbar.gif" width="6" height="10" title="3" alt="3"/></td><td class="ctr2" id="c4">100%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">0</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h4">0</td><td class="ctr2" id="i4">1</td><td class="ctr1" id="j4">0</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a5"><a href="DtVideo.java.html#L45" class="el_method">getDuracion()</a></td><td class="bar" id="b5"><img src="../.resources/greenbar.gif" width="6" height="10" title="3" alt="3"/></td><td class="ctr2" id="c5">100%</td><td class="bar" id="d5"/><td class="ctr2" id="e5">n/a</td><td class="ctr1" id="f5">0</td><td class="ctr2" id="g5">1</td><td class="ctr1" id="h5">0</td><td class="ctr2" id="i5">1</td><td class="ctr1" id="j5">0</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a6"><a href="DtVideo.java.html#L49" class="el_method">getFechaPublicacion()</a></td><td class="bar" id="b6"><img src="../.resources/greenbar.gif" width="6" height="10" title="3" alt="3"/></td><td class="ctr2" id="c6">100%</td><td class="bar" id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f6">0</td><td class="ctr2" id="g6">1</td><td class="ctr1" id="h6">0</td><td class="ctr2" id="i6">1</td><td class="ctr1" id="j6">0</td><td class="ctr2" id="k6">1</td></tr><tr><td id="a10"><a href="DtVideo.java.html#L53" class="el_method">getUrlVideoOriginal()</a></td><td class="bar" id="b7"><img src="../.resources/greenbar.gif" width="6" height="10" title="3" alt="3"/></td><td class="ctr2" id="c7">100%</td><td class="bar" id="d7"/><td class="ctr2" id="e7">n/a</td><td class="ctr1" id="f7">0</td><td class="ctr2" id="g7">1</td><td class="ctr1" id="h7">0</td><td class="ctr2" id="i7">1</td><td class="ctr1" id="j7">0</td><td class="ctr2" id="k7">1</td></tr><tr><td id="a9"><a href="DtVideo.java.html#L57" class="el_method">getPrivacidad()</a></td><td class="bar" id="b8"><img src="../.resources/greenbar.gif" width="6" height="10" title="3" alt="3"/></td><td class="ctr2" id="c8">100%</td><td class="bar" id="d8"/><td class="ctr2" id="e8">n/a</td><td class="ctr1" id="f8">0</td><td class="ctr2" id="g8">1</td><td class="ctr1" id="h8">0</td><td class="ctr2" id="i8">1</td><td class="ctr1" id="j8">0</td><td class="ctr2" id="k8">1</td></tr><tr><td id="a3"><a href="DtVideo.java.html#L61" class="el_method">getCategoria()</a></td><td class="bar" id="b9"><img src="../.resources/greenbar.gif" width="6" height="10" title="3" alt="3"/></td><td class="ctr2" id="c9">100%</td><td class="bar" id="d9"/><td class="ctr2" id="e9">n/a</td><td class="ctr1" id="f9">0</td><td class="ctr2" id="g9">1</td><td class="ctr1" id="h9">0</td><td class="ctr2" id="i9">1</td><td class="ctr1" id="j9">0</td><td class="ctr2" id="k9">1</td></tr><tr><td id="a2"><a href="DtVideo.java.html#L65" class="el_method">getCantLikes()</a></td><td class="bar" id="b10"><img src="../.resources/greenbar.gif" width="6" height="10" title="3" alt="3"/></td><td class="ctr2" id="c10">100%</td><td class="bar" id="d10"/><td class="ctr2" id="e10">n/a</td><td class="ctr1" id="f10">0</td><td class="ctr2" id="g10">1</td><td class="ctr1" id="h10">0</td><td class="ctr2" id="i10">1</td><td class="ctr1" id="j10">0</td><td class="ctr2" id="k10">1</td></tr><tr><td id="a1"><a href="DtVideo.java.html#L69" class="el_method">getCantDisLikes()</a></td><td class="bar" id="b11"><img src="../.resources/greenbar.gif" width="6" height="10" title="3" alt="3"/></td><td class="ctr2" id="c11">100%</td><td class="bar" id="d11"/><td class="ctr2" id="e11">n/a</td><td class="ctr1" id="f11">0</td><td class="ctr2" id="g11">1</td><td class="ctr1" id="h11">0</td><td class="ctr2" id="i11">1</td><td class="ctr1" id="j11">0</td><td class="ctr2" id="k11">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtVideo.java.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtVideo.java.html
new file mode 100644
index 0000000000000000000000000000000000000000..fdf6dab9c9b67cfcfc8356b00ade46404caeb2e3
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/DtVideo.java.html
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>DtVideo.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.source.html" class="el_package">Logica.DataType</a> &gt; <span class="el_source">DtVideo.java</span></div><h1>DtVideo.java</h1><pre class="source lang-java linenums">package Logica.DataType;
+
+import java.sql.Time;
+import java.sql.Date;
+import Logica.Enumerados.Privacidad;
+
+public class DtVideo {
+    private int id;
+    private String nombre;
+    private String descripcion;
+    private Time duracion;
+    private Date fechaPublicacion;
+    private String urlVideoOriginal;
+    private Privacidad privacidad;
+    private String categoria;
+    private int cantLikes;
+    private int cantDisLikes;
+
+<span class="fc" id="L19">    public DtVideo(int id, String nombre, String descripcion, Time duracion, Date fechaPublicacion, String urlVideoOriginal, Privacidad privacidad, String categoria, int cantLikes, int cantDisLikes) {</span>
+<span class="fc" id="L20">        this.id = id;</span>
+<span class="fc" id="L21">        this.nombre = nombre;</span>
+<span class="fc" id="L22">        this.descripcion = descripcion;</span>
+<span class="fc" id="L23">        this.duracion = duracion;</span>
+<span class="fc" id="L24">        this.fechaPublicacion = fechaPublicacion;</span>
+<span class="fc" id="L25">        this.urlVideoOriginal = urlVideoOriginal;</span>
+<span class="fc" id="L26">        this.privacidad = privacidad;</span>
+<span class="fc" id="L27">        this.categoria = categoria;</span>
+<span class="fc" id="L28">        this.cantLikes = cantLikes;</span>
+<span class="fc" id="L29">        this.cantDisLikes = cantDisLikes;</span>
+<span class="fc" id="L30">    }</span>
+
+    public int getId() {
+<span class="fc" id="L33">        return id;</span>
+    }
+
+    public String getNombre() {
+<span class="fc" id="L37">        return nombre;</span>
+    }
+
+    public String getDescripcion() {
+<span class="fc" id="L41">        return descripcion;</span>
+    }
+
+    public Time getDuracion() {
+<span class="fc" id="L45">        return duracion;</span>
+    }
+
+    public Date getFechaPublicacion() {
+<span class="fc" id="L49">        return fechaPublicacion;</span>
+    }
+
+    public String getUrlVideoOriginal() {
+<span class="fc" id="L53">        return urlVideoOriginal;</span>
+    }
+
+    public Privacidad getPrivacidad() {
+<span class="fc" id="L57">        return privacidad;</span>
+    }
+
+    public String getCategoria() {
+<span class="fc" id="L61">        return categoria;</span>
+    }
+
+    public int getCantLikes() {
+<span class="fc" id="L65">        return cantLikes;</span>
+    }
+
+    public int getCantDisLikes() {
+<span class="fc" id="L69">        return cantDisLikes;</span>
+    }
+
+    @Override
+    public String toString() {
+<span class="fc" id="L74">        return &quot;DtVideo{&quot; + &quot;id=&quot; + id + &quot;, nombre=&quot; + nombre + &quot;, descripcion=&quot; + descripcion + &quot;, duracion=&quot; + duracion + &quot;, fechaPublicacion=&quot; + fechaPublicacion + &quot;, urlVideoOriginal=&quot; + urlVideoOriginal + &quot;, privacidad=&quot; + privacidad + &quot;, categoria=&quot; + categoria + &quot;, cantLikes=&quot; + cantLikes + &quot;, cantDisLikes=&quot; + cantDisLikes + '}';</span>
+    }
+    
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/index.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/index.html
new file mode 100644
index 0000000000000000000000000000000000000000..9be59f6c1095134e6d5f0cf9763180d411d254c9
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/index.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Logica.DataType</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.source.html" class="el_source">Source Files</a><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <span class="el_package">Logica.DataType</span></div><h1>Logica.DataType</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">265 of 494</td><td class="ctr2">46%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">35</td><td class="ctr2">58</td><td class="ctr1">53</td><td class="ctr2">101</td><td class="ctr1">35</td><td class="ctr2">58</td><td class="ctr1">4</td><td class="ctr2">8</td></tr></tfoot><tbody><tr><td id="a5"><a href="DtUsuario.html" class="el_class">DtUsuario</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="76" height="10" title="76" alt="76"/></td><td class="ctr2" id="c4">0%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">8</td><td class="ctr2" id="g1">8</td><td class="ctr1" id="h0">14</td><td class="ctr2" id="i1">14</td><td class="ctr1" id="j0">8</td><td class="ctr2" id="k1">8</td><td class="ctr1" id="l0">1</td><td class="ctr2" id="m0">1</td></tr><tr><td id="a3"><a href="DtListaDeReproduccion.html" class="el_class">DtListaDeReproduccion</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="68" height="10" title="68" alt="68"/></td><td class="ctr2" id="c5">0%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">8</td><td class="ctr2" id="g2">8</td><td class="ctr1" id="h1">14</td><td class="ctr2" id="i2">14</td><td class="ctr1" id="j1">8</td><td class="ctr2" id="k2">8</td><td class="ctr1" id="l1">1</td><td class="ctr2" id="m1">1</td></tr><tr><td id="a4"><a href="DtPersona.html" class="el_class">DtPersona</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="46" height="10" title="46" alt="46"/></td><td class="ctr2" id="c6">0%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">6</td><td class="ctr2" id="g5">6</td><td class="ctr1" id="h2">10</td><td class="ctr2" id="i5">10</td><td class="ctr1" id="j2">6</td><td class="ctr2" id="k5">6</td><td class="ctr1" id="l2">1</td><td class="ctr2" id="m2">1</td></tr><tr><td id="a0"><a href="DtCanal.html" class="el_class">DtCanal</a></td><td class="bar" id="b3"><img src="../.resources/redbar.gif" width="33" height="10" title="33" alt="33"/><img src="../.resources/greenbar.gif" width="24" height="10" title="24" alt="24"/></td><td class="ctr2" id="c3">42%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f5">3</td><td class="ctr2" id="g4">7</td><td class="ctr1" id="h5">3</td><td class="ctr2" id="i4">12</td><td class="ctr1" id="j5">3</td><td class="ctr2" id="k4">7</td><td class="ctr1" id="l4">0</td><td class="ctr2" id="m3">1</td></tr><tr><td id="a1"><a href="DtCategoria.html" class="el_class">DtCategoria</a></td><td class="bar" id="b4"><img src="../.resources/redbar.gif" width="24" height="10" title="24" alt="24"/></td><td class="ctr2" id="c7">0%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f3">4</td><td class="ctr2" id="g7">4</td><td class="ctr1" id="h3">6</td><td class="ctr2" id="i7">6</td><td class="ctr1" id="j3">4</td><td class="ctr2" id="k7">4</td><td class="ctr1" id="l3">1</td><td class="ctr2" id="m4">1</td></tr><tr><td id="a2"><a href="DtComentario.html" class="el_class">DtComentario</a></td><td class="bar" id="b5"><img src="../.resources/redbar.gif" width="12" height="10" title="12" alt="12"/><img src="../.resources/greenbar.gif" width="56" height="10" title="56" alt="56"/></td><td class="ctr2" id="c2">82%</td><td class="bar" id="d5"/><td class="ctr2" id="e5">n/a</td><td class="ctr1" id="f4">4</td><td class="ctr2" id="g3">8</td><td class="ctr1" id="h4">4</td><td class="ctr2" id="i3">14</td><td class="ctr1" id="j4">4</td><td class="ctr2" id="k3">8</td><td class="ctr1" id="l5">0</td><td class="ctr2" id="m5">1</td></tr><tr><td id="a6"><a href="DtValoracion.html" class="el_class">DtValoracion</a></td><td class="bar" id="b6"><img src="../.resources/redbar.gif" width="6" height="10" title="6" alt="6"/><img src="../.resources/greenbar.gif" width="29" height="10" title="29" alt="29"/></td><td class="ctr2" id="c1">83%</td><td class="bar" id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f6">2</td><td class="ctr2" id="g6">5</td><td class="ctr1" id="h6">2</td><td class="ctr2" id="i6">8</td><td class="ctr1" id="j6">2</td><td class="ctr2" id="k6">5</td><td class="ctr1" id="l6">0</td><td class="ctr2" id="m6">1</td></tr><tr><td id="a7"><a href="DtVideo.html" class="el_class">DtVideo</a></td><td class="bar" id="b7"><img src="../.resources/greenbar.gif" width="120" height="10" title="120" alt="120"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d7"/><td class="ctr2" id="e7">n/a</td><td class="ctr1" id="f7">0</td><td class="ctr2" id="g0">12</td><td class="ctr1" id="h7">0</td><td class="ctr2" id="i0">23</td><td class="ctr1" id="j7">0</td><td class="ctr2" id="k0">12</td><td class="ctr1" id="l7">0</td><td class="ctr2" id="m7">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/index.source.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/index.source.html
new file mode 100644
index 0000000000000000000000000000000000000000..5e51c1a41546f03b65478f7bf23898cab79a3046
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.DataType/index.source.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Logica.DataType</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.html" class="el_class">Classes</a><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <span class="el_package">Logica.DataType</span></div><h1>Logica.DataType</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">265 of 494</td><td class="ctr2">46%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">35</td><td class="ctr2">58</td><td class="ctr1">53</td><td class="ctr2">101</td><td class="ctr1">35</td><td class="ctr2">58</td><td class="ctr1">4</td><td class="ctr2">8</td></tr></tfoot><tbody><tr><td id="a5"><a href="DtUsuario.java.html" class="el_source">DtUsuario.java</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="76" height="10" title="76" alt="76"/></td><td class="ctr2" id="c4">0%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">8</td><td class="ctr2" id="g1">8</td><td class="ctr1" id="h0">14</td><td class="ctr2" id="i1">14</td><td class="ctr1" id="j0">8</td><td class="ctr2" id="k1">8</td><td class="ctr1" id="l0">1</td><td class="ctr2" id="m0">1</td></tr><tr><td id="a3"><a href="DtListaDeReproduccion.java.html" class="el_source">DtListaDeReproduccion.java</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="68" height="10" title="68" alt="68"/></td><td class="ctr2" id="c5">0%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">8</td><td class="ctr2" id="g2">8</td><td class="ctr1" id="h1">14</td><td class="ctr2" id="i2">14</td><td class="ctr1" id="j1">8</td><td class="ctr2" id="k2">8</td><td class="ctr1" id="l1">1</td><td class="ctr2" id="m1">1</td></tr><tr><td id="a4"><a href="DtPersona.java.html" class="el_source">DtPersona.java</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="46" height="10" title="46" alt="46"/></td><td class="ctr2" id="c6">0%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">6</td><td class="ctr2" id="g5">6</td><td class="ctr1" id="h2">10</td><td class="ctr2" id="i5">10</td><td class="ctr1" id="j2">6</td><td class="ctr2" id="k5">6</td><td class="ctr1" id="l2">1</td><td class="ctr2" id="m2">1</td></tr><tr><td id="a0"><a href="DtCanal.java.html" class="el_source">DtCanal.java</a></td><td class="bar" id="b3"><img src="../.resources/redbar.gif" width="33" height="10" title="33" alt="33"/><img src="../.resources/greenbar.gif" width="24" height="10" title="24" alt="24"/></td><td class="ctr2" id="c3">42%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f5">3</td><td class="ctr2" id="g4">7</td><td class="ctr1" id="h5">3</td><td class="ctr2" id="i4">12</td><td class="ctr1" id="j5">3</td><td class="ctr2" id="k4">7</td><td class="ctr1" id="l4">0</td><td class="ctr2" id="m3">1</td></tr><tr><td id="a1"><a href="DtCategoria.java.html" class="el_source">DtCategoria.java</a></td><td class="bar" id="b4"><img src="../.resources/redbar.gif" width="24" height="10" title="24" alt="24"/></td><td class="ctr2" id="c7">0%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f3">4</td><td class="ctr2" id="g7">4</td><td class="ctr1" id="h3">6</td><td class="ctr2" id="i7">6</td><td class="ctr1" id="j3">4</td><td class="ctr2" id="k7">4</td><td class="ctr1" id="l3">1</td><td class="ctr2" id="m4">1</td></tr><tr><td id="a2"><a href="DtComentario.java.html" class="el_source">DtComentario.java</a></td><td class="bar" id="b5"><img src="../.resources/redbar.gif" width="12" height="10" title="12" alt="12"/><img src="../.resources/greenbar.gif" width="56" height="10" title="56" alt="56"/></td><td class="ctr2" id="c2">82%</td><td class="bar" id="d5"/><td class="ctr2" id="e5">n/a</td><td class="ctr1" id="f4">4</td><td class="ctr2" id="g3">8</td><td class="ctr1" id="h4">4</td><td class="ctr2" id="i3">14</td><td class="ctr1" id="j4">4</td><td class="ctr2" id="k3">8</td><td class="ctr1" id="l5">0</td><td class="ctr2" id="m5">1</td></tr><tr><td id="a6"><a href="DtValoracion.java.html" class="el_source">DtValoracion.java</a></td><td class="bar" id="b6"><img src="../.resources/redbar.gif" width="6" height="10" title="6" alt="6"/><img src="../.resources/greenbar.gif" width="29" height="10" title="29" alt="29"/></td><td class="ctr2" id="c1">83%</td><td class="bar" id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f6">2</td><td class="ctr2" id="g6">5</td><td class="ctr1" id="h6">2</td><td class="ctr2" id="i6">8</td><td class="ctr1" id="j6">2</td><td class="ctr2" id="k6">5</td><td class="ctr1" id="l6">0</td><td class="ctr2" id="m6">1</td></tr><tr><td id="a7"><a href="DtVideo.java.html" class="el_source">DtVideo.java</a></td><td class="bar" id="b7"><img src="../.resources/greenbar.gif" width="120" height="10" title="120" alt="120"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d7"/><td class="ctr2" id="e7">n/a</td><td class="ctr1" id="f7">0</td><td class="ctr2" id="g0">12</td><td class="ctr1" id="h7">0</td><td class="ctr2" id="i0">23</td><td class="ctr1" id="j7">0</td><td class="ctr2" id="k0">12</td><td class="ctr1" id="l7">0</td><td class="ctr2" id="m7">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/Privacidad.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/Privacidad.html
new file mode 100644
index 0000000000000000000000000000000000000000..a12d9b1092894890b27be29046be097694d3ecf2
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/Privacidad.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Privacidad</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.html" class="el_package">Logica.Enumerados</a> &gt; <span class="el_class">Privacidad</span></div><h1>Privacidad</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">9 of 38</td><td class="ctr2">76%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">2</td><td class="ctr2">4</td><td class="ctr1">0</td><td class="ctr2">2</td><td class="ctr1">2</td><td class="ctr2">4</td></tr></tfoot><tbody><tr><td id="a2"><a href="Privacidad.java.html#L3" class="el_method">valueOf(String)</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="25" height="10" title="5" alt="5"/></td><td class="ctr2" id="c2">0%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h0">1</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a3"><a href="Privacidad.java.html#L3" class="el_method">values()</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="20" height="10" title="4" alt="4"/></td><td class="ctr2" id="c3">0%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a1"><a href="Privacidad.java.html#L3" class="el_method">static {...}</a></td><td class="bar" id="b2"><img src="../.resources/greenbar.gif" width="120" height="10" title="24" alt="24"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i0">2</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a0"><a href="Privacidad.java.html#L3" class="el_method">Privacidad(String, int)</a></td><td class="bar" id="b3"><img src="../.resources/greenbar.gif" width="25" height="10" title="5" alt="5"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i3">1</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/Privacidad.java.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/Privacidad.java.html
new file mode 100644
index 0000000000000000000000000000000000000000..e0262ce685d1981d2d983c26ea24068ea88b300f
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/Privacidad.java.html
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Privacidad.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.source.html" class="el_package">Logica.Enumerados</a> &gt; <span class="el_source">Privacidad.java</span></div><h1>Privacidad.java</h1><pre class="source lang-java linenums">package Logica.Enumerados;
+
+<span class="pc" id="L3">public enum Privacidad {</span>
+<span class="fc" id="L4">    PUBLICO, PRIVADO</span>
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/TipoListaDeReproduccion.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/TipoListaDeReproduccion.html
new file mode 100644
index 0000000000000000000000000000000000000000..16d427358605df49131a78308968fca3fb52ce75
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/TipoListaDeReproduccion.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>TipoListaDeReproduccion</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.html" class="el_package">Logica.Enumerados</a> &gt; <span class="el_class">TipoListaDeReproduccion</span></div><h1>TipoListaDeReproduccion</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">9 of 38</td><td class="ctr2">76%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">2</td><td class="ctr2">4</td><td class="ctr1">0</td><td class="ctr2">2</td><td class="ctr1">2</td><td class="ctr2">4</td></tr></tfoot><tbody><tr><td id="a2"><a href="TipoListaDeReproduccion.java.html#L3" class="el_method">valueOf(String)</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="25" height="10" title="5" alt="5"/></td><td class="ctr2" id="c2">0%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h0">1</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a3"><a href="TipoListaDeReproduccion.java.html#L3" class="el_method">values()</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="20" height="10" title="4" alt="4"/></td><td class="ctr2" id="c3">0%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a0"><a href="TipoListaDeReproduccion.java.html#L3" class="el_method">static {...}</a></td><td class="bar" id="b2"><img src="../.resources/greenbar.gif" width="120" height="10" title="24" alt="24"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i0">2</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a1"><a href="TipoListaDeReproduccion.java.html#L3" class="el_method">TipoListaDeReproduccion(String, int)</a></td><td class="bar" id="b3"><img src="../.resources/greenbar.gif" width="25" height="10" title="5" alt="5"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i3">1</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/TipoListaDeReproduccion.java.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/TipoListaDeReproduccion.java.html
new file mode 100644
index 0000000000000000000000000000000000000000..fdf9b8d4ff3246c3987d3ae1fdb688aae1f4f1e3
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/TipoListaDeReproduccion.java.html
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>TipoListaDeReproduccion.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.source.html" class="el_package">Logica.Enumerados</a> &gt; <span class="el_source">TipoListaDeReproduccion.java</span></div><h1>TipoListaDeReproduccion.java</h1><pre class="source lang-java linenums">package Logica.Enumerados;
+
+<span class="pc" id="L3">public enum TipoListaDeReproduccion {</span>
+<span class="fc" id="L4">    POR_DEFECTO, PARTICULAR</span>
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/TipoValoracion.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/TipoValoracion.html
new file mode 100644
index 0000000000000000000000000000000000000000..2832012ede0d7e75030b18585e8faed840535944
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/TipoValoracion.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>TipoValoracion</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.html" class="el_package">Logica.Enumerados</a> &gt; <span class="el_class">TipoValoracion</span></div><h1>TipoValoracion</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">9 of 38</td><td class="ctr2">76%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">2</td><td class="ctr2">4</td><td class="ctr1">0</td><td class="ctr2">2</td><td class="ctr1">2</td><td class="ctr2">4</td></tr></tfoot><tbody><tr><td id="a2"><a href="TipoValoracion.java.html#L3" class="el_method">valueOf(String)</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="25" height="10" title="5" alt="5"/></td><td class="ctr2" id="c2">0%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h0">1</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a3"><a href="TipoValoracion.java.html#L3" class="el_method">values()</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="20" height="10" title="4" alt="4"/></td><td class="ctr2" id="c3">0%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a0"><a href="TipoValoracion.java.html#L3" class="el_method">static {...}</a></td><td class="bar" id="b2"><img src="../.resources/greenbar.gif" width="120" height="10" title="24" alt="24"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i0">2</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a1"><a href="TipoValoracion.java.html#L3" class="el_method">TipoValoracion(String, int)</a></td><td class="bar" id="b3"><img src="../.resources/greenbar.gif" width="25" height="10" title="5" alt="5"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i3">1</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/TipoValoracion.java.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/TipoValoracion.java.html
new file mode 100644
index 0000000000000000000000000000000000000000..5e8a415c026d860fde4dc162a21b70df05a5fd73
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/TipoValoracion.java.html
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>TipoValoracion.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.source.html" class="el_package">Logica.Enumerados</a> &gt; <span class="el_source">TipoValoracion.java</span></div><h1>TipoValoracion.java</h1><pre class="source lang-java linenums">package Logica.Enumerados;
+
+<span class="pc" id="L3">public enum TipoValoracion {</span>
+<span class="fc" id="L4">    LIKE, DISLIKE</span>
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/index.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/index.html
new file mode 100644
index 0000000000000000000000000000000000000000..edee111f070e88ef3220cbe2d5baac70fe6cd53c
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/index.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Logica.Enumerados</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.source.html" class="el_source">Source Files</a><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <span class="el_package">Logica.Enumerados</span></div><h1>Logica.Enumerados</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">27 of 114</td><td class="ctr2">76%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">6</td><td class="ctr2">12</td><td class="ctr1">0</td><td class="ctr2">6</td><td class="ctr1">6</td><td class="ctr2">12</td><td class="ctr1">0</td><td class="ctr2">3</td></tr></tfoot><tbody><tr><td id="a0"><a href="Privacidad.html" class="el_class">Privacidad</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="28" height="10" title="9" alt="9"/><img src="../.resources/greenbar.gif" width="91" height="10" title="29" alt="29"/></td><td class="ctr2" id="c0">76%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">2</td><td class="ctr2" id="g0">4</td><td class="ctr1" id="h0">0</td><td class="ctr2" id="i0">2</td><td class="ctr1" id="j0">2</td><td class="ctr2" id="k0">4</td><td class="ctr1" id="l0">0</td><td class="ctr2" id="m0">1</td></tr><tr><td id="a2"><a href="TipoValoracion.html" class="el_class">TipoValoracion</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="28" height="10" title="9" alt="9"/><img src="../.resources/greenbar.gif" width="91" height="10" title="29" alt="29"/></td><td class="ctr2" id="c1">76%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">2</td><td class="ctr2" id="g1">4</td><td class="ctr1" id="h1">0</td><td class="ctr2" id="i1">2</td><td class="ctr1" id="j1">2</td><td class="ctr2" id="k1">4</td><td class="ctr1" id="l1">0</td><td class="ctr2" id="m1">1</td></tr><tr><td id="a1"><a href="TipoListaDeReproduccion.html" class="el_class">TipoListaDeReproduccion</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="28" height="10" title="9" alt="9"/><img src="../.resources/greenbar.gif" width="91" height="10" title="29" alt="29"/></td><td class="ctr2" id="c2">76%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">2</td><td class="ctr2" id="g2">4</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i2">2</td><td class="ctr1" id="j2">2</td><td class="ctr2" id="k2">4</td><td class="ctr1" id="l2">0</td><td class="ctr2" id="m2">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/index.source.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/index.source.html
new file mode 100644
index 0000000000000000000000000000000000000000..827d23e37ccb0dc17b0b132fdbaeffbb5da1e13b
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.Enumerados/index.source.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Logica.Enumerados</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.html" class="el_class">Classes</a><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <span class="el_package">Logica.Enumerados</span></div><h1>Logica.Enumerados</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">27 of 114</td><td class="ctr2">76%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">6</td><td class="ctr2">12</td><td class="ctr1">0</td><td class="ctr2">6</td><td class="ctr1">6</td><td class="ctr2">12</td><td class="ctr1">0</td><td class="ctr2">3</td></tr></tfoot><tbody><tr><td id="a0"><a href="Privacidad.java.html" class="el_source">Privacidad.java</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="28" height="10" title="9" alt="9"/><img src="../.resources/greenbar.gif" width="91" height="10" title="29" alt="29"/></td><td class="ctr2" id="c0">76%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">2</td><td class="ctr2" id="g0">4</td><td class="ctr1" id="h0">0</td><td class="ctr2" id="i0">2</td><td class="ctr1" id="j0">2</td><td class="ctr2" id="k0">4</td><td class="ctr1" id="l0">0</td><td class="ctr2" id="m0">1</td></tr><tr><td id="a1"><a href="TipoListaDeReproduccion.java.html" class="el_source">TipoListaDeReproduccion.java</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="28" height="10" title="9" alt="9"/><img src="../.resources/greenbar.gif" width="91" height="10" title="29" alt="29"/></td><td class="ctr2" id="c1">76%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">2</td><td class="ctr2" id="g1">4</td><td class="ctr1" id="h1">0</td><td class="ctr2" id="i1">2</td><td class="ctr1" id="j1">2</td><td class="ctr2" id="k1">4</td><td class="ctr1" id="l1">0</td><td class="ctr2" id="m1">1</td></tr><tr><td id="a2"><a href="TipoValoracion.java.html" class="el_source">TipoValoracion.java</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="28" height="10" title="9" alt="9"/><img src="../.resources/greenbar.gif" width="91" height="10" title="29" alt="29"/></td><td class="ctr2" id="c2">76%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">2</td><td class="ctr2" id="g2">4</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i2">2</td><td class="ctr1" id="j2">2</td><td class="ctr2" id="k2">4</td><td class="ctr1" id="l2">0</td><td class="ctr2" id="m2">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.InterfacesYControladores/CAdmin.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.InterfacesYControladores/CAdmin.html
new file mode 100644
index 0000000000000000000000000000000000000000..d9bf1725b85133b78adf74452b83fc6f69c532a5
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.InterfacesYControladores/CAdmin.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>CAdmin</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.html" class="el_package">Logica.InterfacesYControladores</a> &gt; <span class="el_class">CAdmin</span></div><h1>CAdmin</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">1.080 of 1.080</td><td class="ctr2">0%</td><td class="bar">166 of 166</td><td class="ctr2">0%</td><td class="ctr1">129</td><td class="ctr2">129</td><td class="ctr1">271</td><td class="ctr2">271</td><td class="ctr1">46</td><td class="ctr2">46</td></tr></tfoot><tbody><tr><td id="a6"><a href="CAdmin.java.html#L158" class="el_method">altaUsuarioCanal(DtUsuario, DtCanal)</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="120" height="10" title="61" alt="61"/></td><td class="ctr2" id="c0">0%</td><td class="bar" id="d1"><img src="../.resources/redbar.gif" width="68" height="10" title="8" alt="8"/></td><td class="ctr2" id="e0">0%</td><td class="ctr1" id="f1">5</td><td class="ctr2" id="g1">5</td><td class="ctr1" id="h0">18</td><td class="ctr2" id="i0">18</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a22"><a href="CAdmin.java.html#L320" class="el_method">listarListasDeReproduccionDeUsuario(String)</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="104" height="10" title="53" alt="53"/></td><td class="ctr2" id="c1">0%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="120" height="10" title="14" alt="14"/></td><td class="ctr2" id="e1">0%</td><td class="ctr1" id="f0">8</td><td class="ctr2" id="g0">8</td><td class="ctr1" id="h8">9</td><td class="ctr2" id="i8">9</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a33"><a href="CAdmin.java.html#L456" class="el_method">modificarVideo(DtVideo)</a></td><td class="bar" id="b2"><img src="../.resources/redbar.gif" width="98" height="10" title="50" alt="50"/></td><td class="ctr2" id="c2">0%</td><td class="bar" id="d7"><img src="../.resources/redbar.gif" width="51" height="10" title="6" alt="6"/></td><td class="ctr2" id="e2">0%</td><td class="ctr1" id="f7">4</td><td class="ctr2" id="g7">4</td><td class="ctr1" id="h1">16</td><td class="ctr2" id="i1">16</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a5"><a href="CAdmin.java.html#L138" class="el_method">altaListaDeReproduccionPorDefecto(DtListaDeReproduccion)</a></td><td class="bar" id="b3"><img src="../.resources/redbar.gif" width="94" height="10" title="48" alt="48"/></td><td class="ctr2" id="c3">0%</td><td class="bar" id="d2"><img src="../.resources/redbar.gif" width="68" height="10" title="8" alt="8"/></td><td class="ctr2" id="e3">0%</td><td class="ctr1" id="f2">5</td><td class="ctr2" id="g2">5</td><td class="ctr1" id="h2">11</td><td class="ctr2" id="i2">11</td><td class="ctr1" id="j3">1</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a0"><a href="CAdmin.java.html#L52" class="el_method">agregarVideoAListaDeReproduccion()</a></td><td class="bar" id="b4"><img src="../.resources/redbar.gif" width="82" height="10" title="42" alt="42"/></td><td class="ctr2" id="c4">0%</td><td class="bar" id="d3"><img src="../.resources/redbar.gif" width="68" height="10" title="8" alt="8"/></td><td class="ctr2" id="e4">0%</td><td class="ctr1" id="f3">5</td><td class="ctr2" id="g3">5</td><td class="ctr1" id="h4">10</td><td class="ctr2" id="i4">10</td><td class="ctr1" id="j4">1</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a3"><a href="CAdmin.java.html#L104" class="el_method">altaComentario(DtComentario, int)</a></td><td class="bar" id="b5"><img src="../.resources/redbar.gif" width="80" height="10" title="41" alt="41"/></td><td class="ctr2" id="c5">0%</td><td class="bar" id="d4"><img src="../.resources/redbar.gif" width="68" height="10" title="8" alt="8"/></td><td class="ctr2" id="e5">0%</td><td class="ctr1" id="f4">5</td><td class="ctr2" id="g4">5</td><td class="ctr1" id="h5">10</td><td class="ctr2" id="i5">10</td><td class="ctr1" id="j5">1</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a2"><a href="CAdmin.java.html#L84" class="el_method">altaComentario(DtComentario)</a></td><td class="bar" id="b6"><img src="../.resources/redbar.gif" width="78" height="10" title="40" alt="40"/></td><td class="ctr2" id="c6">0%</td><td class="bar" id="d5"><img src="../.resources/redbar.gif" width="68" height="10" title="8" alt="8"/></td><td class="ctr2" id="e6">0%</td><td class="ctr1" id="f5">5</td><td class="ctr2" id="g5">5</td><td class="ctr1" id="h6">10</td><td class="ctr2" id="i6">10</td><td class="ctr1" id="j6">1</td><td class="ctr2" id="k6">1</td></tr><tr><td id="a7"><a href="CAdmin.java.html#L188" class="el_method">altaValoracion(DtValoracion)</a></td><td class="bar" id="b7"><img src="../.resources/redbar.gif" width="78" height="10" title="40" alt="40"/></td><td class="ctr2" id="c7">0%</td><td class="bar" id="d6"><img src="../.resources/redbar.gif" width="68" height="10" title="8" alt="8"/></td><td class="ctr2" id="e7">0%</td><td class="ctr1" id="f6">5</td><td class="ctr2" id="g6">5</td><td class="ctr1" id="h7">10</td><td class="ctr2" id="i7">10</td><td class="ctr1" id="j7">1</td><td class="ctr2" id="k7">1</td></tr><tr><td id="a23"><a href="CAdmin.java.html#L306" class="el_method">listarListasDeReproduccionEnCategoria(String)</a></td><td class="bar" id="b8"><img src="../.resources/redbar.gif" width="70" height="10" title="36" alt="36"/></td><td class="ctr2" id="c8">0%</td><td class="bar" id="d11"><img src="../.resources/redbar.gif" width="34" height="10" title="4" alt="4"/></td><td class="ctr2" id="e8">0%</td><td class="ctr1" id="f11">3</td><td class="ctr2" id="g11">3</td><td class="ctr1" id="h12">7</td><td class="ctr2" id="i12">7</td><td class="ctr1" id="j8">1</td><td class="ctr2" id="k8">1</td></tr><tr><td id="a30"><a href="CAdmin.java.html#L381" class="el_method">listarVideosEnCategoria(String)</a></td><td class="bar" id="b9"><img src="../.resources/redbar.gif" width="70" height="10" title="36" alt="36"/></td><td class="ctr2" id="c9">0%</td><td class="bar" id="d12"><img src="../.resources/redbar.gif" width="34" height="10" title="4" alt="4"/></td><td class="ctr2" id="e9">0%</td><td class="ctr1" id="f12">3</td><td class="ctr2" id="g12">3</td><td class="ctr1" id="h13">7</td><td class="ctr2" id="i13">7</td><td class="ctr1" id="j9">1</td><td class="ctr2" id="k9">1</td></tr><tr><td id="a31"><a href="CAdmin.java.html#L418" class="el_method">modificarListaDeReproduccion(DtListaDeReproduccion)</a></td><td class="bar" id="b10"><img src="../.resources/redbar.gif" width="68" height="10" title="35" alt="35"/></td><td class="ctr2" id="c10">0%</td><td class="bar" id="d13"><img src="../.resources/redbar.gif" width="34" height="10" title="4" alt="4"/></td><td class="ctr2" id="e10">0%</td><td class="ctr1" id="f13">3</td><td class="ctr2" id="g13">3</td><td class="ctr1" id="h3">11</td><td class="ctr2" id="i3">11</td><td class="ctr1" id="j10">1</td><td class="ctr2" id="k10">1</td></tr><tr><td id="a35"><a href="CAdmin.java.html#L510" class="el_method">obtenerValoracionDada()</a></td><td class="bar" id="b11"><img src="../.resources/redbar.gif" width="64" height="10" title="33" alt="33"/></td><td class="ctr2" id="c11">0%</td><td class="bar" id="d8"><img src="../.resources/redbar.gif" width="51" height="10" title="6" alt="6"/></td><td class="ctr2" id="e11">0%</td><td class="ctr1" id="f8">4</td><td class="ctr2" id="g8">4</td><td class="ctr1" id="h14">7</td><td class="ctr2" id="i14">7</td><td class="ctr1" id="j11">1</td><td class="ctr2" id="k11">1</td></tr><tr><td id="a37"><a href="CAdmin.java.html#L527" class="el_method">quitarVideoDeListaDeReproduccion()</a></td><td class="bar" id="b12"><img src="../.resources/redbar.gif" width="62" height="10" title="32" alt="32"/></td><td class="ctr2" id="c12">0%</td><td class="bar" id="d9"><img src="../.resources/redbar.gif" width="51" height="10" title="6" alt="6"/></td><td class="ctr2" id="e12">0%</td><td class="ctr1" id="f9">4</td><td class="ctr2" id="g9">4</td><td class="ctr1" id="h10">8</td><td class="ctr2" id="i10">8</td><td class="ctr1" id="j12">1</td><td class="ctr2" id="k12">1</td></tr><tr><td id="a9"><a href="CAdmin.java.html#L31" class="el_method">CAdmin()</a></td><td class="bar" id="b13"><img src="../.resources/redbar.gif" width="59" height="10" title="30" alt="30"/></td><td class="ctr2" id="c13">0%</td><td class="bar" id="d38"/><td class="ctr2" id="e38">n/a</td><td class="ctr1" id="f38">1</td><td class="ctr2" id="g38">1</td><td class="ctr1" id="h9">9</td><td class="ctr2" id="i9">9</td><td class="ctr1" id="j13">1</td><td class="ctr2" id="k13">1</td></tr><tr><td id="a1"><a href="CAdmin.java.html#L71" class="el_method">altaCategoria(String)</a></td><td class="bar" id="b14"><img src="../.resources/redbar.gif" width="55" height="10" title="28" alt="28"/></td><td class="ctr2" id="c14">0%</td><td class="bar" id="d14"><img src="../.resources/redbar.gif" width="34" height="10" title="4" alt="4"/></td><td class="ctr2" id="e13">0%</td><td class="ctr1" id="f14">3</td><td class="ctr2" id="g14">3</td><td class="ctr1" id="h16">6</td><td class="ctr2" id="i16">6</td><td class="ctr1" id="j14">1</td><td class="ctr2" id="k14">1</td></tr><tr><td id="a32"><a href="CAdmin.java.html#L440" class="el_method">modificarUsuarioYCanal(DtUsuario, DtCanal)</a></td><td class="bar" id="b15"><img src="../.resources/redbar.gif" width="55" height="10" title="28" alt="28"/></td><td class="ctr2" id="c15">0%</td><td class="bar" id="d10"><img src="../.resources/redbar.gif" width="51" height="10" title="6" alt="6"/></td><td class="ctr2" id="e14">0%</td><td class="ctr1" id="f10">4</td><td class="ctr2" id="g10">4</td><td class="ctr1" id="h11">8</td><td class="ctr2" id="i11">8</td><td class="ctr1" id="j15">1</td><td class="ctr2" id="k15">1</td></tr><tr><td id="a20"><a href="CAdmin.java.html#L281" class="el_method">listarCategorias()</a></td><td class="bar" id="b16"><img src="../.resources/redbar.gif" width="51" height="10" title="26" alt="26"/></td><td class="ctr2" id="c16">0%</td><td class="bar" id="d24"><img src="../.resources/redbar.gif" width="17" height="10" title="2" alt="2"/></td><td class="ctr2" id="e15">0%</td><td class="ctr1" id="f24">2</td><td class="ctr2" id="g24">2</td><td class="ctr1" id="h20">5</td><td class="ctr2" id="i20">5</td><td class="ctr1" id="j16">1</td><td class="ctr2" id="k16">1</td></tr><tr><td id="a25"><a href="CAdmin.java.html#L370" class="el_method">listarUsuarios()</a></td><td class="bar" id="b17"><img src="../.resources/redbar.gif" width="51" height="10" title="26" alt="26"/></td><td class="ctr2" id="c17">0%</td><td class="bar" id="d25"><img src="../.resources/redbar.gif" width="17" height="10" title="2" alt="2"/></td><td class="ctr2" id="e16">0%</td><td class="ctr1" id="f25">2</td><td class="ctr2" id="g25">2</td><td class="ctr1" id="h21">5</td><td class="ctr2" id="i21">5</td><td class="ctr1" id="j17">1</td><td class="ctr2" id="k17">1</td></tr><tr><td id="a11"><a href="CAdmin.java.html#L227" class="el_method">existeEmail(String)</a></td><td class="bar" id="b18"><img src="../.resources/redbar.gif" width="45" height="10" title="23" alt="23"/></td><td class="ctr2" id="c18">0%</td><td class="bar" id="d15"><img src="../.resources/redbar.gif" width="34" height="10" title="4" alt="4"/></td><td class="ctr2" id="e17">0%</td><td class="ctr1" id="f15">3</td><td class="ctr2" id="g15">3</td><td class="ctr1" id="h22">5</td><td class="ctr2" id="i22">5</td><td class="ctr1" id="j18">1</td><td class="ctr2" id="k18">1</td></tr><tr><td id="a45"><a href="CAdmin.java.html#L618" class="el_method">validarNuevaListaPorDefecto(String)</a></td><td class="bar" id="b19"><img src="../.resources/redbar.gif" width="45" height="10" title="23" alt="23"/></td><td class="ctr2" id="c19">0%</td><td class="bar" id="d16"><img src="../.resources/redbar.gif" width="34" height="10" title="4" alt="4"/></td><td class="ctr2" id="e18">0%</td><td class="ctr1" id="f16">3</td><td class="ctr2" id="g16">3</td><td class="ctr1" id="h23">5</td><td class="ctr2" id="i23">5</td><td class="ctr1" id="j19">1</td><td class="ctr2" id="k19">1</td></tr><tr><td id="a21"><a href="CAdmin.java.html#L292" class="el_method">listarComentariosDeVideo()</a></td><td class="bar" id="b20"><img src="../.resources/redbar.gif" width="43" height="10" title="22" alt="22"/></td><td class="ctr2" id="c20">0%</td><td class="bar" id="d17"><img src="../.resources/redbar.gif" width="34" height="10" title="4" alt="4"/></td><td class="ctr2" id="e19">0%</td><td class="ctr1" id="f17">3</td><td class="ctr2" id="g17">3</td><td class="ctr1" id="h24">5</td><td class="ctr2" id="i24">5</td><td class="ctr1" id="j20">1</td><td class="ctr2" id="k20">1</td></tr><tr><td id="a28"><a href="CAdmin.java.html#L405" class="el_method">listarVideosDeListaDeReproduccion()</a></td><td class="bar" id="b21"><img src="../.resources/redbar.gif" width="43" height="10" title="22" alt="22"/></td><td class="ctr2" id="c21">0%</td><td class="bar" id="d18"><img src="../.resources/redbar.gif" width="34" height="10" title="4" alt="4"/></td><td class="ctr2" id="e20">0%</td><td class="ctr1" id="f18">3</td><td class="ctr2" id="g18">3</td><td class="ctr1" id="h25">5</td><td class="ctr2" id="i25">5</td><td class="ctr1" id="j21">1</td><td class="ctr2" id="k21">1</td></tr><tr><td id="a36"><a href="CAdmin.java.html#L496" class="el_method">obtenerValoracionesDeVideo()</a></td><td class="bar" id="b22"><img src="../.resources/redbar.gif" width="43" height="10" title="22" alt="22"/></td><td class="ctr2" id="c22">0%</td><td class="bar" id="d19"><img src="../.resources/redbar.gif" width="34" height="10" title="4" alt="4"/></td><td class="ctr2" id="e21">0%</td><td class="ctr1" id="f19">3</td><td class="ctr2" id="g19">3</td><td class="ctr1" id="h26">5</td><td class="ctr2" id="i26">5</td><td class="ctr1" id="j22">1</td><td class="ctr2" id="k22">1</td></tr><tr><td id="a38"><a href="CAdmin.java.html#L594" class="el_method">seguirUsuario()</a></td><td class="bar" id="b23"><img src="../.resources/redbar.gif" width="43" height="10" title="22" alt="22"/></td><td class="ctr2" id="c23">0%</td><td class="bar" id="d20"><img src="../.resources/redbar.gif" width="34" height="10" title="4" alt="4"/></td><td class="ctr2" id="e22">0%</td><td class="ctr1" id="f20">3</td><td class="ctr2" id="g20">3</td><td class="ctr1" id="h17">6</td><td class="ctr2" id="i17">6</td><td class="ctr1" id="j23">1</td><td class="ctr2" id="k23">1</td></tr><tr><td id="a15"><a href="CAdmin.java.html#L250" class="el_method">iniciarSesionUsuario(String, String)</a></td><td class="bar" id="b24"><img src="../.resources/redbar.gif" width="41" height="10" title="21" alt="21"/></td><td class="ctr2" id="c24">0%</td><td class="bar" id="d21"><img src="../.resources/redbar.gif" width="34" height="10" title="4" alt="4"/></td><td class="ctr2" id="e23">0%</td><td class="ctr1" id="f21">3</td><td class="ctr2" id="g21">3</td><td class="ctr1" id="h15">7</td><td class="ctr2" id="i15">7</td><td class="ctr1" id="j24">1</td><td class="ctr2" id="k24">1</td></tr><tr><td id="a4"><a href="CAdmin.java.html#L123" class="el_method">altaListaDeReproduccionParticular(DtListaDeReproduccion)</a></td><td class="bar" id="b25"><img src="../.resources/redbar.gif" width="39" height="10" title="20" alt="20"/></td><td class="ctr2" id="c25">0%</td><td class="bar" id="d22"><img src="../.resources/redbar.gif" width="34" height="10" title="4" alt="4"/></td><td class="ctr2" id="e24">0%</td><td class="ctr1" id="f22">3</td><td class="ctr2" id="g22">3</td><td class="ctr1" id="h18">6</td><td class="ctr2" id="i18">6</td><td class="ctr1" id="j25">1</td><td class="ctr2" id="k25">1</td></tr><tr><td id="a8"><a href="CAdmin.java.html#L207" class="el_method">altaVideo(DtVideo)</a></td><td class="bar" id="b26"><img src="../.resources/redbar.gif" width="39" height="10" title="20" alt="20"/></td><td class="ctr2" id="c26">0%</td><td class="bar" id="d23"><img src="../.resources/redbar.gif" width="34" height="10" title="4" alt="4"/></td><td class="ctr2" id="e25">0%</td><td class="ctr1" id="f23">3</td><td class="ctr2" id="g23">3</td><td class="ctr1" id="h19">6</td><td class="ctr2" id="i19">6</td><td class="ctr1" id="j26">1</td><td class="ctr2" id="k26">1</td></tr><tr><td id="a40"><a href="CAdmin.java.html#L544" class="el_method">seleccionarUsuario(String)</a></td><td class="bar" id="b27"><img src="../.resources/redbar.gif" width="37" height="10" title="19" alt="19"/></td><td class="ctr2" id="c27">0%</td><td class="bar" id="d26"><img src="../.resources/redbar.gif" width="17" height="10" title="2" alt="2"/></td><td class="ctr2" id="e26">0%</td><td class="ctr1" id="f26">2</td><td class="ctr2" id="g26">2</td><td class="ctr1" id="h29">4</td><td class="ctr2" id="i29">4</td><td class="ctr1" id="j27">1</td><td class="ctr2" id="k27">1</td></tr><tr><td id="a41"><a href="CAdmin.java.html#L556" class="el_method">seleccionarUsuarioActual(String)</a></td><td class="bar" id="b28"><img src="../.resources/redbar.gif" width="37" height="10" title="19" alt="19"/></td><td class="ctr2" id="c28">0%</td><td class="bar" id="d27"><img src="../.resources/redbar.gif" width="17" height="10" title="2" alt="2"/></td><td class="ctr2" id="e27">0%</td><td class="ctr1" id="f27">2</td><td class="ctr2" id="g27">2</td><td class="ctr1" id="h30">4</td><td class="ctr2" id="i30">4</td><td class="ctr1" id="j28">1</td><td class="ctr2" id="k28">1</td></tr><tr><td id="a42"><a href="CAdmin.java.html#L568" class="el_method">seleccionarVideo(int)</a></td><td class="bar" id="b29"><img src="../.resources/redbar.gif" width="35" height="10" title="18" alt="18"/></td><td class="ctr2" id="c29">0%</td><td class="bar" id="d28"><img src="../.resources/redbar.gif" width="17" height="10" title="2" alt="2"/></td><td class="ctr2" id="e28">0%</td><td class="ctr1" id="f28">2</td><td class="ctr2" id="g28">2</td><td class="ctr1" id="h27">5</td><td class="ctr2" id="i27">5</td><td class="ctr1" id="j29">1</td><td class="ctr2" id="k29">1</td></tr><tr><td id="a39"><a href="CAdmin.java.html#L581" class="el_method">seleccionarListaDeReproduccion(int)</a></td><td class="bar" id="b30"><img src="../.resources/redbar.gif" width="35" height="10" title="18" alt="18"/></td><td class="ctr2" id="c30">0%</td><td class="bar" id="d29"><img src="../.resources/redbar.gif" width="17" height="10" title="2" alt="2"/></td><td class="ctr2" id="e29">0%</td><td class="ctr1" id="f29">2</td><td class="ctr2" id="g29">2</td><td class="ctr1" id="h28">5</td><td class="ctr2" id="i28">5</td><td class="ctr1" id="j30">1</td><td class="ctr2" id="k30">1</td></tr><tr><td id="a14"><a href="CAdmin.java.html#L242" class="el_method">iniciarSesionAdministrador(int, String)</a></td><td class="bar" id="b31"><img src="../.resources/redbar.gif" width="29" height="10" title="15" alt="15"/></td><td class="ctr2" id="c31">0%</td><td class="bar" id="d30"><img src="../.resources/redbar.gif" width="17" height="10" title="2" alt="2"/></td><td class="ctr2" id="e30">0%</td><td class="ctr1" id="f30">2</td><td class="ctr2" id="g30">2</td><td class="ctr1" id="h31">4</td><td class="ctr2" id="i31">4</td><td class="ctr1" id="j31">1</td><td class="ctr2" id="k31">1</td></tr><tr><td id="a24"><a href="CAdmin.java.html#L340" class="el_method">listarListasDeReproduccionParticularesDeUsuario()</a></td><td class="bar" id="b32"><img src="../.resources/redbar.gif" width="25" height="10" title="13" alt="13"/></td><td class="ctr2" id="c32">0%</td><td class="bar" id="d31"><img src="../.resources/redbar.gif" width="17" height="10" title="2" alt="2"/></td><td class="ctr2" id="e31">0%</td><td class="ctr1" id="f31">2</td><td class="ctr2" id="g31">2</td><td class="ctr1" id="h32">3</td><td class="ctr2" id="i32">3</td><td class="ctr1" id="j32">1</td><td class="ctr2" id="k32">1</td></tr><tr><td id="a44"><a href="CAdmin.java.html#L607" class="el_method">validarNuevaListaParticular(String)</a></td><td class="bar" id="b33"><img src="../.resources/redbar.gif" width="25" height="10" title="13" alt="13"/></td><td class="ctr2" id="c33">0%</td><td class="bar" id="d32"><img src="../.resources/redbar.gif" width="17" height="10" title="2" alt="2"/></td><td class="ctr2" id="e32">0%</td><td class="ctr1" id="f32">2</td><td class="ctr2" id="g32">2</td><td class="ctr1" id="h33">3</td><td class="ctr2" id="i33">3</td><td class="ctr1" id="j33">1</td><td class="ctr2" id="k33">1</td></tr><tr><td id="a26"><a href="CAdmin.java.html#L350" class="el_method">listarUsuarioSeguidores()</a></td><td class="bar" id="b34"><img src="../.resources/redbar.gif" width="23" height="10" title="12" alt="12"/></td><td class="ctr2" id="c34">0%</td><td class="bar" id="d33"><img src="../.resources/redbar.gif" width="17" height="10" title="2" alt="2"/></td><td class="ctr2" id="e33">0%</td><td class="ctr1" id="f33">2</td><td class="ctr2" id="g33">2</td><td class="ctr1" id="h34">3</td><td class="ctr2" id="i34">3</td><td class="ctr1" id="j34">1</td><td class="ctr2" id="k34">1</td></tr><tr><td id="a27"><a href="CAdmin.java.html#L360" class="el_method">listarUsuarioSeguidos()</a></td><td class="bar" id="b35"><img src="../.resources/redbar.gif" width="23" height="10" title="12" alt="12"/></td><td class="ctr2" id="c35">0%</td><td class="bar" id="d34"><img src="../.resources/redbar.gif" width="17" height="10" title="2" alt="2"/></td><td class="ctr2" id="e34">0%</td><td class="ctr1" id="f34">2</td><td class="ctr2" id="g34">2</td><td class="ctr1" id="h35">3</td><td class="ctr2" id="i35">3</td><td class="ctr1" id="j35">1</td><td class="ctr2" id="k35">1</td></tr><tr><td id="a29"><a href="CAdmin.java.html#L395" class="el_method">listarVideosDeUsuario()</a></td><td class="bar" id="b36"><img src="../.resources/redbar.gif" width="23" height="10" title="12" alt="12"/></td><td class="ctr2" id="c36">0%</td><td class="bar" id="d35"><img src="../.resources/redbar.gif" width="17" height="10" title="2" alt="2"/></td><td class="ctr2" id="e35">0%</td><td class="ctr1" id="f35">2</td><td class="ctr2" id="g35">2</td><td class="ctr1" id="h36">3</td><td class="ctr2" id="i36">3</td><td class="ctr1" id="j36">1</td><td class="ctr2" id="k36">1</td></tr><tr><td id="a34"><a href="CAdmin.java.html#L486" class="el_method">obtenerCanalDeUsuario()</a></td><td class="bar" id="b37"><img src="../.resources/redbar.gif" width="23" height="10" title="12" alt="12"/></td><td class="ctr2" id="c37">0%</td><td class="bar" id="d36"><img src="../.resources/redbar.gif" width="17" height="10" title="2" alt="2"/></td><td class="ctr2" id="e36">0%</td><td class="ctr1" id="f36">2</td><td class="ctr2" id="g36">2</td><td class="ctr1" id="h37">3</td><td class="ctr2" id="i37">3</td><td class="ctr1" id="j37">1</td><td class="ctr2" id="k37">1</td></tr><tr><td id="a13"><a href="CAdmin.java.html#L42" class="el_method">getInstancia()</a></td><td class="bar" id="b38"><img src="../.resources/redbar.gif" width="15" height="10" title="8" alt="8"/></td><td class="ctr2" id="c38">0%</td><td class="bar" id="d37"><img src="../.resources/redbar.gif" width="17" height="10" title="2" alt="2"/></td><td class="ctr2" id="e37">0%</td><td class="ctr1" id="f37">2</td><td class="ctr2" id="g37">2</td><td class="ctr1" id="h38">3</td><td class="ctr2" id="i38">3</td><td class="ctr1" id="j38">1</td><td class="ctr2" id="k38">1</td></tr><tr><td id="a10"><a href="CAdmin.java.html#L220" class="el_method">existeCategoria(String)</a></td><td class="bar" id="b39"><img src="../.resources/redbar.gif" width="9" height="10" title="5" alt="5"/></td><td class="ctr2" id="c39">0%</td><td class="bar" id="d39"/><td class="ctr2" id="e39">n/a</td><td class="ctr1" id="f39">1</td><td class="ctr2" id="g39">1</td><td class="ctr1" id="h43">1</td><td class="ctr2" id="i43">1</td><td class="ctr1" id="j39">1</td><td class="ctr2" id="k39">1</td></tr><tr><td id="a12"><a href="CAdmin.java.html#L239" class="el_method">existeNickname(String)</a></td><td class="bar" id="b40"><img src="../.resources/redbar.gif" width="9" height="10" title="5" alt="5"/></td><td class="ctr2" id="c40">0%</td><td class="bar" id="d40"/><td class="ctr2" id="e40">n/a</td><td class="ctr1" id="f40">1</td><td class="ctr2" id="g40">1</td><td class="ctr1" id="h44">1</td><td class="ctr2" id="i44">1</td><td class="ctr1" id="j40">1</td><td class="ctr2" id="k40">1</td></tr><tr><td id="a16"><a href="CAdmin.java.html#L262" class="el_method">liberarMemoriaListaDeReproduccion()</a></td><td class="bar" id="b41"><img src="../.resources/redbar.gif" width="7" height="10" title="4" alt="4"/></td><td class="ctr2" id="c41">0%</td><td class="bar" id="d41"/><td class="ctr2" id="e41">n/a</td><td class="ctr1" id="f41">1</td><td class="ctr2" id="g41">1</td><td class="ctr1" id="h39">2</td><td class="ctr2" id="i39">2</td><td class="ctr1" id="j41">1</td><td class="ctr2" id="k41">1</td></tr><tr><td id="a17"><a href="CAdmin.java.html#L266" class="el_method">liberarMemoriaUsuario()</a></td><td class="bar" id="b42"><img src="../.resources/redbar.gif" width="7" height="10" title="4" alt="4"/></td><td class="ctr2" id="c42">0%</td><td class="bar" id="d42"/><td class="ctr2" id="e42">n/a</td><td class="ctr1" id="f42">1</td><td class="ctr2" id="g42">1</td><td class="ctr1" id="h40">2</td><td class="ctr2" id="i40">2</td><td class="ctr1" id="j42">1</td><td class="ctr2" id="k42">1</td></tr><tr><td id="a18"><a href="CAdmin.java.html#L270" class="el_method">liberarMemoriaUsuarioActual()</a></td><td class="bar" id="b43"><img src="../.resources/redbar.gif" width="7" height="10" title="4" alt="4"/></td><td class="ctr2" id="c43">0%</td><td class="bar" id="d43"/><td class="ctr2" id="e43">n/a</td><td class="ctr1" id="f43">1</td><td class="ctr2" id="g43">1</td><td class="ctr1" id="h41">2</td><td class="ctr2" id="i41">2</td><td class="ctr1" id="j43">1</td><td class="ctr2" id="k43">1</td></tr><tr><td id="a19"><a href="CAdmin.java.html#L274" class="el_method">liberarMemoriaVideo()</a></td><td class="bar" id="b44"><img src="../.resources/redbar.gif" width="7" height="10" title="4" alt="4"/></td><td class="ctr2" id="c44">0%</td><td class="bar" id="d44"/><td class="ctr2" id="e44">n/a</td><td class="ctr1" id="f44">1</td><td class="ctr2" id="g44">1</td><td class="ctr1" id="h42">2</td><td class="ctr2" id="i42">2</td><td class="ctr1" id="j44">1</td><td class="ctr2" id="k44">1</td></tr><tr><td id="a43"><a href="CAdmin.java.html#L21" class="el_method">static {...}</a></td><td class="bar" id="b45"><img src="../.resources/redbar.gif" width="5" height="10" title="3" alt="3"/></td><td class="ctr2" id="c45">0%</td><td class="bar" id="d45"/><td class="ctr2" id="e45">n/a</td><td class="ctr1" id="f45">1</td><td class="ctr2" id="g45">1</td><td class="ctr1" id="h45">1</td><td class="ctr2" id="i45">1</td><td class="ctr1" id="j45">1</td><td class="ctr2" id="k45">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.InterfacesYControladores/CAdmin.java.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.InterfacesYControladores/CAdmin.java.html
new file mode 100644
index 0000000000000000000000000000000000000000..7ad6b3f6b0e781943d614c94fec80786e4ef3ea0
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.InterfacesYControladores/CAdmin.java.html
@@ -0,0 +1,626 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>CAdmin.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.source.html" class="el_package">Logica.InterfacesYControladores</a> &gt; <span class="el_source">CAdmin.java</span></div><h1>CAdmin.java</h1><pre class="source lang-java linenums">package Logica.InterfacesYControladores;
+
+import Logica.Clases.Administrador;
+import Logica.Clases.Categoria;
+import Logica.Clases.ListaDeReproduccion;
+import Logica.DataType.DtCanal;
+import Logica.DataType.DtComentario;
+import Logica.DataType.DtListaDeReproduccion;
+import Logica.DataType.DtUsuario;
+import Logica.DataType.DtValoracion;
+import Logica.DataType.DtVideo;
+import java.util.ArrayList;
+import Logica.Clases.Usuario;
+import Logica.Enumerados.Privacidad;
+import Logica.Enumerados.TipoListaDeReproduccion;
+import java.util.Map;
+import java.util.TreeMap;
+
+
+public class CAdmin implements IAdmin{
+<span class="nc" id="L21">    private static CAdmin instancia = null;</span>
+    private Map&lt;String, Usuario&gt; usuarios;
+    private Map&lt;String, Administrador&gt; administradores;
+    private Map&lt;String, Categoria&gt; categorias;
+    private Usuario usuarioActual;
+    private Usuario usuarioSeleccionado;
+    private int idListaSeleccionada;
+    private int idVideoSeleccionado;
+
+    
+<span class="nc" id="L31">    private CAdmin(){</span>
+<span class="nc" id="L32">        this.usuarios = new TreeMap();</span>
+<span class="nc" id="L33">        this.administradores = new TreeMap();</span>
+<span class="nc" id="L34">        this.categorias = new TreeMap();</span>
+<span class="nc" id="L35">        this.usuarioActual = null;</span>
+<span class="nc" id="L36">        this.usuarioSeleccionado = null;</span>
+<span class="nc" id="L37">        this.idListaSeleccionada = 0;</span>
+<span class="nc" id="L38">        this.idVideoSeleccionado = 0;</span>
+<span class="nc" id="L39">    }</span>
+    
+    public static CAdmin getInstancia(){
+<span class="nc bnc" id="L42" title="All 2 branches missed.">        if( instancia == null ){</span>
+<span class="nc" id="L43">            instancia = new CAdmin();</span>
+        }
+<span class="nc" id="L45">        return instancia;        </span>
+    }
+    
+    public void agregarVideoAListaDeReproduccion(){
+        /**
+         * Agrega el video idVideoSeleccionado a la lista idListaSeleccionada
+         */
+<span class="nc bnc" id="L52" title="All 2 branches missed.">        if (usuarioSeleccionado == null){</span>
+<span class="nc" id="L53">            throw new RuntimeException(&quot;El sistema no tiene un usuario seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L55" title="All 2 branches missed.">        if (usuarioActual == null){</span>
+<span class="nc" id="L56">            throw new RuntimeException(&quot;El sistema no tiene un usuario actual seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L58" title="All 2 branches missed.">        if (idVideoSeleccionado == 0){</span>
+<span class="nc" id="L59">            throw new RuntimeException(&quot;El sistema no tiene un video seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L61" title="All 2 branches missed.">        if (idListaSeleccionada == 0){</span>
+<span class="nc" id="L62">            throw new RuntimeException(&quot;El sistema no tiene una lista de reproduccion seleccionado&quot;);</span>
+        }
+<span class="nc" id="L64">        usuarioActual.agregarVideoALista(idListaSeleccionada, idVideoSeleccionado, usuarioSeleccionado);</span>
+<span class="nc" id="L65">    }</span>
+    
+    public void altaCategoria(String categoria){
+        /**
+         * Crea la categoria con el nombre indicado
+         */
+<span class="nc bnc" id="L71" title="All 2 branches missed.">        if (categoria.equals(&quot;&quot;)){</span>
+<span class="nc" id="L72">            throw new RuntimeException(&quot;El nombre de la categoria no puede ser vacio&quot;);</span>
+        }
+<span class="nc bnc" id="L74" title="All 2 branches missed.">        if (existeCategoria(categoria)){</span>
+<span class="nc" id="L75">            throw new RuntimeException(&quot;El sistema ya posee una categoria con ese nombre&quot;);</span>
+        }
+<span class="nc" id="L77">        categorias.put(categoria, new Categoria(categoria));</span>
+<span class="nc" id="L78">    }</span>
+    
+    public void altaComentario(DtComentario dtCom){
+        /**
+         * Comenta el video idVideoSeleccionado a nombre de usuarioActual
+         */
+<span class="nc bnc" id="L84" title="All 2 branches missed.">        if (usuarioSeleccionado == null){</span>
+<span class="nc" id="L85">            throw new RuntimeException(&quot;El sistema no tiene un usuario seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L87" title="All 2 branches missed.">        if (usuarioActual == null){</span>
+<span class="nc" id="L88">            throw new RuntimeException(&quot;El sistema no tiene un usuario actual seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L90" title="All 2 branches missed.">        if (dtCom == null){</span>
+<span class="nc" id="L91">            throw new RuntimeException(&quot;El DataType comentario no puede ser null&quot;);</span>
+        }
+<span class="nc bnc" id="L93" title="All 2 branches missed.">        if (idVideoSeleccionado == 0){</span>
+<span class="nc" id="L94">            throw new RuntimeException(&quot;El sistema no tiene un video seleccionado&quot;);</span>
+        }
+<span class="nc" id="L96">        usuarioSeleccionado.agregarComentarioAVideo(idVideoSeleccionado, dtCom, usuarioActual);</span>
+        
+<span class="nc" id="L98">    }</span>
+    
+    public void altaComentario(DtComentario dtCom, int idComPadre){
+        /**
+         * Comenta el comentario con dicho ID a nombre de usuarioActual
+         */
+<span class="nc bnc" id="L104" title="All 2 branches missed.">        if (usuarioSeleccionado == null){</span>
+<span class="nc" id="L105">            throw new RuntimeException(&quot;El sistema no tiene un usuario seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L107" title="All 2 branches missed.">        if (usuarioActual == null){</span>
+<span class="nc" id="L108">            throw new RuntimeException(&quot;El sistema no tiene un usuario actual seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L110" title="All 2 branches missed.">        if (dtCom == null){</span>
+<span class="nc" id="L111">            throw new RuntimeException(&quot;El DataType comentario no puede ser null&quot;);</span>
+        }
+<span class="nc bnc" id="L113" title="All 2 branches missed.">        if (idVideoSeleccionado == 0){</span>
+<span class="nc" id="L114">            throw new RuntimeException(&quot;El sistema no tiene un video seleccionado&quot;);</span>
+        }
+<span class="nc" id="L116">        usuarioSeleccionado.agregarComentarioAVideo(idVideoSeleccionado, idComPadre, dtCom, usuarioActual);</span>
+<span class="nc" id="L117">    }</span>
+    
+    public void altaListaDeReproduccionParticular(DtListaDeReproduccion lista){
+        /**
+         * Crea la lista de reproduccion para usuarioSeleccionado
+         */
+<span class="nc bnc" id="L123" title="All 2 branches missed.">        if (usuarioSeleccionado == null){</span>
+<span class="nc" id="L124">            throw new RuntimeException(&quot;El sistema no tiene un usuario seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L126" title="All 2 branches missed.">        if (lista == null){</span>
+<span class="nc" id="L127">            throw new RuntimeException(&quot;El DataType lista de reproduccion no puede ser null&quot;);</span>
+        }
+<span class="nc" id="L129">        usuarioSeleccionado.agregarListaParticular(lista);</span>
+        
+<span class="nc" id="L131">    }</span>
+    
+    public void altaListaDeReproduccionPorDefecto(DtListaDeReproduccion lista){
+        /**
+         * Crea la lista de reproduccion para todos los usuarios del sistema y 
+         * la agrega listas por defecto (para que se creen al crear un usuario nuevo)
+         */
+<span class="nc bnc" id="L138" title="All 2 branches missed.">        if (lista == null){</span>
+<span class="nc" id="L139">            throw new RuntimeException(&quot;El DataType lista de reproduccion no puede ser null&quot;);</span>
+        }
+<span class="nc bnc" id="L141" title="All 2 branches missed.">        if (lista.getNombre().equals(&quot;&quot;)){</span>
+<span class="nc" id="L142">            throw new RuntimeException(&quot;El nombre de la nueva lista de reproduccion por defecto no puede ser vacio&quot;);</span>
+        }
+<span class="nc bnc" id="L144" title="All 2 branches missed.">        if (ListaDeReproduccion.listarNombresDeListasPorDefecto().contains(lista.getNombre())){</span>
+<span class="nc" id="L145">            throw new RuntimeException(&quot;El sistema ya posee una lista de reproduccion por defecto con ese nombre&quot;);</span>
+        }
+<span class="nc" id="L147">        ListaDeReproduccion.agregarListaPorDefecto(lista.getNombre());</span>
+        
+<span class="nc bnc" id="L149" title="All 2 branches missed.">        for (Map.Entry&lt;String, Usuario&gt; u : usuarios.entrySet()){</span>
+<span class="nc" id="L150">            u.getValue().actualizarListasPorDefecto();</span>
+<span class="nc" id="L151">        }</span>
+<span class="nc" id="L152">    }</span>
+    
+    public void altaUsuarioCanal(DtUsuario usr, DtCanal canal){
+        /**
+         * Crea un usuario y su canal a partir de los datos recibidos
+         */
+<span class="nc bnc" id="L158" title="All 2 branches missed.">        if (usr == null){</span>
+<span class="nc" id="L159">            throw new RuntimeException(&quot;El DataType usuario no puede ser null&quot;);</span>
+        }
+<span class="nc bnc" id="L161" title="All 2 branches missed.">        if (canal == null){</span>
+<span class="nc" id="L162">            throw new RuntimeException(&quot;El DataType canal no puede ser null&quot;);</span>
+        }
+<span class="nc bnc" id="L164" title="All 2 branches missed.">        if (existeNickname(usr.getNickname())){</span>
+<span class="nc" id="L165">            throw new RuntimeException(&quot;El sistema ya tiene un usuario con ese nickname&quot;);</span>
+        }
+<span class="nc bnc" id="L167" title="All 2 branches missed.">        if (existeEmail(usr.getCorreo())){</span>
+<span class="nc" id="L168">            throw new RuntimeException(&quot;El sistema ya tiene un usuario con ese correo&quot;);</span>
+        }
+        
+<span class="nc" id="L171">        Usuario nuevoUsuario = new Usuario(</span>
+<span class="nc" id="L172">                usr.getNickname(), </span>
+<span class="nc" id="L173">                usr.getCorreo(), </span>
+<span class="nc" id="L174">                usr.getFechaNacimiento(), </span>
+<span class="nc" id="L175">                usr.getImagen(), </span>
+<span class="nc" id="L176">                usr.getContrasenia(), </span>
+<span class="nc" id="L177">                usr.getNombre(), </span>
+<span class="nc" id="L178">                usr.getApellido(), </span>
+                canal);
+<span class="nc" id="L180">        usuarios.put(nuevoUsuario.getNickname(), nuevoUsuario);</span>
+<span class="nc" id="L181">    }</span>
+    
+    public void altaValoracion(DtValoracion val){
+        /**
+	Se ingresa la nueva valoracion dada por usuarioActual al video idVideoSeleccionado
+	Si el usuario ya habia valorado, se actualiza la valoracion dada
+        */
+<span class="nc bnc" id="L188" title="All 2 branches missed.">        if (usuarioSeleccionado == null){</span>
+<span class="nc" id="L189">            throw new RuntimeException(&quot;El sistema no tiene un usuario seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L191" title="All 2 branches missed.">        if (usuarioActual == null){</span>
+<span class="nc" id="L192">            throw new RuntimeException(&quot;El sistema no tiene un usuario actual seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L194" title="All 2 branches missed.">        if (val == null){</span>
+<span class="nc" id="L195">            throw new RuntimeException(&quot;El DataType Valoracion no puede ser null&quot;);</span>
+        }
+<span class="nc bnc" id="L197" title="All 2 branches missed.">        if (idVideoSeleccionado == 0){</span>
+<span class="nc" id="L198">            throw new RuntimeException(&quot;El sistema no tiene un video seleccionado&quot;);</span>
+        }
+<span class="nc" id="L200">        usuarioSeleccionado.agregarModificarValoracionDeVideo(idVideoSeleccionado, val, usuarioActual);</span>
+<span class="nc" id="L201">    }</span>
+    
+    public void altaVideo(DtVideo video){
+        /**
+         * Se crea un video nuevo en el canal de usuarioSeleccionado
+         */
+<span class="nc bnc" id="L207" title="All 2 branches missed.">        if (usuarioSeleccionado == null){</span>
+<span class="nc" id="L208">            throw new RuntimeException(&quot;El sistema no tiene un usuario seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L210" title="All 2 branches missed.">        if (video == null){</span>
+<span class="nc" id="L211">            throw new RuntimeException(&quot;El DataType video no puede ser null&quot;);</span>
+        }
+<span class="nc" id="L213">        usuarioSeleccionado.agregarVideoACanal(video);</span>
+<span class="nc" id="L214">    }</span>
+    
+    public boolean existeCategoria(String cat){
+        /**
+         * Verifica si existe una categoria con el nombre recibido
+         */
+<span class="nc" id="L220">        return categorias.containsKey(cat);</span>
+    }
+    
+    public boolean existeEmail(String email){
+        /**
+         * Verifica si existe un usuario con el mail recibido
+         */
+<span class="nc bnc" id="L227" title="All 2 branches missed.">        for (Map.Entry&lt;String, Usuario&gt; u : usuarios.entrySet()){</span>
+<span class="nc bnc" id="L228" title="All 2 branches missed.">            if (u.getValue().getCorreo() == email){</span>
+<span class="nc" id="L229">                return true;</span>
+            }
+<span class="nc" id="L231">        }</span>
+<span class="nc" id="L232">        return false;</span>
+    }
+    
+    public boolean existeNickname(String nickname){
+        /**
+         * Verifica si existe un usuario con el nickname recibido
+         */
+<span class="nc" id="L239">        return usuarios.containsKey(nickname);</span>
+    }
+    public boolean iniciarSesionAdministrador(int id, String pass){
+<span class="nc" id="L242">        Administrador a = administradores.get(id);</span>
+<span class="nc bnc" id="L243" title="All 2 branches missed.">        if (a == null){</span>
+<span class="nc" id="L244">            return false;</span>
+        }
+<span class="nc" id="L246">        return a.validarContrasenia(pass);</span>
+    }
+    
+    public boolean iniciarSesionUsuario(String nickname, String pass){
+<span class="nc" id="L250">        Usuario u = usuarios.get(nickname);</span>
+<span class="nc bnc" id="L251" title="All 2 branches missed.">        if (u == null){</span>
+<span class="nc" id="L252">            return false;</span>
+        }
+<span class="nc" id="L254">        boolean ok = u.validarContrasenia(pass);</span>
+<span class="nc bnc" id="L255" title="All 2 branches missed.">        if (ok){</span>
+<span class="nc" id="L256">            usuarioActual = u;</span>
+        }
+<span class="nc" id="L258">        return ok;</span>
+    }
+    
+    public void liberarMemoriaListaDeReproduccion(){
+<span class="nc" id="L262">        idListaSeleccionada = 0;</span>
+<span class="nc" id="L263">    }</span>
+    
+    public void liberarMemoriaUsuario(){
+<span class="nc" id="L266">        usuarioSeleccionado = null;</span>
+<span class="nc" id="L267">    }</span>
+    
+    public void liberarMemoriaUsuarioActual(){
+<span class="nc" id="L270">        usuarioActual = null;</span>
+<span class="nc" id="L271">    }</span>
+    
+    public void liberarMemoriaVideo(){
+<span class="nc" id="L274">        idVideoSeleccionado = 0;</span>
+<span class="nc" id="L275">    }</span>
+    
+    public ArrayList&lt;String&gt; listarCategorias(){
+        /**
+         * Devuelve todas las categorias existentes en el sistema
+         */
+<span class="nc" id="L281">        ArrayList&lt;String&gt; ret = new ArrayList();</span>
+<span class="nc bnc" id="L282" title="All 2 branches missed.">        for (Map.Entry&lt;String, Categoria&gt; c : categorias.entrySet()){</span>
+<span class="nc" id="L283">            ret.add(c.getValue().getNombre());</span>
+<span class="nc" id="L284">        }</span>
+<span class="nc" id="L285">        return ret;</span>
+    }
+    
+    public ArrayList&lt;DtComentario&gt; listarComentariosDeVideo(){
+        /**
+         * Devuelve en forma ordenada (recursiva ) todos los comentarios de idVideoSeleccionado
+         */
+<span class="nc bnc" id="L292" title="All 2 branches missed.">        if (this.usuarioSeleccionado == null){</span>
+<span class="nc" id="L293">            throw new RuntimeException(&quot;El sistema no tiene un usuario seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L295" title="All 2 branches missed.">        if (idVideoSeleccionado == 0){</span>
+<span class="nc" id="L296">            throw new RuntimeException(&quot;El sistema no tiene un video seleccionado&quot;);</span>
+        }
+<span class="nc" id="L298">        return usuarioSeleccionado.listarComentariosDeVideo(idVideoSeleccionado);</span>
+    }
+    
+    public ArrayList&lt;DtListaDeReproduccion&gt; listarListasDeReproduccionEnCategoria(String cat){
+        /**
+         * Devuelve todos las listas de reproduccion del sistema que pertenezcan a la categoria indicada
+         */
+        
+<span class="nc bnc" id="L306" title="All 2 branches missed.">        if (cat.equals(&quot;&quot;)){</span>
+<span class="nc" id="L307">            throw new RuntimeException(&quot;La categoria no puede ser vacia&quot;);</span>
+        }
+<span class="nc" id="L309">        ArrayList&lt;DtListaDeReproduccion&gt; ret = new ArrayList();</span>
+<span class="nc bnc" id="L310" title="All 2 branches missed.">        for (Map.Entry&lt;String, Usuario&gt; u : usuarios.entrySet()){</span>
+<span class="nc" id="L311">            ret.addAll(u.getValue().obtenerListasEnCategoria(cat));</span>
+<span class="nc" id="L312">        }</span>
+<span class="nc" id="L313">        return ret;</span>
+    }
+    
+    public ArrayList&lt;DtListaDeReproduccion&gt; listarListasDeReproduccionDeUsuario(String nickname){
+        /**
+         * Devuelve todas las listas de reproduccion de usuarioSeleccionado o de usuarioActual segun el nickname indicado
+         */
+<span class="nc bnc" id="L320" title="All 2 branches missed.">        if (nickname.equals(&quot;&quot;)){</span>
+<span class="nc" id="L321">            throw new RuntimeException(&quot;El nickname del usuario no puede ser vacio&quot;);</span>
+        }
+<span class="nc bnc" id="L323" title="All 4 branches missed.">        if (usuarioActual == null &amp;&amp; usuarioSeleccionado == null){</span>
+<span class="nc" id="L324">        throw new RuntimeException(&quot;No hay usuarios seleccionados&quot;);</span>
+        }
+        
+<span class="nc bnc" id="L327" title="All 4 branches missed.">        if (usuarioActual != null &amp;&amp; usuarioActual.getNickname().equals(nickname)){</span>
+<span class="nc" id="L328">            return usuarioActual.listarListasDeReproduccionDeCanal(false);</span>
+        }
+<span class="nc bnc" id="L330" title="All 4 branches missed.">        if (usuarioSeleccionado != null &amp;&amp; usuarioSeleccionado.getNickname().equals(nickname)){</span>
+<span class="nc" id="L331">            return usuarioSeleccionado.listarListasDeReproduccionDeCanal(false);</span>
+        }
+<span class="nc" id="L333">        throw new RuntimeException(&quot;El nickname no coincide con los posibles usuarios seleccionados&quot;);</span>
+    }
+    
+    public ArrayList&lt;DtListaDeReproduccion&gt; listarListasDeReproduccionParticularesDeUsuario(){
+        /**
+         * Devuelve las listas de reproduccion particulares de usuarioSeleccionado
+         */
+<span class="nc bnc" id="L340" title="All 2 branches missed.">        if (this.usuarioSeleccionado == null){</span>
+<span class="nc" id="L341">            throw new RuntimeException(&quot;El sistema no tiene un usuario seleccionado&quot;);</span>
+        }
+<span class="nc" id="L343">        return usuarioSeleccionado.listarListasDeReproduccionDeCanal(true);</span>
+    }
+    
+    public ArrayList&lt;DtUsuario&gt; listarUsuarioSeguidores(){
+        /**
+         * Devuelve todos los usuarios que siguen a usuarioSeleccionado
+         */
+<span class="nc bnc" id="L350" title="All 2 branches missed.">        if (this.usuarioSeleccionado == null){</span>
+<span class="nc" id="L351">            throw new RuntimeException(&quot;El sistema no tiene un usuario seleccionado&quot;);</span>
+        }
+<span class="nc" id="L353">        return usuarioSeleccionado.listarUsuariosSeguidores();</span>
+    }
+    
+    public ArrayList&lt;DtUsuario&gt; listarUsuarioSeguidos(){
+        /**
+         * Devuelve todos los usuarios a quienes sigue usuarioSeleccionado
+         */
+<span class="nc bnc" id="L360" title="All 2 branches missed.">        if (this.usuarioSeleccionado == null){</span>
+<span class="nc" id="L361">            throw new RuntimeException(&quot;El sistema no tiene un usuario seleccionado&quot;);</span>
+        }
+<span class="nc" id="L363">        return usuarioSeleccionado.listarUsuariosSeguidos();</span>
+    }
+    
+    public ArrayList&lt;DtUsuario&gt; listarUsuarios(){
+        /**
+         * Devuelve todos los datos de todos los usuarios
+         */
+<span class="nc" id="L370">        ArrayList&lt;DtUsuario&gt; ret = new ArrayList&lt;&gt;();</span>
+<span class="nc bnc" id="L371" title="All 2 branches missed.">        for (Map.Entry&lt;String, Usuario&gt; usuario : usuarios.entrySet()) {</span>
+<span class="nc" id="L372">              ret.add(usuario.getValue().getDT());</span>
+<span class="nc" id="L373">        }</span>
+<span class="nc" id="L374">        return ret;</span>
+    }
+    
+    public ArrayList&lt;DtVideo&gt; listarVideosEnCategoria(String cat){
+        /**
+         * Devuelve todos los videos del sistema que pertenezcan a la categoria indicada
+         */
+<span class="nc bnc" id="L381" title="All 2 branches missed.">        if (cat.equals(&quot;&quot;)){</span>
+<span class="nc" id="L382">            throw new RuntimeException(&quot;La categoria no puede ser vacia&quot;);</span>
+        }
+<span class="nc" id="L384">        ArrayList&lt;DtVideo&gt; ret = new ArrayList();</span>
+<span class="nc bnc" id="L385" title="All 2 branches missed.">        for (Map.Entry&lt;String, Usuario&gt; u : usuarios.entrySet()){</span>
+<span class="nc" id="L386">            ret.addAll(u.getValue().obtenerVideosEnCategoria(cat));</span>
+<span class="nc" id="L387">        }</span>
+<span class="nc" id="L388">        return ret;</span>
+    }
+    
+    public ArrayList&lt;DtVideo&gt; listarVideosDeUsuario(){
+        /**
+         * Devuelve todos los videos de usuarioSeleccionado
+         */
+<span class="nc bnc" id="L395" title="All 2 branches missed.">        if (this.usuarioSeleccionado == null){</span>
+<span class="nc" id="L396">            throw new RuntimeException(&quot;El sistema no tiene un usuario seleccionado&quot;);</span>
+        }
+<span class="nc" id="L398">        return usuarioSeleccionado.listarVideosDeCanal();</span>
+    }
+    
+    public ArrayList&lt;DtVideo&gt; listarVideosDeListaDeReproduccion(){
+        /**
+         * Devuelve los videos de la lista de reproduccion idListaSeleccionada
+         */
+<span class="nc bnc" id="L405" title="All 2 branches missed.">        if (this.usuarioSeleccionado == null){</span>
+<span class="nc" id="L406">            throw new RuntimeException(&quot;El sistema no tiene un usuario seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L408" title="All 2 branches missed.">        if (idListaSeleccionada == 0){</span>
+<span class="nc" id="L409">            throw new RuntimeException(&quot;El sistema no tiene una lista de reproduccion seleccionado&quot;);</span>
+        }
+<span class="nc" id="L411">        return usuarioSeleccionado.listarVideosDeListaDeReproduccion(idListaSeleccionada);</span>
+    }
+    
+    public void modificarListaDeReproduccion(DtListaDeReproduccion lista){
+        /**
+         * Se modifican los datos de la lista idListaSeleccionada
+         */
+<span class="nc bnc" id="L418" title="All 2 branches missed.">        if (this.usuarioSeleccionado == null){</span>
+<span class="nc" id="L419">            throw new RuntimeException(&quot;El sistema no tiene un usuario seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L421" title="All 2 branches missed.">        if (idListaSeleccionada == 0){</span>
+<span class="nc" id="L422">            throw new RuntimeException(&quot;El sistema no tiene una lista de reproduccion seleccionado&quot;);</span>
+        }
+        
+        // no confio en que el DataType recibido venga con el id del video correcto,
+        // asi que creo otro y con el idVideoSeleccionado por las dudas
+<span class="nc" id="L427">        DtListaDeReproduccion dtl = new DtListaDeReproduccion(</span>
+                idListaSeleccionada, 
+<span class="nc" id="L429">                lista.getNombre(), </span>
+<span class="nc" id="L430">                lista.getPrivacidad(), </span>
+<span class="nc" id="L431">                lista.getTipo(), </span>
+<span class="nc" id="L432">                lista.getCategoria());</span>
+<span class="nc" id="L433">        usuarioSeleccionado.modificarListaDeReproduccionDeCanal(dtl);</span>
+<span class="nc" id="L434">    }</span>
+    
+    public void modificarUsuarioYCanal(DtUsuario usr,DtCanal canal){
+        /**
+         * Se modifican los datos de usuarioActual y su canal
+         */
+<span class="nc bnc" id="L440" title="All 2 branches missed.">        if (this.usuarioSeleccionado == null){</span>
+<span class="nc" id="L441">            throw new RuntimeException(&quot;El sistema no tiene un usuario seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L443" title="All 2 branches missed.">        if (usr == null){</span>
+<span class="nc" id="L444">            throw new RuntimeException(&quot;El DataType usuario no puede ser null&quot;);</span>
+        }
+<span class="nc bnc" id="L446" title="All 2 branches missed.">        if (canal == null){</span>
+<span class="nc" id="L447">            throw new RuntimeException(&quot;El DataType canal no puede ser null&quot;);</span>
+        }
+<span class="nc" id="L449">        usuarioSeleccionado.modificar(usr, canal);</span>
+<span class="nc" id="L450">    }</span>
+    
+    public void modificarVideo(DtVideo video){
+        /**
+         * Se modifican los datos del video idVideoSeleccionado
+         */
+<span class="nc bnc" id="L456" title="All 2 branches missed.">        if (this.usuarioSeleccionado == null){</span>
+<span class="nc" id="L457">            throw new RuntimeException(&quot;El sistema no tiene un usuario seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L459" title="All 2 branches missed.">        if (idVideoSeleccionado == 0){</span>
+<span class="nc" id="L460">            throw new RuntimeException(&quot;El sistema no tiene un video seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L462" title="All 2 branches missed.">        if (video == null){</span>
+<span class="nc" id="L463">            throw new RuntimeException(&quot;El DataType video no puede ser null&quot;);</span>
+        }
+        
+        // no confio en que el DataType recibido venga con el id del video correcto,
+        // asi que creo otro y con el idVideoSeleccionado por las dudas
+<span class="nc" id="L468">        DtVideo dtv = new DtVideo(</span>
+                idVideoSeleccionado, 
+<span class="nc" id="L470">                video.getNombre(), </span>
+<span class="nc" id="L471">                video.getDescripcion(), </span>
+<span class="nc" id="L472">                video.getDuracion(), </span>
+<span class="nc" id="L473">                video.getFechaPublicacion(), </span>
+<span class="nc" id="L474">                video.getUrlVideoOriginal(), </span>
+<span class="nc" id="L475">                video.getPrivacidad(), </span>
+<span class="nc" id="L476">                video.getCategoria(), </span>
+                0, 0);
+        
+<span class="nc" id="L479">        usuarioSeleccionado.modificarVideoDeCanal(dtv);</span>
+<span class="nc" id="L480">    }</span>
+    
+    public DtCanal obtenerCanalDeUsuario(){
+        /**
+         * Devuelve los datos del canal del usuario en memoria usuarioSeleccionado
+         */
+<span class="nc bnc" id="L486" title="All 2 branches missed.">        if (this.usuarioSeleccionado == null){</span>
+<span class="nc" id="L487">            throw new RuntimeException(&quot;El sistema no tiene un usuario seleccionado&quot;);</span>
+        }
+<span class="nc" id="L489">        return usuarioSeleccionado.obtenerCanal();</span>
+    }
+    
+    public ArrayList&lt;DtValoracion&gt; obtenerValoracionesDeVideo(){
+        /**
+         * Devuelve las valoraciones de idVideoSeleccionado
+         */
+<span class="nc bnc" id="L496" title="All 2 branches missed.">        if (this.usuarioSeleccionado == null){</span>
+<span class="nc" id="L497">            throw new RuntimeException(&quot;El sistema no tiene un usuario seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L499" title="All 2 branches missed.">        if (idVideoSeleccionado == 0){</span>
+<span class="nc" id="L500">            throw new RuntimeException(&quot;El sistema no tiene un video seleccionado&quot;);</span>
+        }
+<span class="nc" id="L502">        return usuarioSeleccionado.listarValoracionesDeVideo(idVideoSeleccionado);</span>
+    }
+    
+    public DtValoracion obtenerValoracionDada(){
+        /**
+        *  Devuelve la valoracion dada por usuarioActual al video idVideoSeleccionado
+        *
+        */
+<span class="nc bnc" id="L510" title="All 2 branches missed.">        if (this.usuarioActual == null) {</span>
+<span class="nc" id="L511">            throw new RuntimeException(&quot;El sistema no tiene un usuario actual seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L513" title="All 2 branches missed.">        if (this.usuarioSeleccionado == null){</span>
+<span class="nc" id="L514">            throw new RuntimeException(&quot;El sistema no tiene un usuario seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L516" title="All 2 branches missed.">        if (idVideoSeleccionado == 0){</span>
+<span class="nc" id="L517">            throw new RuntimeException(&quot;El sistema no tiene un video seleccionado&quot;);</span>
+        }
+        // si la funcion retorna null, significa que el usuario no lo ha valorado. Entonces no se considera error
+<span class="nc" id="L520">        return usuarioSeleccionado.obtenerValoracion(idVideoSeleccionado, usuarioActual.getNickname());</span>
+    }
+    
+    public void quitarVideoDeListaDeReproduccion(){
+        /**
+         * Quita el video idVideoSeleccionado de la lista idListaSeleccionada
+         */
+<span class="nc bnc" id="L527" title="All 2 branches missed.">        if (usuarioSeleccionado == null) {</span>
+<span class="nc" id="L528">            throw new RuntimeException(&quot;El sistema no tiene un usuario actual seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L530" title="All 2 branches missed.">        if (idListaSeleccionada == 0){</span>
+<span class="nc" id="L531">            throw new RuntimeException(&quot;El sistema no tiene una lista de reproduccion seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L533" title="All 2 branches missed.">        if (idVideoSeleccionado == 0){</span>
+<span class="nc" id="L534">            throw new RuntimeException(&quot;El sistema no tiene un video seleccionado&quot;);</span>
+        }
+<span class="nc" id="L536">        usuarioSeleccionado.quitarVideoDeListaDeReproduccion(idListaSeleccionada, idVideoSeleccionado);</span>
+<span class="nc" id="L537">    }</span>
+    
+    public DtUsuario seleccionarUsuario(String nickname){
+        /**
+	*  El sistema recuerda un link al usuario como usuarioSeleccionado
+	*  Devuelve los datos de usuarioSeleccionado
+        */
+<span class="nc" id="L544">        usuarioSeleccionado = usuarios.get(nickname);</span>
+<span class="nc bnc" id="L545" title="All 2 branches missed.">        if (usuarioSeleccionado == null){</span>
+<span class="nc" id="L546">            throw new RuntimeException(&quot;No se encontro ningun usuario con ese nickname&quot;);</span>
+        }
+<span class="nc" id="L548">        return usuarioSeleccionado.getDT();</span>
+    }
+    
+    public DtUsuario seleccionarUsuarioActual(String nickname){
+        /**
+        El sistema recuerda un link al usuario como usuarioActual
+	Devuelve los datos de usuarioActual
+        * */
+<span class="nc" id="L556">        usuarioActual = usuarios.get(nickname);</span>
+<span class="nc bnc" id="L557" title="All 2 branches missed.">        if (usuarioActual == null){</span>
+<span class="nc" id="L558">            throw new RuntimeException(&quot;No se encontro ningun usuario con ese nickname&quot;);</span>
+        }
+<span class="nc" id="L560">        return usuarioActual.getDT();</span>
+    }
+    
+    public DtVideo seleccionarVideo(int idVideo){
+	/**
+        El sistema recuerda el ID del video como idVideoSeleccionado
+	Devuelve los datos del video seleccionado
+        */
+<span class="nc bnc" id="L568" title="All 2 branches missed.">        if (this.usuarioSeleccionado == null){</span>
+<span class="nc" id="L569">            throw new RuntimeException(&quot;El sistema no tiene un usuario seleccionado&quot;);</span>
+        }
+<span class="nc" id="L571">        DtVideo ret = usuarioSeleccionado.obtenerVideoDeCanal(idVideo);</span>
+<span class="nc" id="L572">        idVideoSeleccionado = idVideo;</span>
+<span class="nc" id="L573">        return ret;</span>
+    }
+    
+    public DtListaDeReproduccion seleccionarListaDeReproduccion(int idLista){
+	/**
+         * El sistema recuerda el ID de la lista como idListaSeleccionada
+         * Devuelve los datos de la lista de reproduccion seleccionada perteneciente a usuarioSeleccionado
+         */
+<span class="nc bnc" id="L581" title="All 2 branches missed.">        if (this.usuarioSeleccionado == null){</span>
+<span class="nc" id="L582">            throw new RuntimeException(&quot;El sistema no tiene un usuario seleccionado&quot;);</span>
+        }
+<span class="nc" id="L584">        DtListaDeReproduccion ret = usuarioSeleccionado.obtenerListaDeReproduccion(idLista);</span>
+<span class="nc" id="L585">        idListaSeleccionada = idLista;</span>
+<span class="nc" id="L586">        return ret;</span>
+    }
+    
+    public void seguirUsuario(){
+        /**
+         * El usuario usuarioActual comienza a seguir a usuarioSeleccionado En
+         * caso de que este ya lo este siguiendo, lo deja de seguir
+         */
+<span class="nc bnc" id="L594" title="All 2 branches missed.">        if (this.usuarioActual == null) {</span>
+<span class="nc" id="L595">            throw new RuntimeException(&quot;El sistema no tiene un usuario actual seleccionado&quot;);</span>
+        }
+<span class="nc bnc" id="L597" title="All 2 branches missed.">        if (this.usuarioSeleccionado == null){</span>
+<span class="nc" id="L598">            throw new RuntimeException(&quot;El sistema no tiene un usuario seleccionado&quot;);</span>
+        }
+<span class="nc" id="L600">        usuarioActual.agregarOQuitarSeguido(usuarioSeleccionado);</span>
+<span class="nc" id="L601">    }</span>
+    
+    public boolean validarNuevaListaParticular(String nombre){
+        /**
+         * Devuelve true si usuarioSeleccionado posee una lista de reproducion con ese nombre
+         */
+<span class="nc bnc" id="L607" title="All 2 branches missed.">        if (this.usuarioSeleccionado == null){</span>
+<span class="nc" id="L608">            throw new RuntimeException(&quot;El sistema no tiene un usuario seleccionado&quot;);</span>
+        }
+<span class="nc" id="L610">        return usuarioSeleccionado.validarListaParticular(nombre);</span>
+    }
+    
+    public boolean validarNuevaListaPorDefecto(String nombre){
+        /**
+         * Devuelve false si existe algun usuario en el sistema que posea una
+         * lista de reproduccion con ese nombre
+         */
+<span class="nc bnc" id="L618" title="All 2 branches missed.">        for (Map.Entry&lt;String, Usuario&gt; u : this.usuarios.entrySet()){</span>
+<span class="nc bnc" id="L619" title="All 2 branches missed.">            if (u.getValue().validarListaParticular(nombre)){</span>
+<span class="nc" id="L620">                return false;</span>
+            }
+<span class="nc" id="L622">        }</span>
+<span class="nc" id="L623">        return true;</span>
+    }
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.InterfacesYControladores/index.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.InterfacesYControladores/index.html
new file mode 100644
index 0000000000000000000000000000000000000000..7d38c806b0fcf86518bd34a87251e7c8a007c76a
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.InterfacesYControladores/index.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Logica.InterfacesYControladores</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.source.html" class="el_source">Source Files</a><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <span class="el_package">Logica.InterfacesYControladores</span></div><h1>Logica.InterfacesYControladores</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">1.080 of 1.080</td><td class="ctr2">0%</td><td class="bar">166 of 166</td><td class="ctr2">0%</td><td class="ctr1">129</td><td class="ctr2">129</td><td class="ctr1">271</td><td class="ctr2">271</td><td class="ctr1">46</td><td class="ctr2">46</td><td class="ctr1">1</td><td class="ctr2">1</td></tr></tfoot><tbody><tr><td id="a0"><a href="CAdmin.html" class="el_class">CAdmin</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="120" height="10" title="1.080" alt="1.080"/></td><td class="ctr2" id="c0">0%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="120" height="10" title="166" alt="166"/></td><td class="ctr2" id="e0">0%</td><td class="ctr1" id="f0">129</td><td class="ctr2" id="g0">129</td><td class="ctr1" id="h0">271</td><td class="ctr2" id="i0">271</td><td class="ctr1" id="j0">46</td><td class="ctr2" id="k0">46</td><td class="ctr1" id="l0">1</td><td class="ctr2" id="m0">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica.InterfacesYControladores/index.source.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica.InterfacesYControladores/index.source.html
new file mode 100644
index 0000000000000000000000000000000000000000..d181ef3838d58eb0447680df98ae360b81ca3f67
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica.InterfacesYControladores/index.source.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Logica.InterfacesYControladores</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.html" class="el_class">Classes</a><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <span class="el_package">Logica.InterfacesYControladores</span></div><h1>Logica.InterfacesYControladores</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">1.080 of 1.080</td><td class="ctr2">0%</td><td class="bar">166 of 166</td><td class="ctr2">0%</td><td class="ctr1">129</td><td class="ctr2">129</td><td class="ctr1">271</td><td class="ctr2">271</td><td class="ctr1">46</td><td class="ctr2">46</td><td class="ctr1">1</td><td class="ctr2">1</td></tr></tfoot><tbody><tr><td id="a0"><a href="CAdmin.java.html" class="el_source">CAdmin.java</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="120" height="10" title="1.080" alt="1.080"/></td><td class="ctr2" id="c0">0%</td><td class="bar" id="d0"><img src="../.resources/redbar.gif" width="120" height="10" title="166" alt="166"/></td><td class="ctr2" id="e0">0%</td><td class="ctr1" id="f0">129</td><td class="ctr2" id="g0">129</td><td class="ctr1" id="h0">271</td><td class="ctr2" id="i0">271</td><td class="ctr1" id="j0">46</td><td class="ctr2" id="k0">46</td><td class="ctr1" id="l0">1</td><td class="ctr2" id="m0">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica/index.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica/index.html
new file mode 100644
index 0000000000000000000000000000000000000000..d6ae1c7be1cc83b0025e29e3712a1253d0c87213
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica/index.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Logica</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.source.html" class="el_source">Source Files</a><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <span class="el_package">Logica</span></div><h1>Logica</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">38 of 38</td><td class="ctr2">0%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">2</td><td class="ctr2">2</td><td class="ctr1">5</td><td class="ctr2">5</td><td class="ctr1">2</td><td class="ctr2">2</td><td class="ctr1">1</td><td class="ctr2">1</td></tr></tfoot><tbody><tr><td id="a0"><a href="main.html" class="el_class">main</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="120" height="10" title="38" alt="38"/></td><td class="ctr2" id="c0">0%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">2</td><td class="ctr2" id="g0">2</td><td class="ctr1" id="h0">5</td><td class="ctr2" id="i0">5</td><td class="ctr1" id="j0">2</td><td class="ctr2" id="k0">2</td><td class="ctr1" id="l0">1</td><td class="ctr2" id="m0">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica/index.source.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica/index.source.html
new file mode 100644
index 0000000000000000000000000000000000000000..dffa29c54e2622c67c16b9f5b200aaf11dbdccf4
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica/index.source.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>Logica</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.html" class="el_class">Classes</a><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <span class="el_package">Logica</span></div><h1>Logica</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">38 of 38</td><td class="ctr2">0%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">2</td><td class="ctr2">2</td><td class="ctr1">5</td><td class="ctr2">5</td><td class="ctr1">2</td><td class="ctr2">2</td><td class="ctr1">1</td><td class="ctr2">1</td></tr></tfoot><tbody><tr><td id="a0"><a href="main.java.html" class="el_source">main.java</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="120" height="10" title="38" alt="38"/></td><td class="ctr2" id="c0">0%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">2</td><td class="ctr2" id="g0">2</td><td class="ctr1" id="h0">5</td><td class="ctr2" id="i0">5</td><td class="ctr1" id="j0">2</td><td class="ctr2" id="k0">2</td><td class="ctr1" id="l0">1</td><td class="ctr2" id="m0">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica/main.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica/main.html
new file mode 100644
index 0000000000000000000000000000000000000000..77406e17981d5df8cafe1e22b959eb6ed3886376
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica/main.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>main</title><script type="text/javascript" src="../.resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.html" class="el_package">Logica</a> &gt; <span class="el_class">main</span></div><h1>main</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">38 of 38</td><td class="ctr2">0%</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">2</td><td class="ctr2">2</td><td class="ctr1">5</td><td class="ctr2">5</td><td class="ctr1">2</td><td class="ctr2">2</td></tr></tfoot><tbody><tr><td id="a1"><a href="main.java.html#L11" class="el_method">main(String[])</a></td><td class="bar" id="b0"><img src="../.resources/redbar.gif" width="120" height="10" title="35" alt="35"/></td><td class="ctr2" id="c0">0%</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h0">4</td><td class="ctr2" id="i0">4</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a0"><a href="main.java.html#L8" class="el_method">main()</a></td><td class="bar" id="b1"><img src="../.resources/redbar.gif" width="10" height="10" title="3" alt="3"/></td><td class="ctr2" id="c1">0%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/Logica/main.java.html b/UyTube_aplicacion/.jacocoverage/report.html/Logica/main.java.html
new file mode 100644
index 0000000000000000000000000000000000000000..af351e7300b7330de7405f9d31f1f1bbb8417d10
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/Logica/main.java.html
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../.resources/report.css" type="text/css"/><link rel="shortcut icon" href="../.resources/report.gif" type="image/gif"/><title>main.java</title><link rel="stylesheet" href="../.resources/prettify.css" type="text/css"/><script type="text/javascript" src="../.resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../.sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</a> &gt; <a href="index.source.html" class="el_package">Logica</a> &gt; <span class="el_source">main.java</span></div><h1>main.java</h1><pre class="source lang-java linenums">package Logica;
+
+import Logica.Enumerados.*;
+import Logica.Clases.*;
+import Logica.DataType.*;
+import java.sql.Date;
+
+<span class="nc" id="L8">public class main {</span>
+
+    public static void main(String[] args) {
+<span class="nc" id="L11">        Usuario user = new Usuario(&quot;MCbolso&quot;, &quot;mcbolso@gmail.com&quot;, new Date(190,7,4), &quot;imagen.jpg&quot;, &quot;dsfsdf&quot;, &quot;mariano&quot;, &quot;Castro&quot;, new DtCanal(0, &quot;mi_canal&quot;, &quot;un_canal_mas&quot;, Privacidad.PRIVADO));</span>
+<span class="nc" id="L12">        Valoracion valo = new Valoracion(TipoValoracion.LIKE, user);</span>
+
+<span class="nc" id="L14">        System.out.println(valo.getDT(null));</span>
+
+<span class="nc" id="L16">    }</span>
+}
+</pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/.jacocoverage/report.html/index.html b/UyTube_aplicacion/.jacocoverage/report.html/index.html
new file mode 100644
index 0000000000000000000000000000000000000000..311cf1e333de5cfbd0b27fb1fbe17ea9eba12df2
--- /dev/null
+++ b/UyTube_aplicacion/.jacocoverage/report.html/index.html
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="es"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href=".resources/report.css" type="text/css"/><link rel="shortcut icon" href=".resources/report.gif" type="image/gif"/><title>JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</title><script type="text/javascript" src=".resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href=".sessions.html" class="el_session">Sessions</a></span><span class="el_report">JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</span></div><h1>JaCoCoverage analysis of project &quot;UyTube&quot; (powered by JaCoCo from EclEmma)</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">3.693 of 4.495</td><td class="ctr2">18%</td><td class="bar">426 of 466</td><td class="ctr2">9%</td><td class="ctr1">434</td><td class="ctr2">507</td><td class="ctr1">825</td><td class="ctr2">998</td><td class="ctr1">216</td><td class="ctr2">274</td><td class="ctr1">9</td><td class="ctr2">22</td></tr></tfoot><tbody><tr><td id="a1"><a href="Logica.Clases/index.html" class="el_package">Logica.Clases</a></td><td class="bar" id="b0"><img src=".resources/redbar.gif" width="98" height="10" title="2.283" alt="2.283"/><img src=".resources/greenbar.gif" width="21" height="10" title="486" alt="486"/></td><td class="ctr2" id="c2">18%</td><td class="bar" id="d0"><img src=".resources/redbar.gif" width="104" height="10" title="260" alt="260"/><img src=".resources/greenbar.gif" width="16" height="10" title="40" alt="40"/></td><td class="ctr2" id="e0">13%</td><td class="ctr1" id="f0">262</td><td class="ctr2" id="g0">306</td><td class="ctr1" id="h0">496</td><td class="ctr2" id="i0">615</td><td class="ctr1" id="j0">127</td><td class="ctr2" id="k0">156</td><td class="ctr1" id="l1">3</td><td class="ctr2" id="m0">9</td></tr><tr><td id="a4"><a href="Logica.InterfacesYControladores/index.html" class="el_package">Logica.InterfacesYControladores</a></td><td class="bar" id="b1"><img src=".resources/redbar.gif" width="46" height="10" title="1.080" alt="1.080"/></td><td class="ctr2" id="c3">0%</td><td class="bar" id="d1"><img src=".resources/redbar.gif" width="66" height="10" title="166" alt="166"/></td><td class="ctr2" id="e1">0%</td><td class="ctr1" id="f1">129</td><td class="ctr2" id="g1">129</td><td class="ctr1" id="h1">271</td><td class="ctr2" id="i1">271</td><td class="ctr1" id="j1">46</td><td class="ctr2" id="k2">46</td><td class="ctr1" id="l2">1</td><td class="ctr2" id="m3">1</td></tr><tr><td id="a2"><a href="Logica.DataType/index.html" class="el_package">Logica.DataType</a></td><td class="bar" id="b2"><img src=".resources/redbar.gif" width="11" height="10" title="265" alt="265"/><img src=".resources/greenbar.gif" width="9" height="10" title="229" alt="229"/></td><td class="ctr2" id="c1">46%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">35</td><td class="ctr2" id="g2">58</td><td class="ctr1" id="h2">53</td><td class="ctr2" id="i2">101</td><td class="ctr1" id="j2">35</td><td class="ctr2" id="k1">58</td><td class="ctr1" id="l0">4</td><td class="ctr2" id="m1">8</td></tr><tr><td id="a0"><a href="Logica/index.html" class="el_package">Logica</a></td><td class="bar" id="b3"><img src=".resources/redbar.gif" width="1" height="10" title="38" alt="38"/></td><td class="ctr2" id="c4">0%</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f4">2</td><td class="ctr2" id="g4">2</td><td class="ctr1" id="h3">5</td><td class="ctr2" id="i4">5</td><td class="ctr1" id="j4">2</td><td class="ctr2" id="k4">2</td><td class="ctr1" id="l3">1</td><td class="ctr2" id="m4">1</td></tr><tr><td id="a3"><a href="Logica.Enumerados/index.html" class="el_package">Logica.Enumerados</a></td><td class="bar" id="b4"><img src=".resources/redbar.gif" width="1" height="10" title="27" alt="27"/><img src=".resources/greenbar.gif" width="3" height="10" title="87" alt="87"/></td><td class="ctr2" id="c0">76%</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f3">6</td><td class="ctr2" id="g3">12</td><td class="ctr1" id="h4">0</td><td class="ctr2" id="i3">6</td><td class="ctr1" id="j3">6</td><td class="ctr2" id="k3">12</td><td class="ctr1" id="l4">0</td><td class="ctr2" id="m2">3</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.6.201602180812</span></div></body></html>
\ No newline at end of file
diff --git a/UyTube_aplicacion/nbproject/project.properties b/UyTube_aplicacion/nbproject/project.properties
index 35d2b3d4c36ab620ee62c8585881653e21df90a3..78ba192a5e2d699e90a36dab35ea77a91720a7d8 100644
--- a/UyTube_aplicacion/nbproject/project.properties
+++ b/UyTube_aplicacion/nbproject/project.properties
@@ -42,7 +42,9 @@ javac.source=1.7
 javac.target=1.7
 javac.test.classpath=\
     ${javac.classpath}:\
-    ${build.classes.dir}
+    ${build.classes.dir}:\
+    ${libs.junit_4.classpath}:\
+    ${libs.hamcrest.classpath}
 javac.test.processorpath=\
     ${javac.test.classpath}
 javadoc.additionalparam=
diff --git a/UyTube_aplicacion/src/Logica/Clases/Comentario.java b/UyTube_aplicacion/src/Logica/Clases/Comentario.java
index b9bbf4baf7a8c89c8198ca35b586ba6152f0553d..93d9a78028f951cf8a3069338ccd39524a225ea4 100644
--- a/UyTube_aplicacion/src/Logica/Clases/Comentario.java
+++ b/UyTube_aplicacion/src/Logica/Clases/Comentario.java
@@ -15,11 +15,6 @@ public class Comentario {
     private Usuario usr;
     private ArrayList<Comentario> misComentario;
 
-    public Comentario() {
-        this.id = Comentario.getNuevoID();
-        this.misComentario = new ArrayList();
-    }
-
     public Comentario(int id, Date fecha, String texto, int nivelSubComentario, Usuario usr) {
         if(usr==null){
             throw new RuntimeException("Usuario No puede ser null");
@@ -43,37 +38,16 @@ public class Comentario {
         return id;
     }
 
-    public void setId(int id) {
-        this.id = id;
-    }
-
     public Date getFecha() {
         return fecha;
     }
-
-    public void setFecha(Date fecha) {
-        if(fecha==null){
-            throw new RuntimeException("Fecha No puede ser null");
-        }
-        this.fecha = fecha;
-    }
-
     public String getTexto() {
         return texto;
     }
-
-    public void setTexto(String texto) {
-        this.texto = texto;
-    }
-
     public int getNivelSubComentario() {
         return nivelSubComentario;
     }
 
-    public void setNivelSubComentario(int nivelSubComentario) {
-        this.nivelSubComentario = nivelSubComentario;
-    }
-
     public Usuario getUsr() {
         return usr;
     }
diff --git a/UyTube_aplicacion/src/Logica/Clases/Valoracion.java b/UyTube_aplicacion/src/Logica/Clases/Valoracion.java
index 8794572b157a7c6dff4898b626ed5eb867d133bc..626f96c8b7e8251d3d8e2d97b1aacb80c3d2d5ee 100644
--- a/UyTube_aplicacion/src/Logica/Clases/Valoracion.java
+++ b/UyTube_aplicacion/src/Logica/Clases/Valoracion.java
@@ -6,10 +6,7 @@ import Logica.Enumerados.TipoValoracion;
 public class Valoracion {
     private TipoValoracion val;
     private Usuario usr;
-
-    public Valoracion() {
-    }
-    
+ 
     public Valoracion(TipoValoracion val, Usuario usr) {
         if(usr==null){
             throw new RuntimeException("Usuario No puede ser null");
diff --git a/UyTube_aplicacion/src/Logica/DataType/DtVideo.java b/UyTube_aplicacion/src/Logica/DataType/DtVideo.java
index af2f13bc9f789d4ca93fc7d41d130c70d5ef5e2a..5b2125ba01953d8ff87c6c719e4e21671d7af971 100644
--- a/UyTube_aplicacion/src/Logica/DataType/DtVideo.java
+++ b/UyTube_aplicacion/src/Logica/DataType/DtVideo.java
@@ -16,9 +16,6 @@ public class DtVideo {
     private int cantLikes;
     private int cantDisLikes;
 
-    public DtVideo() {
-    }
-
     public DtVideo(int id, String nombre, String descripcion, Time duracion, Date fechaPublicacion, String urlVideoOriginal, Privacidad privacidad, String categoria, int cantLikes, int cantDisLikes) {
         this.id = id;
         this.nombre = nombre;
diff --git a/UyTube_aplicacion/src/Logica/main.java b/UyTube_aplicacion/src/Logica/main.java
index 420a677323c8ee75db2f0c3581e640fd180b432c..65ec004c331a0998b250a96d6f330f1f7b422398 100644
--- a/UyTube_aplicacion/src/Logica/main.java
+++ b/UyTube_aplicacion/src/Logica/main.java
@@ -1,13 +1,13 @@
 package Logica;
 
+import Logica.Enumerados.*;
+import Logica.Clases.*;
+import Logica.DataType.*;
+import java.sql.Date;
+
 public class main {
 
     public static void main(String[] args) {
-        try {
-
-        } catch (Exception e) {
-            System.out.println("-->>" + e);
-        }
 
     }
 }
diff --git a/UyTube_aplicacion/test/Logica/Clases/ComentarioTest.java b/UyTube_aplicacion/test/Logica/Clases/ComentarioTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..ef9656856b4056fcb27f9834f1c2b6a8491b80cd
--- /dev/null
+++ b/UyTube_aplicacion/test/Logica/Clases/ComentarioTest.java
@@ -0,0 +1,244 @@
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package Logica.Clases;
+
+import Logica.DataType.DtCanal;
+import Logica.DataType.DtComentario;
+import Logica.Enumerados.Privacidad;
+import java.sql.Date;
+import java.util.ArrayList;
+import org.junit.After;
+import org.junit.AfterClass;
+import org.junit.Before;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+/**
+ *
+ * @author Carlos BM
+ */
+public class ComentarioTest {
+    
+    Usuario user;
+    Comentario com;
+    Date fecha;
+    public ComentarioTest() {
+        fecha = new Date(190,7,4);
+        user = new Usuario("MCbolso", "mcbolso@gmail.com",fecha, "imagen.jpg", "dsfsdf", "mariano", "Castro", new DtCanal(0, "mi_canal", "un_canal_mas", Privacidad.PRIVADO));
+        com = new Comentario(0, fecha, "una cagada", 0, user);
+    }
+    
+    @BeforeClass
+    public static void setUpClass() {
+    }
+    
+    @AfterClass
+    public static void tearDownClass() {
+    }
+    
+    @Before
+    public void setUp() {
+    }
+    
+    @After
+    public void tearDown() {
+    }
+
+    /**
+     * Test of getNuevoID method, of class Comentario.
+     */
+    @Test
+    public void testGetNuevoID() {
+        System.out.println("getNuevoID");
+        Comentario instance = com;
+        int expResult = 1;
+        int result = instance.getNuevoID();
+        assertEquals(expResult, result);
+    }
+
+    /**
+     * Test of getId method, of class Comentario.
+     */
+    @Test
+    public void testGetId() {
+        System.out.println("getId");
+        Comentario instance = com;
+        int expResult = 0;
+        int result = instance.getId();
+        assertEquals(expResult, result);
+    }
+
+    /**
+     * Test of getFecha method, of class Comentario.
+     */
+    @Test
+    public void testGetFecha() {
+        System.out.println("getFecha");
+        Comentario instance = com;
+        Date expResult = fecha;
+        Date result = instance.getFecha();
+        assertEquals(expResult, result);
+    }
+
+    /**
+     * Test of getTexto method, of class Comentario.
+     */
+    @Test
+    public void testGetTexto() {
+        System.out.println("getTexto");
+        Comentario instance = com;
+        String expResult = "una cagada";
+        String result = instance.getTexto();
+        assertEquals(expResult, result);
+    }
+
+    /**
+     * Test of getNivelSubComentario method, of class Comentario.
+     */
+    @Test
+    public void testGetNivelSubComentario() {
+        System.out.println("getNivelSubComentario");
+        Comentario instance = com;
+        int expResult = 0;
+        int result = instance.getNivelSubComentario();
+        assertEquals(expResult, result);
+    }
+
+    /**
+     * Test of getUsr method, of class Comentario.
+     */
+    @Test
+    public void testGetUsr() {
+        System.out.println("getUsr");
+        Comentario instance = com;
+        Usuario expResult = user;
+        Usuario result = instance.getUsr();
+        assertEquals(expResult, result);
+    }
+
+    /**
+     * Test of toString method, of class Comentario.
+     */
+    @Test
+    public void testToString() {
+        System.out.println("toString");
+        Comentario instance = com;
+        String expResult = "Comentario{id=0, fecha=2090-08-04, texto=una cagada, nivelSubComentario=0}";
+        String result = instance.toString();
+        assertEquals(expResult, result);
+    }
+    
+    @Test
+    public void testComentario_basuraFecha() {
+        System.out.println("comentario");
+        try {
+            Comentario comy = new Comentario(0, null, "una cagada", 0, user);
+        } catch (Exception e) {
+            assertEquals(true, true);
+        }
+    }
+    
+    @Test
+    public void testComentario_basura_usuario() {
+        System.out.println("comentario");
+        try {
+            Comentario comy = new Comentario(5, fecha, "una cagada", 0, null);
+        } catch (Exception e) {
+            assertEquals(true, true);
+        }
+    }
+
+    /**
+     * Test of agregarSubComentario method, of class Comentario.
+     */
+    @Test
+    public void testAgregarSubComentario() {
+        System.out.println("agregarSubComentario");
+        int idComPadre = 0;
+        DtComentario dtC = new DtComentario(1, "otroNickname", fecha, "otra cagada", 1);
+        Usuario usr = user;
+        Comentario instance = com;
+        boolean expResult = true;
+        boolean result = instance.agregarSubComentario(idComPadre, dtC, usr);
+        assertEquals(expResult, result);
+    }
+    
+    @Test
+    public void testAgregarSubComentarioNoagrega() {
+        System.out.println("agregarSubComentario");
+        com.agregarSubComentario(1, new DtComentario(1, "otroNickname", fecha, "otra cagada", 1), user);
+        int idComPadre = 1;
+        DtComentario dtC = new DtComentario(2, "otroNickname", fecha, "otra cagada", 1);
+        Usuario usr = user;
+        Comentario instance = com;
+        boolean expResult = false;
+        boolean result = instance.agregarSubComentario(idComPadre, dtC, usr);
+        assertEquals(expResult, result);
+    }
+    
+    @Test
+    public void testAgregarSubComentarioNoagrega_basura_1() {
+        System.out.println("agregarSubComentario");
+        int idComPadre = 1;
+        Usuario usr = user;
+        Comentario instance = com;
+        boolean expResult = false;
+        boolean result =false;
+        try{
+            result = instance.agregarSubComentario(idComPadre, null, usr);
+        }catch(Exception e){
+            assertEquals(true, true);
+        }
+    }
+    
+    @Test
+    public void testAgregarSubComentarioNoagrega_basura_2() {
+        System.out.println("agregarSubComentario");
+        int idComPadre = 1;
+        DtComentario dtC = new DtComentario(2, "otroNickname", fecha, "otra cagada", 1);
+        Comentario instance = com;
+        boolean expResult = false;
+        boolean result = false;
+        try{
+            result = instance.agregarSubComentario(idComPadre, dtC, null);
+        }catch(Exception e){
+            assertEquals(true, true);
+        }
+    }
+
+    /**
+     * Test of getDT method, of class Comentario.
+     */
+    @Test
+    public void testGetDT() {
+        System.out.println("getDT");
+        Comentario instance = com;
+        DtComentario expResult = new DtComentario(0, "MCbolso", fecha, "una cagada", 0);
+        DtComentario result = instance.getDT();
+        assertEquals(expResult.toString(), result.toString());
+    }
+
+    /**
+     * Test of listarSubComentarios method, of class Comentario.
+     */
+    @Test
+    public void testListarSubComentarios() {
+        System.out.println("listarSubComentarios");
+        Comentario instance = com;
+        com.agregarSubComentario(0, new DtComentario(1, "otroNickname", fecha, "otra cagada", 1), user);
+        com.agregarSubComentario(0, new DtComentario(1, "otroNickname2", fecha, "otra cagada", 1), user);
+        com.agregarSubComentario(0, new DtComentario(1, "otroNickname3", fecha, "otra cagada", 1), user);
+        com.agregarSubComentario(2, new DtComentario(1, "otroNickname4", fecha, "otra cagada", 1), user);
+        com.agregarSubComentario(4, new DtComentario(1, "otroNickname5", fecha, "otra cagada", 1), user);
+        com.agregarSubComentario(3, new DtComentario(1, "otroNickname6", fecha, "otra cagada", 1), user);
+        
+        ArrayList<DtComentario> expResult = new ArrayList();
+        ArrayList<DtComentario> result = instance.listarSubComentarios();
+        assertEquals(6, result.size());
+    }
+    
+}
diff --git a/UyTube_aplicacion/test/Logica/Clases/ValoracionTest.java b/UyTube_aplicacion/test/Logica/Clases/ValoracionTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..4081c75bf81db76cafe251782eddf27cd92b5805
--- /dev/null
+++ b/UyTube_aplicacion/test/Logica/Clases/ValoracionTest.java
@@ -0,0 +1,221 @@
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package Logica.Clases;
+
+import Logica.DataType.DtValoracion;
+import Logica.Enumerados.TipoValoracion;
+import org.junit.After;
+import org.junit.AfterClass;
+import org.junit.Before;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+import Logica.Clases.Usuario;
+import Logica.DataType.DtCanal;
+import Logica.Enumerados.Privacidad;
+import java.sql.Date;
+
+/**
+ *
+ * @author Carlos BM
+ */
+public class ValoracionTest {
+    
+    Usuario user;
+    Valoracion valo;
+    
+    public ValoracionTest() {
+        user = new Usuario("MCbolso", "mcbolso@gmail.com", new Date(190,7,4), "imagen.jpg", "dsfsdf", "mariano", "Castro", new DtCanal(0, "mi_canal", "un_canal_mas", Privacidad.PRIVADO));
+        valo = new Valoracion(TipoValoracion.LIKE, user);
+    }
+    
+    @BeforeClass
+    public static void setUpClass() {
+    }
+    
+    @AfterClass
+    public static void tearDownClass() {
+    }
+    
+    @Before
+    public void setUp() {
+    }
+    
+    @After
+    public void tearDown() {
+    }
+
+    /**
+     * Test of getVal method, of class Valoracion.
+     */
+    @Test
+    public void testValoracion() {
+        System.out.println("getVal");
+        Valoracion instance;
+        try{
+            instance = new Valoracion(TipoValoracion.LIKE, null);
+        }catch(Exception e){
+            assertEquals(true, true);
+        }
+        // TODO review the generated test code and remove the default call to fail.
+        //fail("The test case is a prototype.");
+    }
+    
+    @Test
+    public void testGetVal() {
+        System.out.println("getVal");
+        Valoracion instance = valo;
+        TipoValoracion expResult = TipoValoracion.LIKE;
+        TipoValoracion result = instance.getVal();
+        assertEquals(expResult, result);
+        // TODO review the generated test code and remove the default call to fail.
+        //fail("The test case is a prototype.");
+    }
+
+    /**
+     * Test of setVal method, of class Valoracion.
+     */
+    @Test
+    public void testSetVal() {
+        System.out.println("setVal");
+        TipoValoracion val = null;
+        Valoracion instance = valo;
+        instance.setVal(val);
+        // TODO review the generated test code and remove the default call to fail.
+        //fail("The test case is a prototype.");
+    }
+
+    /**
+     * Test of getNicknameDeUsuario method, of class Valoracion.
+     */
+    @Test
+    public void testGetNicknameDeUsuario() {
+        System.out.println("getNicknameDeUsuario");
+        Valoracion instance = valo;
+        String expResult = "MCbolso";
+        String result = instance.getNicknameDeUsuario();
+        assertEquals(expResult, result);
+        // TODO review the generated test code and remove the default call to fail.
+        //fail("The test case is a prototype.");
+    }
+
+    /**
+     * Test of getDT method, of class Valoracion.
+     */
+    @Test
+    public void testGetDT_0args() {
+        System.out.println("getDT");
+        Valoracion instance = valo;
+        DtValoracion expResult = new DtValoracion(TipoValoracion.LIKE, "MCbolso");
+        DtValoracion result = instance.getDT();
+        assertEquals(expResult.toString(), result.toString());
+        // TODO review the generated test code and remove the default call to fail.
+        //fail("The test case is a prototype.");
+    }
+
+    /**
+     * Test of getDT method, of class Valoracion.
+     */
+    @Test
+    public void testGetDT_String() {
+        
+        System.out.println("getDT");
+        String nickname = "MCbolso";
+        Valoracion instance = valo;
+        DtValoracion expResult = new DtValoracion(TipoValoracion.LIKE, "MCbolso");
+        DtValoracion result = instance.getDT(nickname);
+        assertEquals(expResult.toString(), result.toString());
+    }
+    
+    @Test
+    public void testGetDT_String_mal() {
+        
+        System.out.println("getDT");
+        Valoracion instance = valo;
+        //DtValoracion result = instance.getDT("Lucas");
+        assertNull(instance.getDT("Lucas"));
+    }
+    
+    @Test
+    public void testGetDT_String_null_basura() {         
+        System.out.println("getDT");
+        String nickname = null;
+        Valoracion instance = valo;
+        try {
+            instance.getDT(nickname);
+        } catch (Exception e) {
+            assertEquals(true, true);
+        }
+
+    } 
+    
+    /**
+     * Test of modificar method, of class Valoracion.
+     */
+    @Test
+    public void testModificar() {
+        System.out.println("modificar");
+        DtValoracion dtV = new DtValoracion(TipoValoracion.DISLIKE, "MCbolso");
+        String nickname = "MCbolso";
+        Valoracion instance = valo;
+        boolean expResult = true;
+        boolean result = instance.modificar(dtV, nickname);
+        assertEquals(expResult, result);
+        // TODO review the generated test code and remove the default call to fail.
+        //fail("The test case is a prototype.");
+    }
+    
+    @Test
+    public void testModificar_false() {
+        System.out.println("modificar");
+        DtValoracion dtV = new DtValoracion(TipoValoracion.DISLIKE, "MCbolso");
+        String nickname = "Lucas";
+        Valoracion instance = valo;
+        boolean expResult = false;
+        boolean result = instance.modificar(dtV, nickname);
+        assertEquals(expResult, result);
+        // TODO review the generated test code and remove the default call to fail.
+        //fail("The test case is a prototype.");
+    }
+    
+    @Test
+    public void testModificar_null_1() {
+        System.out.println("modificar");
+        DtValoracion dtV = new DtValoracion(TipoValoracion.DISLIKE, "MCbolso");
+        String nickname = null;
+        Valoracion instance = valo;
+        boolean expResult = false;
+        boolean result = false;
+        
+        try{
+            result = instance.modificar(dtV, nickname);
+        }catch(Exception e){
+            assertEquals(expResult, result);
+        }
+        // TODO review the generated test code and remove the default call to fail.
+        //fail("The test case is a prototype.");
+    }
+    
+    @Test
+    public void testModificar_null_2() {
+        System.out.println("modificar");
+        DtValoracion dtV = null;
+        String nickname = "MCbolso";
+        Valoracion instance = valo;
+        boolean expResult = false;
+        boolean result = false;
+        
+        try{
+            result = instance.modificar(dtV, nickname);
+        }catch(Exception e){
+            assertEquals(expResult, result);
+        }
+        // TODO review the generated test code and remove the default call to fail.
+        //fail("The test case is a prototype.");
+    }
+    
+}
diff --git a/UyTube_aplicacion/test/Logica/DataType/DtVideoTest.java b/UyTube_aplicacion/test/Logica/DataType/DtVideoTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..6b6c855899b23b866bccd2795c7d184716dfe53a
--- /dev/null
+++ b/UyTube_aplicacion/test/Logica/DataType/DtVideoTest.java
@@ -0,0 +1,139 @@
+package Logica.DataType;
+
+import Logica.Enumerados.Privacidad;
+import java.sql.Date;
+import java.sql.Time;
+import org.junit.After;
+import org.junit.AfterClass;
+import org.junit.Before;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+/**
+ *
+ * @author Carlos BM
+ */
+public class DtVideoTest {
+    
+    DtVideo dtv;
+    public DtVideoTest() {
+        dtv = new DtVideo(2, "video1", "un_video", new Time(1,1,1), new Date(190,1,2), "https://sdsd.com", Privacidad.PRIVADO, "futbol", 0, 0);
+    }
+    
+    @BeforeClass
+    public static void setUpClass() {
+    }
+    
+    @AfterClass
+    public static void tearDownClass() {
+    }
+    
+    @Before
+    public void setUp() {
+    }
+    
+    @After
+    public void tearDown() {
+    }
+
+    @Test
+    public void testGetId() {
+        System.out.println("getId");
+        DtVideo instance = dtv;
+        int expResult = 2;
+        int result = instance.getId();
+        assertEquals(expResult, result);
+    }
+
+    @Test
+    public void testGetNombre() {
+        System.out.println("getNombre");
+        DtVideo instance = dtv;
+        String expResult = "video1";
+        String result = instance.getNombre();
+        assertEquals(expResult, result);
+    }
+
+    @Test
+    public void testGetDescripcion() {
+        System.out.println("getDescripcion");
+        DtVideo instance = dtv;
+        String expResult = "un_video";
+        String result = instance.getDescripcion();
+        assertEquals(expResult, result);
+    }
+
+    @Test
+    public void testGetDuracion() {
+        System.out.println("getDuracion");
+        DtVideo instance = dtv;
+        Time expResult = new Time(1,1,1);
+        Time result = instance.getDuracion();
+        assertEquals(expResult, result);
+    }
+
+    @Test
+    public void testGetFechaPublicacion() {
+        System.out.println("getFechaPublicacion");
+        DtVideo instance = dtv;
+        Date expResult = new Date(190,1,2);
+        Date result = instance.getFechaPublicacion();
+        assertEquals(expResult, result);
+    }
+
+    @Test
+    public void testGetUrlVideoOriginal() {
+        System.out.println("getUrlVideoOriginal");
+        DtVideo instance = dtv;
+        String expResult = "https://sdsd.com";
+        String result = instance.getUrlVideoOriginal();
+        assertEquals(expResult, result);
+    }
+
+    @Test
+    public void testGetPrivacidad() {
+        System.out.println("getPrivacidad");
+        DtVideo instance = dtv;
+        Privacidad expResult = Privacidad.PRIVADO;
+        Privacidad result = instance.getPrivacidad();
+        assertEquals(expResult, result);
+    }
+
+    @Test
+    public void testGetCategoria() {
+        System.out.println("getCategoria");
+        DtVideo instance = dtv;
+        String expResult = "futbol";
+        String result = instance.getCategoria();
+        assertEquals(expResult, result);
+    }
+
+    @Test
+    public void testGetCantLikes() {
+        System.out.println("getCantLikes");
+        DtVideo instance = dtv;
+        int expResult = 0;
+        int result = instance.getCantLikes();
+        assertEquals(expResult, result);
+    }
+
+    @Test
+    public void testGetCantDisLikes() {
+        System.out.println("getCantDisLikes");
+        DtVideo instance = dtv;
+        int expResult = 0;
+        int result = instance.getCantDisLikes();
+        assertEquals(expResult, result);
+    }
+
+    @Test
+    public void testToString() {
+        System.out.println("toString");
+        DtVideo instance = dtv;
+        String expResult = "DtVideo{id=2, nombre=video1, descripcion=un_video, duracion=01:01:01, fechaPublicacion=2090-02-02, urlVideoOriginal=https://sdsd.com, privacidad=PRIVADO, categoria=futbol, cantLikes=0, cantDisLikes=0}";
+        String result = instance.toString();
+        assertEquals(expResult, result);
+    }
+    
+}