Stuart Axon
2010-09-15 18:08:12 UTC
Since we don't have a test framework I've done some manual testing on 0.3.
So far just the bots inside lib (not example).
I was thinking a visual test framework could work by using this list of bots as
input.
It would first try and run the bot in commandline mode.
If there is an error, then log it.
If there is no error then run the bot in window mode, let the user close the
window, after the window is closed, have a prompt like:
example/animation/HypnoVal.bot
Bot ran OK [Y]/n: n
Enter problem: Colours were reversed.
Anyway - here are the manual results for 0.3:
The main problem seems to be that RGB, HSV are not available for import.
(I think once these are fixed there will be other problems as I've already
got these fixed in my branch).
0.3, Windows XP
#lib
#lib/boids
lib/boids/boids_example1.py OK
lib/boids/boids_example2.py OK
#lib/colors
lib/colors/colors_example1.py NameError: global name 'RGB' is not defined
lib/colors/colors_example2.py NameError: global name 'RGB' is not defined
lib/colors/colors_example3.py NameError: global name 'RGB' is not defined
lib/colors/colors_example4.py NameError: global name 'RGB' is not defined
lib/colors/colors_example5.py NameError: global name 'RGB' is not defined
lib/colors/colors_example6.py NameError: global name 'RGB' is not defined
lib/colors/colors_example7.py NameError: global name 'RGB' is not defined
lib/colors/colors_example8.py NameError: global name 'RGB' is not defined
lib/colors/colors_example8.py NameError: global name 'RGB' is not defined
lib/colors/test.bot NameError: global name 'RGB' is not defined
lib/colors/test_2.bot NameError: global name 'RGB' is not defined
#lib/cornu
lib/cornu/cornu_example1.py OK
lib/cornu/cornu_example2.py OK
#lib/database
lib/database/database_test.py ImportError: No module named pysqlite2
#lib/graph
lib/graph/graph_example1.py OK
lib/graph/graph_example2.py OK
lib/graph/graph_example3.py OK
lib/graph/graph_example4.py ImportError: No module named en
#lib/lsystem
lib/lsystem/lsystem_example1.py ImportError: cannot import name CORNER
lib/lsystem/lsystem_example2.py ImportError: cannot import name CORNER
#lib/photobot
lib/photobot/example_1.bot OK
lib/photobot/example_2.bot OK
#lib/sbopencv Not tested (I don't have opencv installed)
#lib/sbopencv/test_sbvideo_1.bot
#lib/sbopencv/test_sbvideo_2.bot
#lib/sbopencv/test_sbvideo_3.bot
#lib/sbopencv/test_sbvideo_4_face_detection.bot
#lib/sbopencv/test_sbvideo_5_blob_tracking.bot
#lib/sbopencv/test_sbvideo_6_image_and_contour.bot
#lib/sbopencv/test_sbvideo_7_camera_contour.bot
#lib/sbopencv/test_sbvideo_8_camera_contour_alt.bot
#lib/sbopencv/test_sbvideo_9_image_and_double_contour.bot
#lib/supershape
lib/supershape/supershape-example1.py Runs, has error in middle of run
ValueError: math domain error
lib/supershape/supershape-example1.py AttributeError: 'BezierPath' object has no
attribute 'contours'
#lib/svg
lib/svg/svg-example_1.py ImportError: cannot import name RGB
lib/svg/svg-example_2.py ImportError: cannot import name RGB
lib/svg/svg-example_3.py ImportError: cannot import name RGB
#lib/tuio Not tested I don't have relevant OSC stuff installed
#lib/tuio/tuio_example1.py
#lib/tuio/tuio_example2.py
#lib/web
lib/web/_web_example1.py OK, Console output
lib/web/_web_example2.py OK, Console output, Pango Warning
lib/web/_web_example3.py OK, Console output
lib/web/_web_example4.py OK, Console output, Pango Warning
lib/web/_web_example5.py xml.parsers.expat.ExpatError: no element found: line 1,
column 0
lib/web/_web_example6.py OK, Console output
lib/web/_web_example7.py OK
lib/web/_web_example8.py web.urbandictionary.UrbanDictionaryError: the API is no
longer supported
lib/web/_web_example9.py Seems to hang
### List of example bots:
examples/animation
examples/animation/Hypnoval.py
examples/animation/Parade.py
examples/animation/WishyWorm.py
examples/basic
examples/basic/colour
examples/basic/colour/_bug_FillStrokeNofillNostroke.bot
examples/basic/colour/Background.bot
examples/basic/colour/Strokewidth.bot
examples/basic/path
examples/basic/path/BeginpathCurveto.bot
examples/basic/path/BeginpathLineto.bot
examples/basic/shape
examples/basic/shape/Arrow.bot
examples/basic/shape/FillEllipse.bot
examples/basic/shape/FillRect.bot
examples/basic/shape/FillStar.bot
examples/basic/shape/Line.bot
examples/basic/shape/StrokeEllipse.bot
examples/basic/shape/StrokeRect.bot
examples/basic/shape/StrokeStar.bot
examples/basic/transform
examples/basic/transform/transform_showcase.bot
examples/basic/transform/Translate.bot
examples/bots
examples/color
examples/color/ColormodeHsb.bot
examples/color/ColormodeHsb_old.bot
examples/color/ColormodeRgb.bot
examples/COPYING
examples/drawing
examples/drawing/appending_transforms.bot
examples/drawing/blocks.bot
examples/drawing/covergen.bot
examples/drawing/ovals.bot
examples/drawing/primitives.bot
examples/drawing/star_fun.bot
examples/drawing/tendrils.bot
examples/functions
examples/functions/Hexcolours.bot
examples/functions/PaletteChoice.bot
examples/grid
examples/grid/balls.bot
examples/grid/color_grid.bot
examples/grid/Foliage.py
examples/grid/form_function.bot
examples/grid/nauseating.bot
examples/math
examples/math/how_curves_work.bot
examples/math/math_sculpture.bot
examples/math/tunnel_effect.bot
examples/misc
examples/misc/CirclesAndBeziers.bot
examples/misc/ColourHarmony
examples/misc/ColourHarmony/ColourHarmony.bot
examples/misc/ColourHarmony/each
examples/misc/ColourHarmony/each/1Complex3Adjacent.bot
examples/misc/ColourHarmony/each/ComplexConsecAdjacent.bot
examples/misc/ColourHarmony/each/ComplexOpposite1.bot
examples/misc/ColourHarmony/each/ComplexOpposite2.bot
examples/misc/ColourHarmony/each/ComplexSeparated.bot
examples/misc/ColourHarmony/each/Equilateral.bot
examples/misc/ColourHarmony/each/Isoceles.bot
examples/misc/ColourHarmony/each/PrimarySecondary1a.bot
examples/misc/ColourHarmony/each/PrimarySecondary1b.bot
examples/misc/ColourHarmony/each/PrimarySecondary2a.bot
examples/misc/ColourHarmony/each/PrimarySecondary2b.bot
examples/misc/ColourHarmony/each/Rectangular.bot
examples/misc/ColourHarmony/each/SimpleAdjacent1.bot
examples/misc/ColourHarmony/each/SimpleAdjacent2.bot
examples/misc/ColourHarmony/each/SimpleComplementary.bot
examples/misc/ColourHarmony/each/Square.bot
examples/misc/keyboard.bot
examples/misc/Pymetar
examples/misc/Pymetar/_PymetarWorldwideTemperatures_all_ExceptionHandlingBug.bot
examples/misc/Pymetar/PymetarWorldwideTemperatures_some.bot
examples/misc/Random.bot
examples/misc/TextRotate.bot
examples/misc/VarSinCos
examples/misc/VarSinCos/VarSinCosCurveto.bot
examples/misc/VarSinCos/VarSinCosEllipse.bot
examples/misc/VarSinCos/VarSinCosLineto.bot
examples/misc/VarSinCos/VarSinCosLinetoEx2.bot
examples/misc/VarSinCos/VarSinCosLinetoEx2b.bot
examples/misc/VarSinCos/VarSinCosLinetoWrd.bot
examples/misc/VarSinCos/VarSinCosSpirographics.bot
examples/nodebox
examples/nodebox/ariel.bot
examples/nodebox/blines_and_circloids.bot
examples/nodebox/colors_shader_example_1.bot
examples/nodebox/colors_shader_example_2.bot
examples/nodebox/corner_rotate_1.bot
examples/nodebox/corner_rotate_2.bot
examples/nodebox/corner_rotate_3.bot
examples/nodebox/cornu_1.bot
examples/nodebox/flowers.bot
examples/nodebox/graph_test_2.bot
examples/nodebox/hair.bot
examples/nodebox/hair_shadow.bot
examples/nodebox/image_test.bot
examples/nodebox/obama_1.bot
examples/nodebox/obama_2.bot
examples/nodebox/shadow-mockup_1.bot
examples/nodebox/single_line_bounding_box_test.bot
examples/nodebox/sun_planet_moon.bot
examples/nodebox/sun_planet_moon_2.bot
examples/nodebox/sun_planet_moon_3.bot
examples/nodebox/superfolia.bot
examples/nodebox/supershape-flowers.bot
examples/nodebox/svg-example_2.bot
examples/nodebox/svg-example_shadow.bot
examples/nodebox/svg_dict.bot
examples/nodebox/transforms_stress_test.bot
examples/nodebox/web_7.bot
examples/random
examples/random/RandomVarEllipse.bot
examples/random/RandomVarEllipseFillStroke.bot
examples/random/RandomVarEllipseOpacity.bot
examples/random/RandomVarNumberHsb.bot
examples/random/RandomVarNumberRgb.bot
examples/random/RandomVarPath.bot
examples/random/RandomVarPathOpacity.bot
examples/random/RandomVarRect.bot
examples/random/RandomVarRectFillStroke.bot
examples/random/RandomVarRectFillStrokeRotateReset.bot
examples/random/RandomVarRectOpacity.bot
examples/socketcontrol
examples/socketcontrol/bars.bot
examples/socketcontrol/helloworld.bot
examples/socketcontrol/helloworld.pd
examples/socketcontrol/random_shapes_sliders.bot
examples/systemvariables
examples/systemvariables/_notworking
examples/systemvariables/_notworking/_height.bot
examples/systemvariables/_notworking/_width.bot
examples/systemvariables/_notworking/_xmouse.bot
examples/systemvariables/_notworking/_ymouse.bot
examples/tests
examples/tests/assets
examples/tests/assets/hva_studio_3.jpg
examples/tests/cliptransform_test.bot
examples/tests/color_test.bot
examples/tests/drawpath_test.bot
examples/tests/test_clip.bot
examples/tests/test_clip_2.bot
examples/tests/test_clip_3.bot
examples/tests/test_clip_4.bot
examples/tests/test_findpath.bot
examples/tests/test_findpath_2.bot
examples/tests/test_findpath_3.bot
examples/tests/test_new_Color_class.bot
examples/tests/test_nuova_classe_transform.bot
examples/tests/test_nuova_classe_transform_2.bot
examples/tests/test_nuova_classe_transform_3.bot
examples/tests/test_nuova_classe_transform_4.bot
examples/tests/text_test.bot
examples/var
examples/var/VarBoolean.bot
examples/var/VarNumberHsb.bot
examples/var/VarNumberRgb.bot
examples/var/VarText.bot
examples/var/VarTextNumber.bot
So far just the bots inside lib (not example).
I was thinking a visual test framework could work by using this list of bots as
input.
It would first try and run the bot in commandline mode.
If there is an error, then log it.
If there is no error then run the bot in window mode, let the user close the
window, after the window is closed, have a prompt like:
example/animation/HypnoVal.bot
Bot ran OK [Y]/n: n
Enter problem: Colours were reversed.
Anyway - here are the manual results for 0.3:
The main problem seems to be that RGB, HSV are not available for import.
(I think once these are fixed there will be other problems as I've already
got these fixed in my branch).
0.3, Windows XP
#lib
#lib/boids
lib/boids/boids_example1.py OK
lib/boids/boids_example2.py OK
#lib/colors
lib/colors/colors_example1.py NameError: global name 'RGB' is not defined
lib/colors/colors_example2.py NameError: global name 'RGB' is not defined
lib/colors/colors_example3.py NameError: global name 'RGB' is not defined
lib/colors/colors_example4.py NameError: global name 'RGB' is not defined
lib/colors/colors_example5.py NameError: global name 'RGB' is not defined
lib/colors/colors_example6.py NameError: global name 'RGB' is not defined
lib/colors/colors_example7.py NameError: global name 'RGB' is not defined
lib/colors/colors_example8.py NameError: global name 'RGB' is not defined
lib/colors/colors_example8.py NameError: global name 'RGB' is not defined
lib/colors/test.bot NameError: global name 'RGB' is not defined
lib/colors/test_2.bot NameError: global name 'RGB' is not defined
#lib/cornu
lib/cornu/cornu_example1.py OK
lib/cornu/cornu_example2.py OK
#lib/database
lib/database/database_test.py ImportError: No module named pysqlite2
#lib/graph
lib/graph/graph_example1.py OK
lib/graph/graph_example2.py OK
lib/graph/graph_example3.py OK
lib/graph/graph_example4.py ImportError: No module named en
#lib/lsystem
lib/lsystem/lsystem_example1.py ImportError: cannot import name CORNER
lib/lsystem/lsystem_example2.py ImportError: cannot import name CORNER
#lib/photobot
lib/photobot/example_1.bot OK
lib/photobot/example_2.bot OK
#lib/sbopencv Not tested (I don't have opencv installed)
#lib/sbopencv/test_sbvideo_1.bot
#lib/sbopencv/test_sbvideo_2.bot
#lib/sbopencv/test_sbvideo_3.bot
#lib/sbopencv/test_sbvideo_4_face_detection.bot
#lib/sbopencv/test_sbvideo_5_blob_tracking.bot
#lib/sbopencv/test_sbvideo_6_image_and_contour.bot
#lib/sbopencv/test_sbvideo_7_camera_contour.bot
#lib/sbopencv/test_sbvideo_8_camera_contour_alt.bot
#lib/sbopencv/test_sbvideo_9_image_and_double_contour.bot
#lib/supershape
lib/supershape/supershape-example1.py Runs, has error in middle of run
ValueError: math domain error
lib/supershape/supershape-example1.py AttributeError: 'BezierPath' object has no
attribute 'contours'
#lib/svg
lib/svg/svg-example_1.py ImportError: cannot import name RGB
lib/svg/svg-example_2.py ImportError: cannot import name RGB
lib/svg/svg-example_3.py ImportError: cannot import name RGB
#lib/tuio Not tested I don't have relevant OSC stuff installed
#lib/tuio/tuio_example1.py
#lib/tuio/tuio_example2.py
#lib/web
lib/web/_web_example1.py OK, Console output
lib/web/_web_example2.py OK, Console output, Pango Warning
lib/web/_web_example3.py OK, Console output
lib/web/_web_example4.py OK, Console output, Pango Warning
lib/web/_web_example5.py xml.parsers.expat.ExpatError: no element found: line 1,
column 0
lib/web/_web_example6.py OK, Console output
lib/web/_web_example7.py OK
lib/web/_web_example8.py web.urbandictionary.UrbanDictionaryError: the API is no
longer supported
lib/web/_web_example9.py Seems to hang
### List of example bots:
examples/animation
examples/animation/Hypnoval.py
examples/animation/Parade.py
examples/animation/WishyWorm.py
examples/basic
examples/basic/colour
examples/basic/colour/_bug_FillStrokeNofillNostroke.bot
examples/basic/colour/Background.bot
examples/basic/colour/Strokewidth.bot
examples/basic/path
examples/basic/path/BeginpathCurveto.bot
examples/basic/path/BeginpathLineto.bot
examples/basic/shape
examples/basic/shape/Arrow.bot
examples/basic/shape/FillEllipse.bot
examples/basic/shape/FillRect.bot
examples/basic/shape/FillStar.bot
examples/basic/shape/Line.bot
examples/basic/shape/StrokeEllipse.bot
examples/basic/shape/StrokeRect.bot
examples/basic/shape/StrokeStar.bot
examples/basic/transform
examples/basic/transform/transform_showcase.bot
examples/basic/transform/Translate.bot
examples/bots
examples/color
examples/color/ColormodeHsb.bot
examples/color/ColormodeHsb_old.bot
examples/color/ColormodeRgb.bot
examples/COPYING
examples/drawing
examples/drawing/appending_transforms.bot
examples/drawing/blocks.bot
examples/drawing/covergen.bot
examples/drawing/ovals.bot
examples/drawing/primitives.bot
examples/drawing/star_fun.bot
examples/drawing/tendrils.bot
examples/functions
examples/functions/Hexcolours.bot
examples/functions/PaletteChoice.bot
examples/grid
examples/grid/balls.bot
examples/grid/color_grid.bot
examples/grid/Foliage.py
examples/grid/form_function.bot
examples/grid/nauseating.bot
examples/math
examples/math/how_curves_work.bot
examples/math/math_sculpture.bot
examples/math/tunnel_effect.bot
examples/misc
examples/misc/CirclesAndBeziers.bot
examples/misc/ColourHarmony
examples/misc/ColourHarmony/ColourHarmony.bot
examples/misc/ColourHarmony/each
examples/misc/ColourHarmony/each/1Complex3Adjacent.bot
examples/misc/ColourHarmony/each/ComplexConsecAdjacent.bot
examples/misc/ColourHarmony/each/ComplexOpposite1.bot
examples/misc/ColourHarmony/each/ComplexOpposite2.bot
examples/misc/ColourHarmony/each/ComplexSeparated.bot
examples/misc/ColourHarmony/each/Equilateral.bot
examples/misc/ColourHarmony/each/Isoceles.bot
examples/misc/ColourHarmony/each/PrimarySecondary1a.bot
examples/misc/ColourHarmony/each/PrimarySecondary1b.bot
examples/misc/ColourHarmony/each/PrimarySecondary2a.bot
examples/misc/ColourHarmony/each/PrimarySecondary2b.bot
examples/misc/ColourHarmony/each/Rectangular.bot
examples/misc/ColourHarmony/each/SimpleAdjacent1.bot
examples/misc/ColourHarmony/each/SimpleAdjacent2.bot
examples/misc/ColourHarmony/each/SimpleComplementary.bot
examples/misc/ColourHarmony/each/Square.bot
examples/misc/keyboard.bot
examples/misc/Pymetar
examples/misc/Pymetar/_PymetarWorldwideTemperatures_all_ExceptionHandlingBug.bot
examples/misc/Pymetar/PymetarWorldwideTemperatures_some.bot
examples/misc/Random.bot
examples/misc/TextRotate.bot
examples/misc/VarSinCos
examples/misc/VarSinCos/VarSinCosCurveto.bot
examples/misc/VarSinCos/VarSinCosEllipse.bot
examples/misc/VarSinCos/VarSinCosLineto.bot
examples/misc/VarSinCos/VarSinCosLinetoEx2.bot
examples/misc/VarSinCos/VarSinCosLinetoEx2b.bot
examples/misc/VarSinCos/VarSinCosLinetoWrd.bot
examples/misc/VarSinCos/VarSinCosSpirographics.bot
examples/nodebox
examples/nodebox/ariel.bot
examples/nodebox/blines_and_circloids.bot
examples/nodebox/colors_shader_example_1.bot
examples/nodebox/colors_shader_example_2.bot
examples/nodebox/corner_rotate_1.bot
examples/nodebox/corner_rotate_2.bot
examples/nodebox/corner_rotate_3.bot
examples/nodebox/cornu_1.bot
examples/nodebox/flowers.bot
examples/nodebox/graph_test_2.bot
examples/nodebox/hair.bot
examples/nodebox/hair_shadow.bot
examples/nodebox/image_test.bot
examples/nodebox/obama_1.bot
examples/nodebox/obama_2.bot
examples/nodebox/shadow-mockup_1.bot
examples/nodebox/single_line_bounding_box_test.bot
examples/nodebox/sun_planet_moon.bot
examples/nodebox/sun_planet_moon_2.bot
examples/nodebox/sun_planet_moon_3.bot
examples/nodebox/superfolia.bot
examples/nodebox/supershape-flowers.bot
examples/nodebox/svg-example_2.bot
examples/nodebox/svg-example_shadow.bot
examples/nodebox/svg_dict.bot
examples/nodebox/transforms_stress_test.bot
examples/nodebox/web_7.bot
examples/random
examples/random/RandomVarEllipse.bot
examples/random/RandomVarEllipseFillStroke.bot
examples/random/RandomVarEllipseOpacity.bot
examples/random/RandomVarNumberHsb.bot
examples/random/RandomVarNumberRgb.bot
examples/random/RandomVarPath.bot
examples/random/RandomVarPathOpacity.bot
examples/random/RandomVarRect.bot
examples/random/RandomVarRectFillStroke.bot
examples/random/RandomVarRectFillStrokeRotateReset.bot
examples/random/RandomVarRectOpacity.bot
examples/socketcontrol
examples/socketcontrol/bars.bot
examples/socketcontrol/helloworld.bot
examples/socketcontrol/helloworld.pd
examples/socketcontrol/random_shapes_sliders.bot
examples/systemvariables
examples/systemvariables/_notworking
examples/systemvariables/_notworking/_height.bot
examples/systemvariables/_notworking/_width.bot
examples/systemvariables/_notworking/_xmouse.bot
examples/systemvariables/_notworking/_ymouse.bot
examples/tests
examples/tests/assets
examples/tests/assets/hva_studio_3.jpg
examples/tests/cliptransform_test.bot
examples/tests/color_test.bot
examples/tests/drawpath_test.bot
examples/tests/test_clip.bot
examples/tests/test_clip_2.bot
examples/tests/test_clip_3.bot
examples/tests/test_clip_4.bot
examples/tests/test_findpath.bot
examples/tests/test_findpath_2.bot
examples/tests/test_findpath_3.bot
examples/tests/test_new_Color_class.bot
examples/tests/test_nuova_classe_transform.bot
examples/tests/test_nuova_classe_transform_2.bot
examples/tests/test_nuova_classe_transform_3.bot
examples/tests/test_nuova_classe_transform_4.bot
examples/tests/text_test.bot
examples/var
examples/var/VarBoolean.bot
examples/var/VarNumberHsb.bot
examples/var/VarNumberRgb.bot
examples/var/VarText.bot
examples/var/VarTextNumber.bot