blob: b1e40c0c07aa051ebd79bf52a21664525dcd4c0b [file] [log] [blame]
adminbae64d82013-08-01 10:50:15 -07001#!/usr/bin/env python
Jeremy Ronquillo23fb2162017-09-15 14:59:57 -07002"""
adminbae64d82013-08-01 10:50:15 -07003Created on 28-Nov-2012
Jeremy Ronquillo23fb2162017-09-15 14:59:57 -07004Copyright 2012 Open Networking Foundation ( ONF )
adminbae64d82013-08-01 10:50:15 -07005
Jeremy Ronquillo23fb2162017-09-15 14:59:57 -07006author:: Anil Kumar ( anilkumar.s@paxterrasolutions.com )
adminbae64d82013-08-01 10:50:15 -07007
Jeremy Ronquillob27ce4c2017-07-17 12:41:28 -07008Please refer questions to either the onos test mailing list at <onos-test@onosproject.org>,
9the System Testing Plans and Results wiki page at <https://wiki.onosproject.org/x/voMg>,
10or the System Testing Guide page at <https://wiki.onosproject.org/x/WYQg>
adminbae64d82013-08-01 10:50:15 -070011
12 TestON is free software: you can redistribute it and/or modify
13 it under the terms of the GNU General Public License as published by
14 the Free Software Foundation, either version 2 of the License, or
Jeremy Ronquillo23fb2162017-09-15 14:59:57 -070015 ( at your option ) any later version.
adminbae64d82013-08-01 10:50:15 -070016
17 TestON is distributed in the hope that it will be useful,
18 but WITHOUT ANY WARRANTY; without even the implied warranty of
19 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 GNU General Public License for more details.
21
22 You should have received a copy of the GNU General Public License
Jon Hall4ba53f02015-07-29 13:07:41 -070023 along with TestON. If not, see <http://www.gnu.org/licenses/>.
Jeremy Ronquillo23fb2162017-09-15 14:59:57 -070024"""
adminbae64d82013-08-01 10:50:15 -070025class Topology:
Jon Hall4ba53f02015-07-29 13:07:41 -070026
Jeremy Ronquillo23fb2162017-09-15 14:59:57 -070027 """
adminbae64d82013-08-01 10:50:15 -070028 This example shows, how we can use the topology file:
Jon Hall4ba53f02015-07-29 13:07:41 -070029
adminbae64d82013-08-01 10:50:15 -070030 In topo file we can specify the component like below:
Jeremy Ronquillo23fb2162017-09-15 14:59:57 -070031 [ TOPOLOGY ]
Jon Hall4ba53f02015-07-29 13:07:41 -070032
Jeremy Ronquillo23fb2162017-09-15 14:59:57 -070033 [ [ COMPONENT ] ]
34 [ [ [ "Mininet1" ] ] ]
Jon Hall4ba53f02015-07-29 13:07:41 -070035
adminbae64d82013-08-01 10:50:15 -070036 The usage of this component in the test script like below:
Jon Hall4ba53f02015-07-29 13:07:41 -070037
Jeremy Ronquillo23fb2162017-09-15 14:59:57 -070038 main.Mininet1.checkIP( main.params[ 'CASE1' ][ 'destination' ] )
Jon Hall4ba53f02015-07-29 13:07:41 -070039
40 Here we are using the Mininet1 which of type Mininet
41
42
43
adminbae64d82013-08-01 10:50:15 -070044 ofautomation>run Topology example 1
45 will execute this example.
Jeremy Ronquillo23fb2162017-09-15 14:59:57 -070046 """
47 def __init__( self ):
adminbae64d82013-08-01 10:50:15 -070048 self.default = ""
Jon Hall4ba53f02015-07-29 13:07:41 -070049
Jeremy Ronquillo23fb2162017-09-15 14:59:57 -070050 def CASE1( self, main ):
51 """
adminbae64d82013-08-01 10:50:15 -070052 This will showcase the usage of Topology
Jeremy Ronquillo23fb2162017-09-15 14:59:57 -070053 """
54 main.case( "Usage of Topology" )
55 main.step( "Mininet1 specified in Topology , using the Mininet1 to check host ip" )
56 result = main.Mininet1.checkIP( main.params[ 'CASE1' ][ 'destination' ] )
57 main.step( "Verifying the result" )
58 utilities.assert_equals( expect=main.TRUE, actual=result, onpass="Host h2 IP address configured", onfail="Host h2 IP address didn't configured" )