def testError(self): symbolset = mapscript.symbolSetObj(SYMBOLSET) symbola = mapscript.symbolObj('testa') symbolb = mapscript.symbolObj('testb') symbolset.appendSymbol(symbola) symbolset.appendSymbol(symbolb) self.assertRaises(mapscript.MapServerError, symbolset.save, '/bogus/new_symbols.txt')
def testSaveNewSymbolSet(self): """save a new SymbolSet to disk""" symbolset = mapscript.symbolSetObj(SYMBOLSET) symbola = mapscript.symbolObj('testa') symbolb = mapscript.symbolObj('testb') symbolset.appendSymbol(symbola) symbolset.appendSymbol(symbolb) assert symbolset.save('new_symbols.txt') == mapscript.MS_SUCCESS
def testAddSymbolToNewSymbolSet(self): """add two new symbols to a SymbolSet""" symbolset = mapscript.symbolSetObj(SYMBOLSET) symbola = mapscript.symbolObj('testa') symbolb = mapscript.symbolObj('testb') symbolset.appendSymbol(symbola) symbolset.appendSymbol(symbolb) num = symbolset.numsymbols assert num == 6, num names = [None, 'circle', 'xmarks-png', 'home-png', 'testa', 'testb'] for i in range(symbolset.numsymbols): symbol = symbolset.getSymbol(i) assert symbol.name == names[i], symbol.name
def setUp(self): MapTestCase.setUp(self) f = open(HOME_IMAGE, 'rb') s = StringIO.StringIO(f.read()) f.close() symb_img = mapscript.imageObj(s) self.h_symbol = mapscript.symbolObj('house') self.h_symbol.type = mapscript.MS_SYMBOL_PIXMAP self.h_symbol.setImage(symb_img) f = open(XMARKS_IMAGE, 'rb') s = StringIO.StringIO(f.read()) f.close() symb_img = mapscript.imageObj(s) self.x_symbol = mapscript.symbolObj('xmarks') self.x_symbol.type = mapscript.MS_SYMBOL_PIXMAP self.x_symbol.setImage(symb_img)
def testConstructorImage(self): """create new instance of symbolObj from an image""" symbol = mapscript.symbolObj('xmarks', XMARKS_IMAGE) assert symbol.name == 'xmarks' assert symbol.type == mapscript.MS_SYMBOL_PIXMAP format = mapscript.outputFormatObj('GD/PNG') img = symbol.getImage(format) img.save('sym-%s.%s' % (symbol.name, img.format.extension))
def testSymbolAppendRemove(self): """appendSymbolObj refcounting """ self.initMap() symb = mapscript.symbolObj("ANEWSYMBOL") assert symb.refcount == 1, symb.refcount assert symb.thisown == 1, symb.thisown idx = self.map.symbolset.appendSymbol(symb) assert symb.refcount == 2, symb.refcount assert symb.thisown == 1, symb.thisown symb = self.map.symbolset.removeSymbol(idx) assert symb.refcount == 1, symb.refcount assert symb.thisown == 1, symb.thisown
def testBug1962(self): """resetting imagepath doesn't cause segfault""" layer = self.map.getLayerByName('POINT') style0 = layer.getClass(0).getStyle(0) sym0 = style0.symbol sym1 = self.map.symbolset.getSymbol(sym0) sym2 = mapscript.symbolObj('xxx') sym1.setImagepath(XMARKS_IMAGE) self.assertRaises(IOError, sym1.setImagepath, '/bogus/new_symbols.txt') msimg = self.map.draw() assert msimg.thisown == 1 data = msimg.getBytes() filename = 'testBug1962.png' fh = open(filename, 'wb') fh.write(data) fh.close()
def testBug1962(self): """resetting imagepath doesn't cause segfault""" layer = self.map.getLayerByName('POINT') style0 = layer.getClass(0).getStyle(0) sym0 = style0.symbol sym1 = self.map.symbolset.getSymbol(sym0) sym2 = mapscript.symbolObj('xxx') sym1.setImagepath(XMARKS_IMAGE) # self.assertRaises(IOError, sym1.setImagepath, '/bogus/new_symbols.txt') msimg = self.map.draw() assert msimg.thisown == 1 data = msimg.getBytes() filename = 'testBug1962.png' fh = open(filename, 'wb') fh.write(data) fh.close()
def testDrawNewSymbol(self): """draw using a new symbol added to the fixture""" symbol = mapscript.symbolObj('xmarks', XMARKS_IMAGE) symbol_index = self.map.symbolset.appendSymbol(symbol) assert symbol_index == 4, symbol_index num = self.map.symbolset.numsymbols assert num == 5, num inline_layer = self.map.getLayerByName('INLINE') s = inline_layer.getClass(0).getStyle(0) s.symbol = symbol_index #s.size = 24 msimg = self.map.draw() assert msimg.thisown == 1 data = msimg.saveToString() filename = 'testDrawNewSymbol.png' fh = open(filename, 'wb') fh.write(data) fh.close()
def testConstructor(self): """create new instance of symbolObj""" symbol = mapscript.symbolObj('test') assert symbol.name == 'test' assert symbol.thisown == 1