TEST( PilaCharTest, obtenerTopeNoModificaLaPila ) { Pila<char> pila; pila.apilar('X'); ASSERT_FALSE( pila.estaVacia() ); ASSERT_EQ( 'X', pila.obtenerTope() ); ASSERT_EQ( 'X', pila.obtenerTope() ); ASSERT_EQ( 'X', pila.obtenerTope() ); ASSERT_EQ( 'X', pila.desapilar() ); ASSERT_TRUE( pila.estaVacia() ); }
TEST( PilaCharTest, desapilaTresElementosCumplindoFIFO ) { Pila<char> pila; pila.apilar('A'); pila.apilar('B'); pila.apilar('C'); ASSERT_FALSE( pila.estaVacia() ); ASSERT_EQ( 'C', pila.desapilar() ); ASSERT_FALSE( pila.estaVacia() ); ASSERT_EQ( 'B', pila.desapilar() ); ASSERT_FALSE( pila.estaVacia() ); ASSERT_EQ( 'A', pila.desapilar() ); ASSERT_TRUE( pila.estaVacia() ); }
TEST( PilaCharTest, apilarUnUnicoElemento ) { Pila<char> pila; pila.apilar('D'); ASSERT_FALSE( pila.estaVacia() ); }
TEST( PilaCharTest, desapilarElUnicoElementoApilado ) { Pila<char> pila; pila.apilar('S'); const char elemento = pila.desapilar(); ASSERT_TRUE( pila.estaVacia()); ASSERT_EQ( 'S', elemento); }
TEST( PilaCharTest, apilarMultiplesElementos ) { Pila<char> pila; pila.apilar('O'); pila.apilar('P'); pila.apilar('Q'); ASSERT_FALSE( pila.estaVacia() ); }
TEST( PilaCharTest, obtenerTope ) { Pila<char> pila; pila.apilar('X'); pila.apilar('Y'); pila.apilar('Z'); ASSERT_FALSE( pila.estaVacia() ); ASSERT_EQ( 'Z', pila.obtenerTope() ); }
int main() { Pila<int> pila; pila.apilar(3); pila.apilar(5); pila.apilar(1); pila.apilar(6); while (! pila.estaVacia()) { cout << pila.desapilar() << endl; } return 0; }
int main() { Pila<float> pila; Cola<float> cola; cout << " -> Pila" << endl; for (int i = 0; i < 10; i++) pila.insertar(i + 0.01); while (!pila.estaVacia()) cout << "\t" << pila.sacar() << endl; cout << endl << " -> Cola " << endl; for (int i = 0; i < 10; i++) cola.insertar(i + 0.03); while (!cola.estaVacia()) cout << "\t" << cola.sacar() << endl; return 0; }
TEST( PilaCharTest, crear ) { Pila<char> pila; ASSERT_TRUE( pila.estaVacia() ); }