3
« en: Miércoles 10 de Noviembre de 2010, 08:23 »
Buenos días a todos... estoy realizando una práctica en la que debo validar unos tests y realizar un código sobre como recoger una fecha con constructores, leerla y mostrarla:
Esto es el fichero.h
#ifndef _FECHA_H
#define _FECHA_H
#include <string>
#include <iostream>
struct TFecha {
int dia;
int mes;
int anyo;
};
//Construye una fecha, colocandola el día 1 de Enero de 1970.
void inicializaFecha (TFecha &f);
//Construye una fecha, colocandola el día 1 de Enero de 1970.
void inicializaFecha (TFecha &f, int dia, int mes, int anyo);
//Escribe la fecha por la salida estandar. El formato es dia/mes/año.
void muestraFecha (const TFecha &f);
//Lee por la entrada estandar una fecha, y la devuelve.
TFecha leerFecha();
#endif
[b]Este es el fichero .cpp de la fecha:[/b]
#include "Fecha.h"
void inicializaFecha (TFecha &f){
f.dia = 1;
f.mes = 1;
f.anyo = 1970;
}
void inicializaFecha(TFecha &f, int dia, int mes, int anyo)
{
f.dia = dia;
f.mes = mes;
f.anyo = anyo;
}
TFecha leerFecha(){
int d, m, a;
TFecha fec;
std::cout << "Introduzca el día de la fecha: " << std::endl;
std::cin >> d;
std::cout << "Introduzca el mes de la fecha: " << std::endl;
std::cin >> m;
std::cout << "Introduzca el año de la fecha: " << std::endl;
std::cin >> a;
fec.dia = d;
fec.mes = m;
fec.anyo = a;
return fec;
}
void muestraFecha(const TFecha &f){
std::cout << f.dia << "/" << f.mes << "/" << f.anyo << std::endl;
};
y por último aquí estan los dichosos tests que no soy capaz de pasar:
TEST(ConstructorPorDefecto) {
TFecha f;
inicializaFecha(f);
muestraFecha(f);
CHECK_OUTPUT("1/1/1970");
}
TEST(InitYEscribe) {
TFecha f;
inicializaFecha(f, 12, 10, 1492);
muestraFecha(f);
CHECK_OUTPUT("12/10/1492");
inicializaFecha(f, 21, 10, 1492);
muestraFecha(f);
CHECK_OUTPUT("21/10/1492");
}
LOS ERRORES QUE ME DAN AL COMPILAR LOS TESTS SON : error failure in ConstructorPordefecto: expected "1/1/1970" but was "1/1/1970"
error failure in InitYEscribe: expected "1/1/1970" but was "1/1/1970"
error failure in InitYEscribe: expected "21/10/1942" but was "21/10/1942"
si me pudiérais echar una mano...muchas gracias y un saludo!!!