void test_DiccConNew(){ Vector< diccNat<Nat>::tupla > v; for(Nat i = 0;i < 10;i++){ diccNat<Nat>::tupla t; t.clave = i; t.significado = i+10; v.AgregarAtras(t); } diccNat<Nat> *d = new diccNat<Nat>(v); assert(d->definido(0)); assert(d->definido(1)); assert(d->definido(2)); assert(d->definido(3)); assert(d->definido(4)); assert(!d->definido(10)); assert(!d->definido(355)); Conj<Nat>::Iterador it = d->crearItClaves(); bool res = false; while(it.HaySiguiente() && it.Siguiente() != 3){ it.Avanzar(); } ASSERT_EQ(it.Siguiente(), 3); for(int j = 0;j<=4;j++){ it.Retroceder(); } int i = 0; while(it.HaySiguiente()){ i++; it.Avanzar(); } assert(i==9); delete d; }
// Métodos públicas. Campus::Campus(Nat columnas, Nat filas) { e_campus = Vector<Vector<bool> >(); for (int i = 0; i < columnas; ++i) { Vector<bool> vecFilas = Vector<bool>(); for (int j = 0; j < filas; ++j) { vecFilas.AgregarAtras(false); } e_campus.AgregarAtras(vecFilas); } }
void test_crearDic(){ Vector< diccNat<Nat>::tupla > v; for(Nat i = 0;i < 10;i++){ diccNat<Nat>::tupla t; t.clave = i; t.significado = i+10; v.AgregarAtras(t); } diccNat<Nat> d(v); }
void test_numeroClaves(){ Vector< diccNat<Nat>::tupla > v; for(Nat i = 0;i < 10;i++){ diccNat<Nat>::tupla t; t.clave = i; t.significado = i+10; v.AgregarAtras(t); } diccNat<Nat> d(v); ASSERT_EQ(d.cantClaves(), 10); }
void test_obtenerDefinidoYredefinir(){ Vector< diccNat<Nat>::tupla > v; for(Nat i = 0;i < 100;i++){ diccNat<Nat>::tupla t; t.clave = i+i; t.significado = i+10; v.AgregarAtras(t); } diccNat<Nat> d(v); if(d.definido(6)){ d.redefinir(6, 8); ASSERT_EQ((d.obtener(6)),8); } }
void test_iteradorClaves(){ Vector< diccNat<Nat>::tupla > v; for(Nat i = 0;i < 10;i++){ diccNat<Nat>::tupla t; t.clave = i; t.significado = i+10; v.AgregarAtras(t); } diccNat<Nat> d(v); Conj<Nat>::Iterador it = d.crearItClaves(); bool res = false; while(it.HaySiguiente() && it.Siguiente() != 3){ it.Avanzar(); } ASSERT_EQ(it.Siguiente(), 3); }
void test_itDiccNat(){ Vector< diccNat<Nat>::tupla > v; for(Nat i = 0;i < 10;i++){ diccNat<Nat>::tupla t; t.clave = i; t.significado = i+10; v.AgregarAtras(t); } diccNat<Nat> d(v); diccNat<Nat>::itDiccNat it = d.crearIt(); Nat k = 0; while(it.haySiguiente()){ ASSERT(it.siguiente().clave == k); ASSERT(it.siguiente().significado == k + 10); it.avanzar(); k++; } }
void test_IteradorAFondo(){ Vector< diccNat<Nat>::tupla > v; for(Nat i = 0;i < 6;i++){ diccNat<Nat>::tupla t; t.clave = i; t.significado = i*2; v.AgregarAtras(t); } diccNat<Nat> d(v); assert(d.definido(0)); assert(d.definido(1)); assert(d.definido(2)); assert(d.definido(3)); assert(d.definido(5)); assert(!d.definido(6)); assert(!d.definido(355)); diccNat<Nat>::itDiccNat it = d.crearIt(); assert(it.siguienteSignificado() == 0); assert(it.siguiente().clave == 0); assert(it.siguiente().significado == 0); while(it.haySiguiente() && it.siguiente().clave != 3){ it.avanzar(); } ASSERT_EQ(it.siguiente().clave, 3); assert(it.siguiente().significado == 6); assert(it.siguienteSignificado() == 6); for(int j = 0;j<=2;j++){ it.Retroceder(); } int i = 0; while(it.haySiguiente()){ i++; it.avanzar(); } assert(i==6); }