나는 ListContainer
클래스가 있습니다. 클래스는 목록에 대한 컨테이너 허용 3 작업 :컨테이너 클래스를 테스트하는 방법은 무엇입니까?
- 는
- 는
- getNotValid (유효하지 않은 요소의 반환 목록)을 제거 추가 할 수 있습니다.
목록이 클래스에서 비공개이므로 추가하는 것이 실제로 요소를 추가하는지 확인할 수 없습니다. 추가 기능을 어떻게 테스트해야한다고 생각하십니까?
제 의견으로는 getNotValid로 확인해야합니다.
pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
Container::Container() {
}
void Container::add(Element element) {
pthread_mutex_lock(&mutex);
list.push_back(element);
pthread_mutex_unlock(&mutex);
}
void Container::remove(unsigned int elementId) {
pthread_mutex_lock(&mutex);
list<Element>::iterator it;
for (it = list.begin(); it != list.end(); ++it) {
if (element->id == elementId) { //TODO is it the real check
list.erase(it);
}
}
pthread_mutex_unlock(&mutex);
}
list<Element> Container::getNotValid() {
list<Element> result;
pthread_mutex_lock(&mutex);
list<Element>::iterator it;
for (it = list.begin(); it != list.end(); ++it) {
if (element->isNotValid()) {
result.push_back(*it);
}
}
pthread_mutex_unlock(&mutex);
return result;
}
"유효"항목이 목록에 있거나 아니면 유효하지 않은 항목을 반환하는 데 사용되는 목록입니까? –
getNotValid는 유효하지 않은 요소를 제거하고 반환합니다. –