def testParsingPrintableRepresentation( self ): info = BuildInfo() info.setBuildType( self._randomString() ) info.setPriority( 3 ) info.setProjectName( self._randomString() ) info.setRevision( self._randomString() ) info.setUrl( self._randomString() ) info.setBranch( self._randomString() ) info.setTag( self._randomString() ) stringRepresentation = info.printableRepresentation() result = BuildInfo() result.initializeFromPrintableRepresentation( stringRepresentation ) self.assertEqual( info.__dict__, result.__dict__ )
def getBuildInfoForRevisionsSince( self, buildScript, projectName, revision ): '''Return all revisions that modified the project since the specified revision. @return a list of BuildInfo object, with the latest commit last @throws MomEception, if any of the operations fail ''' iface = BuildScriptInterface( buildScript ) buildInfos = [] lines = iface.queryRevisionsSince( revision ) for line in lines: line = line.strip() if not line: continue buildInfo = BuildInfo() buildInfo.initializeFromPrintableRepresentation( line ) buildInfo.setBuildStatus( buildInfo.Status.NewRevision ) buildInfo.setBuildScript( buildScript ) buildInfos.append( buildInfo ) buildInfos.reverse() return buildInfos