Add a suite for checking distribution size
[integration/test.git] / csit / suites / distribution / version.robot
1 *** Settings ***
2 Documentation     Suite for testing ODL distribution ability to report ist version via Restconf.
3 ...
4 ...               Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved.
5 ...
6 ...               This program and the accompanying materials are made available under the
7 ...               terms of the Eclipse Public License v1.0 which accompanies this distribution,
8 ...               and is available at http://www.eclipse.org/legal/epl-v10.html
9 ...
10 ...
11 ...               Features needed to be installed:
12 ...               odl-distribution-version (the main feature, defines the version string holder as a config module)
13 ...               odl-netconf-connector (controller-config device is used to access the config subsystem)
14 ...               odl-restconf (or odl-restconf-noauth, to get restconf access to the data mounted by controller-config)
15 ...
16 ...               Variables needed to be rovided on pybot invocation:
17 ...               ${BUNDLEFOLDER} (directory name of ODL installation, as it is suffxed by the distribution version)
18 ...
19 ...               This suite require both Restconf and Netconf-connector to be ready,
20 ...               so it is recommended to run netconfready.robot before running this suite.
21 ...
22 ...               TODO: Figure out a way to reliably predict Odlparent version.
23 ...               Possibly, inspection of system/org/opendaylight/odlparent/ would be required.
24 Suite Setup       Suite_Setup
25 Test Setup        SetupUtils.Setup_Test_With_Logging_And_Without_Fast_Failing
26 Test Teardown     SetupUtils.Teardown_Test_Show_Bugs_If_Test_Failed
27 Default Tags      critical    distribution    version
28 Resource          ${CURDIR}/../../libraries/TemplatedRequests.robot
29 Resource          ${CURDIR}/../../libraries/SetupUtils.robot
30
31 *** Variables ***
32 ${VERSION_VARDIR}    ${CURDIR}/../../variables/distribution/version
33
34 *** Test Cases ***
35 Distribution_Version
36     [Documentation]    Get version string as a part of ${BUNDLEFOLDER} and match with what RESTCONF says.
37     # ${BUNDLEFOLDER} typically looks like this: distribution-karaf-0.5.0-SNAPSHOT
38     ${version} =    BuiltIn.Evaluate    '''${BUNDLEFOLDER}'''[len("distribution-karaf-"):]
39     TemplatedRequests.Get_As_Json_Templated    folder=${VERSION_VARDIR}    mapping={"VERSION":"${version}"}    verify=True
40
41 *** Keywords ***
42 Suite_Setup
43     SetupUtils.Setup_Utils_For_Setup_And_Teardown
44     TemplatedRequests.Create_Default_Session