Mercurial > irccd
annotate libirccd-test/irccd/test/mock.cpp @ 773:8c44bbcbbab9
Misc: style, cleanup and update
author | David Demelier <markand@malikania.fr> |
---|---|
date | Fri, 26 Oct 2018 13:01:00 +0200 |
parents | 199f36d4edc8 |
children | 2dfba38e93f0 |
rev | line source |
---|---|
735
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
1 /* |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
2 * mock.cpp -- keep track of function invocations |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
3 * |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
4 * Copyright (c) 2013-2018 David Demelier <markand@malikania.fr> |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
5 * |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
6 * Permission to use, copy, modify, and/or distribute this software for any |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
7 * purpose with or without fee is hereby granted, provided that the above |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
8 * copyright notice and this permission notice appear in all copies. |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
9 * |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
17 */ |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
18 |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
19 #include "mock.hpp" |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
20 |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
21 namespace irccd { |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
22 |
738
199f36d4edc8
Tests: add mock_plugin class, closes #898
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
23 void mock::push(std::string name, args args) const |
735
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
24 { |
773
8c44bbcbbab9
Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents:
738
diff
changeset
|
25 table_[name].push_back(std::move(args)); |
735
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
26 } |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
27 |
738
199f36d4edc8
Tests: add mock_plugin class, closes #898
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
28 auto mock::find(const std::string& name) const -> std::vector<args> |
735
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
29 { |
773
8c44bbcbbab9
Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents:
738
diff
changeset
|
30 if (const auto it = table_.find(name); it != table_.end()) |
8c44bbcbbab9
Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents:
738
diff
changeset
|
31 return it->second; |
735
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
32 |
773
8c44bbcbbab9
Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents:
738
diff
changeset
|
33 return {}; |
735
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
34 } |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
35 |
738
199f36d4edc8
Tests: add mock_plugin class, closes #898
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
36 void mock::clear(const std::string& name) const noexcept |
735
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
37 { |
773
8c44bbcbbab9
Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents:
738
diff
changeset
|
38 table_.erase(name); |
735
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
39 } |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
40 |
738
199f36d4edc8
Tests: add mock_plugin class, closes #898
David Demelier <markand@malikania.fr>
parents:
735
diff
changeset
|
41 void mock::clear() const noexcept |
735
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
42 { |
773
8c44bbcbbab9
Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents:
738
diff
changeset
|
43 table_.clear(); |
735
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
44 } |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
45 |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
46 auto mock::empty() const noexcept -> bool |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
47 { |
773
8c44bbcbbab9
Misc: style, cleanup and update
David Demelier <markand@malikania.fr>
parents:
738
diff
changeset
|
48 return table_.empty(); |
735
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
49 } |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
50 |
64839725f346
Tests: replace journal_server with mock_server
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
51 } // !irccd |