blob: 6cb657de2872f237d4849cd4c7f5a70e79aa93c2 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#pragma once
#include <vespa/document/base/globalid.h>
#include <vespa/searchlib/common/i_gid_to_lid_mapper.h>
#include <vespa/searchlib/common/i_gid_to_lid_mapper_factory.h>
#include <map>
#include <memory>
namespace search::attribute::test {
using MockGidToLidMap = std::map<document::GlobalId, uint32_t>;
struct MockGidToLidMapper : public search::IGidToLidMapper {
const MockGidToLidMap &_map;
MockGidToLidMapper(const MockGidToLidMap &map)
: _map(map)
{
}
void foreach(const search::IGidToLidMapperVisitor &visitor) const override {
for (const auto &kv : _map) {
if (kv.second != 0) {
visitor.visit(kv.first, kv.second);
}
}
}
};
struct MockGidToLidMapperFactory : public search::IGidToLidMapperFactory {
MockGidToLidMap _map;
std::unique_ptr<search::IGidToLidMapper> getMapper() const override {
return std::make_unique<MockGidToLidMapper>(_map);
}
};
}
|