]> git.stg.codes - stg.git/blob - tests/testtariffs.h
Fix test tariffs and users interface
[stg.git] / tests / testtariffs.h
1 #ifndef __TEST_TARIFFS_H__
2 #define __TEST_TARIFFS_H__
3
4 #include "stg/tariffs.h"
5
6 #include "tariff_impl.h"
7
8 class TEST_TARIFFS : public TARIFFS {
9     public:
10         TEST_TARIFFS() {}
11
12         int            ReadTariffs () { return 0; }
13         const TARIFF * FindByName(const std::string & /*name*/) const { return &testTariff; }
14         const TARIFF * GetNoTariff() const { return NULL; }
15         int            Del(const std::string & /*name*/, const ADMIN * /*admin*/) { return 0; }
16         int            Add(const std::string & /*name*/, const ADMIN * /*admin*/) { return 0; }
17         int            Chg(const TARIFF_DATA & /*td*/, const ADMIN * /*admin*/) { return 0; }
18
19         void           GetTariffsData(std::list<TARIFF_DATA> * /*tdl*/) {}
20
21         size_t         Count() const { return 0; }
22
23         const std::string & GetStrError() const { return strError; }
24
25         void           SetFee(double fee);
26
27     private:
28         std::string strError;
29         TARIFF_IMPL testTariff;
30 };
31
32 inline
33 void TEST_TARIFFS::SetFee(double fee)
34 {
35     TARIFF_DATA td(testTariff.GetTariffData());
36     td.tariffConf.fee = fee;
37     testTariff = td;
38 }
39
40 #endif