Created on Oct 18, 2012 @author: dawood ''' from fixtures.basefixture import BaseFixture import fixtures from core.restclient import responseparser from gen import methods as client from core.restclient.responseparser.ParserLxml import xml2d import xmltemplates import logger COMPONENT_NAME = 'agility-testbench' logger = logger.getLogger('%s.%s'%(COMPONENT_NAME, __name__)) parse = responseparser.parser() class ScriptFixture(BaseFixture): ''' includes setup and tear down for script creation, plus helper methods ''' def __init__(self, conn=None, assetName='Script', snapshot=BaseFixture.SNAPSHOT.NEW): BaseFixture.__init__(self, conn, assetName, snapshot) self.newScript = None self.scriptService = client.script(self.conn) self.templateScript = None def setUp(self): BaseFixture.setUp(self) self.templateScript = lambda : responseparser.createProxy(xml2d(xmltemplates.SCRIPT), 'Script')
''' Created on Oct 31, 2012 @author: dawood ''' __all__ = ['loadSnapshot', 'loadSnapshots'] import os import logging from core.restclient import responseparser from agilityshell import agility parse = responseparser.parser( parserDialect=responseparser.PARSER.BEAUTIFUL_SOUP) COMPONENT_NAME = 'snapshot' import logger logger = logger.getLogger(COMPONENT_NAME) _SUMMARY = 'summary' _DETAILS = 'details' def loadSnapshot(persistDir, assetName, environment, systemversion=None): ''' loads a persisted XML snapshot of Agility Asset Model @param persistDir: parent directory of the snapshot, typically <rootdir>/environments @param assetName: name of the Asset to load @param environment: typically hostname of the agility instance of which the snapshot was taken @param version: agility version, e.g. 7.4.14, 8.1.4, etc ...
def setParser(parserDialect=responseparser.PARSER.BEAUTIFUL_SOUP): ''' Changes the parser used for all a.* calls parsing decorator ''' serviceproxy.ParseDecorator._parse = responseparser.parser(parserDialect)
@author: dawood ''' import sys import os import stat from core.base.enum import Enum import logging from core.restclient import responseparser from core.proxy import serviceproxy from core.proxy.hook import Hook from logger import logger def setParser(parserDialect=responseparser.PARSER.BEAUTIFUL_SOUP): ''' Changes the parser used for all a.* calls parsing decorator ''' serviceproxy.ParseDecorator._parse = responseparser.parser(parserDialect) setParser.PARSER_DIALECT = responseparser.PARSER TOOLS = { 'xml' : Hook(**{'setParser' : setParser, 'parse' : responseparser.parser()}) } class Tools(object): def __init__(self): self.__dict__.update(TOOLS)
''' Created on Oct 18, 2012 @author: dawood ''' from fixtures.basefixture import BaseFixture import fixtures from core.restclient import responseparser from gen import methods as client from core.restclient.responseparser.ParserLxml import xml2d import xmltemplates import logger COMPONENT_NAME = 'agility-testbench' logger = logger.getLogger('%s.%s' % (COMPONENT_NAME, __name__)) parse = responseparser.parser() class ScriptFixture(BaseFixture): ''' includes setup and tear down for script creation, plus helper methods ''' def __init__(self, conn=None, assetName='Script', snapshot=BaseFixture.SNAPSHOT.NEW): BaseFixture.__init__(self, conn, assetName, snapshot) self.newScript = None self.scriptService = client.script(self.conn) self.templateScript = None
def setUp(self): unittest.TestCase.setUp(self) self.parse_bs = responseparser.parser(responseparser.PARSER.BEAUTIFUL_SOUP) self.parse_lxml = responseparser.parser(responseparser.PARSER.LXML) self.xmlFile = '../agilityFieldTestBench/cba_s1_8.1.4_v2.0_snapshot/environments/10.231.219.132/8.1.4/Network/details/1_Network.xml' self.typeName = 'Network'
''' Created on Oct 31, 2012 @author: dawood ''' __all__ = ['loadSnapshot', 'loadSnapshots'] import os import logging from core.restclient import responseparser from agilityshell import agility parse = responseparser.parser(parserDialect=responseparser.PARSER.BEAUTIFUL_SOUP) COMPONENT_NAME = 'snapshot' import logger logger = logger.getLogger(COMPONENT_NAME) _SUMMARY = 'summary' _DETAILS = 'details' def loadSnapshot(persistDir, assetName, environment, systemversion=None): ''' loads a persisted XML snapshot of Agility Asset Model @param persistDir: parent directory of the snapshot, typically <rootdir>/environments @param assetName: name of the Asset to load @param environment: typically hostname of the agility instance of which the snapshot was taken @param version: agility version, e.g. 7.4.14, 8.1.4, etc ... '''