root/lang/objective-cplusplus/i3/trunk/src/Tester.cpp @ 36013

Revision 36013, 0.8 kB (checked in by saturday06, 3 years ago)

iconv

Line 
1#include <PrecompiledHeaders.h>
2#include "Mediator.h"
3#include "Tester.h"
4#include <mil/Synchronize.h>
5
6namespace i3 {
7
8Tester::Tester(Mediator& mediator) : mediator(mediator), passed(true), index(0) {
9}
10
11std::string Tester::getName() {
12        synchronized (mutex) {
13                if (passed) {
14                        return "test passed";
15                }
16                return name;
17        }
18
19        return "";
20}
21
22void Tester::pass() {
23        synchronized (mutex) {
24                passed = true;
25        }
26}
27
28void Tester::next(std::string& name_) {
29        synchronized (mutex) {
30                name = name_;
31                passed = false;
32                index++;
33        }
34}
35
36void Tester::run() {
37    for (;;) {
38                for (int i = 0; i < 100 && this->execute_front(); i++) {
39                        mil::yield();
40                }
41
42                synchronized (mutex) {
43                        if (!startNext()) {
44                                break;
45                        }
46                }
47    }
48}
49
50bool Tester::startNext() {
51        return false;
52}
53
54}
Note: See TracBrowser for help on using the browser.