void TestArchivoDeBuckets::mostrarBucket(ArchivoDeBuckets* archivo,int numeroDeBucket) {
    Bucket* bucketNuevo = archivo->obtenerBucket(numeroDeBucket);

    string* serializacion = bucketNuevo->serializar();
    cout << "bucketSerializado "<< serializacion->size() << endl;
    delete serializacion;

    int cantRegistros = bucketNuevo->getCantidadDeRegistros();

    list<Registro*>::iterator it = bucketNuevo->ubicarPrimero();
    for(int i =0; i < cantRegistros; i++) {
        Registro* registro = *it;
        Distrito* d = (Distrito*)registro->getContenido();
        cout << d->getDistrito() << endl;
        delete d;
        it++;
    }
}
void TestArchivoDeBuckets::testAgotamiento() {
    char nombreDelArchivo[]= "Archivo.bin";
    remove(nombreDelArchivo);
    int numero = LONGITUD_BLOQUE_PRUEBA;
    int nb;
    int nb2;
    Distrito* d;
    ArchivoDeBuckets* archivo = new ArchivoDeBuckets(nombreDelArchivo,numero);

    for (int i = 0; i < 10000; i++) {
        if (i == 5000)
            d = new Distrito("B");
        else
            d = new Distrito("A");

        Registro* r = new Registro(d);
        Bucket* b = new Bucket(0,numero);
        b->agregarRegistro(r);

        if (i==5000)
            nb = archivo->guardarBucket(b);
        else
            nb2 = archivo->guardarBucket(b);

        cout << "Bloque (" << i << ") almacenado en posicion :" << nb2 << endl;

        delete b;
        delete r;
        delete d;
    }

    cout << nb << endl;

    Bucket* buc = archivo->obtenerBucket(nb);
    cout << "cant regs" << buc->getCantidadDeRegistros() << endl;
    list<Registro*>::iterator it = buc->ubicarPrimero();
    Registro* reg = *it;
    Distrito* dis = (Distrito*)reg->getContenido();
    cout << "distrito: " << dis->getDistrito() << endl;
    delete archivo;
}