public void RecuperarInstantaneaEnObjetoDatos() { // arrange Log log = new Log(); //FabricaHistorial fabrica = new FabricaHistorial(); IFabrica fabrica = new FabricaHistorial(log); IObjetoDatos od = fabrica.Crear(HelperTipo.ObtenerTipo()); // act bool valorBoolean = od.ObtenerBoolean(0); byte valorByte = od.ObtenerByte(1); char valorChar = od.ObtenerChar(2); DateTime valorDateTime = od.ObtenerDateTime(3); var valorDecimal = od.ObtenerDecimal(4); var valorDouble = od.ObtenerDouble(5); var valorFloat = od.ObtenerFloat(6); var valorInteger = od.ObtenerInteger(7); var valorLong = od.ObtenerLong(8); var valorSByte = od.ObtenerSByte(9); var valorShort = od.ObtenerShort(10); var valorString = od.ObtenerString(11); var valorUInteger = od.ObtenerUInteger(12); var valorULong = od.ObtenerULong(13); var valorUShort = od.ObtenerUShort(14); // establecer valores var instantanea1 = log.CrearInstantanea(); od.EstablecerBoolean("atributoBoolean", true); var instantanea2 = log.CrearInstantanea(); od.EstablecerByte("atributoByte", byte.MaxValue); var instantanea3 = log.CrearInstantanea(); od.EstablecerChar("atributoChar", char.MaxValue); var instantanea4 = log.CrearInstantanea(); od.EstablecerDateTime("atributoDateTime", DateTime.MaxValue); // recuperar log.Recuperar(instantanea3); // assert Assert.AreEqual(od.ObtenerBoolean(0), true, $"Se esperaba {valorBoolean}"); Assert.AreEqual(od.ObtenerByte(1), byte.MaxValue, $"Se esperaba {valorByte}"); Assert.AreEqual(od.ObtenerChar(2), valorChar, $"Se esperaba {valorChar}"); Assert.AreEqual(od.ObtenerDateTime(3), valorDateTime, $"Se esperaba {valorDateTime}"); // recuperar log.Recuperar(instantanea1); // assert Assert.AreEqual(od.ObtenerBoolean(0), valorBoolean, $"Se esperaba {valorBoolean}"); Assert.AreEqual(od.ObtenerByte(1), valorByte, $"Se esperaba {valorByte}"); Assert.AreEqual(od.ObtenerChar(2), valorChar, $"Se esperaba {valorChar}"); Assert.AreEqual(od.ObtenerDateTime(3), valorDateTime, $"Se esperaba {valorDateTime}"); }
public void DeshacerCambiosEnObjetoDatos() { // arrange Log controlador = new Log(); //FabricaHistorial fabrica = new FabricaHistorial(); IFabrica fabrica = new FabricaHistorial(controlador); IObjetoDatos od = fabrica.Crear(HelperTipo.ObtenerTipo()); // act bool valorBoolean = od.ObtenerBoolean(0); byte valorByte = od.ObtenerByte(1); char valorChar = od.ObtenerChar(2); DateTime valorDateTime = od.ObtenerDateTime(3); var valorDecimal = od.ObtenerDecimal(4); var valorDouble = od.ObtenerDouble(5); var valorFloat = od.ObtenerFloat(6); var valorInteger = od.ObtenerInteger(7); var valorLong = od.ObtenerLong(8); var valorSByte = od.ObtenerSByte(9); var valorShort = od.ObtenerShort(10); var valorString = od.ObtenerString(11); var valorUInteger = od.ObtenerUInteger(12); var valorULong = od.ObtenerULong(13); var valorUShort = od.ObtenerUShort(14); // establecer valores //EstablecerValoresPorIndice(od); Helper.Construir(od); // deshacer cambios controlador.Deshacer(); //// establecer valores ////EstablecerValoresPorTipoPorIndice(od); //Helper.Construir(od); //// deshacer cambios //controlador.Deshacer(); // assert Assert.AreEqual(od.ObtenerBoolean(0), valorBoolean, $"Se esperaba {valorBoolean}"); Assert.AreEqual(od.ObtenerByte(1), valorByte, $"Se esperaba {valorByte}"); Assert.AreEqual(od.ObtenerChar(2), valorChar, $"Se esperaba {valorChar}"); Assert.AreEqual(od.ObtenerDateTime(3), valorDateTime, $"Se esperaba {valorDateTime}"); Assert.AreEqual(od.ObtenerDecimal(4), valorDecimal, $"Se esperaba {valorDecimal}"); Assert.AreEqual(od.ObtenerDouble(5), valorDouble, $"Se esperaba {valorDouble}"); Assert.AreEqual(od.ObtenerFloat(6), valorFloat, $"Se esperaba {valorFloat}"); Assert.AreEqual(od.ObtenerInteger(7), valorInteger, $"Se esperaba {valorInteger}"); Assert.AreEqual(od.ObtenerLong(8), valorInteger, $"Se esperaba {valorInteger}"); Assert.AreEqual(od.ObtenerSByte(9), valorSByte, $"Se esperaba {valorSByte}"); Assert.AreEqual(od.ObtenerShort(10), valorShort, $"Se esperaba {valorShort}"); Assert.AreEqual(od.ObtenerString(11), valorString, $"Se esperaba {valorString ?? ""}"); Assert.AreEqual(od.ObtenerUInteger(12), valorUInteger, $"Se esperaba {valorUInteger}"); Assert.AreEqual(od.ObtenerULong(13), valorULong, $"Se esperaba {valorULong}"); Assert.AreEqual(od.ObtenerUShort(14), valorUShort, $"Se esperaba {valorUShort}"); }
public void DeshacerCambiosEnObjetoDatosX() { // arrange Log controlador = new Log(); //FabricaHistorial fabrica = new FabricaHistorial(); IFabrica fabrica = new FabricaHistorial(controlador); IObjetoDatos od = fabrica.Crear(HelperTipo.ObtenerTipo2()); // act //ConstruirObjetoDatosComplejo(od, 2); //od.CrearObjetoDatos("ReferenciaObjetoDatos"); //od.CrearObjetoDatos("ReferenciaObjetoDatosItem"); Helper.Construir(od, 1); // deshacer controlador.Deshacer(); Assert.IsNull(od.ObtenerObjetoDatos("ReferenciaObjetoDatos"), "Se esperaba null"); Assert.AreEqual(od.ObtenerColeccion("ReferenciaObjetoDatosItem").Longitud, 0, "Se esperaba cero."); }
public void RecuperarInstantaneaEnObjetoDatosX() { // arrange Log log = new Log(); IFabrica fabrica = new FabricaHistorial(log); IObjetoDatos od = fabrica.Crear(HelperTipo.ObtenerTipo2()); // act var instantanea1 = log.CrearInstantanea(); od.CrearObjetoDatos("ReferenciaObjetoDatos"); var instantanea2 = log.CrearInstantanea(); od.CrearObjetoDatos("ReferenciaObjetoDatosItem"); var instantanea3 = log.CrearInstantanea(); od.CrearObjetoDatos("ReferenciaObjetoDatosItem"); var instantanea4 = log.CrearInstantanea(); od.CrearObjetoDatos("ReferenciaObjetoDatosItem[0]/ReferenciaObjetoDatos"); var instantanea5 = log.CrearInstantanea(); od.CrearObjetoDatos("ReferenciaObjetoDatosItem[1]/ReferenciaObjetoDatos"); var valorBoolean = od.Obtener("atributoBoolean"); var valorByte = od.Obtener("atributoByte"); var instantanea6 = log.CrearInstantanea(); od.EstablecerBoolean("ReferenciaObjetoDatosItem[1]/ReferenciaObjetoDatos/atributoBoolean", true); od.EstablecerByte("ReferenciaObjetoDatosItem[1]/ReferenciaObjetoDatos/atributoByte", byte.MaxValue); Assert.AreEqual(od.ObtenerBoolean("ReferenciaObjetoDatosItem[1]/ReferenciaObjetoDatos/atributoBoolean"), true); Assert.AreEqual(od.ObtenerByte("ReferenciaObjetoDatosItem[1]/ReferenciaObjetoDatos/atributoByte"), byte.MaxValue); // recuperar log.Recuperar(instantanea6); Assert.AreEqual(od.ObtenerBoolean("ReferenciaObjetoDatosItem[1]/ReferenciaObjetoDatos/atributoBoolean"), valorBoolean); Assert.AreEqual(od.ObtenerByte("ReferenciaObjetoDatosItem[1]/ReferenciaObjetoDatos/atributoByte"), valorByte); // recuperar log.Recuperar(instantanea5); Assert.IsNull(od.Obtener("ReferenciaObjetoDatosItem[1]/ReferenciaObjetoDatos")); // recuperar log.Recuperar(instantanea4); Assert.IsNull(od.Obtener("ReferenciaObjetoDatosItem[0]/ReferenciaObjetoDatos")); // recuperar log.Recuperar(instantanea3); Assert.AreEqual(od.ObtenerColeccion("ReferenciaObjetoDatosItem").Longitud, 1); // recuperar log.Recuperar(instantanea2); Assert.AreEqual(od.ObtenerColeccion("ReferenciaObjetoDatosItem").Longitud, 0); // recuperar log.Recuperar(instantanea1); Assert.IsNull(od.Obtener("ReferenciaObjetoDatos")); }