aboutsummaryrefslogtreecommitdiffstats
path: root/storage/src/tests/common/hostreporter/versionreportertest.cpp
blob: dd58493f540ca255116970fc4e63bab55e9d825f (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
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#include <vespa/log/log.h>
#include <vespa/storage/common/hostreporter/versionreporter.h>
#include <vespa/vdstestlib/cppunit/macros.h>
#include <vespa/vespalib/data/slime/slime.h>
#include <vespa/vespalib/util/jsonstream.h>
#include "util.h"

LOG_SETUP(".test.versionreporter");

namespace storage {
namespace {
using Object = vespalib::JsonStream::Object;
using End = vespalib::JsonStream::End;
}

struct VersionReporterTest : public CppUnit::TestFixture
{
    void testVersionReporter();

    CPPUNIT_TEST_SUITE(VersionReporterTest);
    CPPUNIT_TEST(testVersionReporter);
    CPPUNIT_TEST_SUITE_END();
};

CPPUNIT_TEST_SUITE_REGISTRATION(VersionReporterTest);

void
VersionReporterTest::testVersionReporter()
{
    VersionReporter versionReporter;
    vespalib::Slime slime;
    util::reporterToSlime(versionReporter,  slime);
    std::string version = slime.get()["vtag"]["version"].asString().make_string().c_str();
    CPPUNIT_ASSERT(version.length() > 2);
    CPPUNIT_ASSERT(version.find(".") > 0);
}
} // storage