#include #include "execution_environment.h" QUIZ_CASE(python_matplotlib_pyplot_import) { // Test "from matplotlib.pyplot import *" TestExecutionEnvironment env = init_environement(); assert_command_execution_fails(env, "arrow(2,3,4,5)"); assert_command_execution_succeeds(env, "from matplotlib.pyplot import *"); assert_command_execution_succeeds(env, "arrow(2,3,4,5)"); deinit_environment(); // "from matplotlib import *" env = init_environement(); assert_command_execution_fails(env, "pyplot.arrow(2,3,4,5)"); assert_command_execution_succeeds(env, "from matplotlib import *"); assert_command_execution_succeeds(env, "pyplot.arrow(2,3,4,5)"); deinit_environment(); // "import matplotlib" env = init_environement(); assert_command_execution_fails(env, "matplotlib.pyplot.arrow(2,3,4,5)"); assert_command_execution_succeeds(env, "import matplotlib"); assert_command_execution_succeeds(env, "matplotlib.pyplot.arrow(2,3,4,5)"); deinit_environment(); // "import matplotlib.pyplot" env = init_environement(); assert_command_execution_fails(env, "matplotlib.pyplot.arrow(2,3,4,5)"); assert_command_execution_succeeds(env, "import matplotlib.pyplot"); assert_command_execution_succeeds(env, "matplotlib.pyplot.arrow(2,3,4,5)"); deinit_environment(); } QUIZ_CASE(python_matplotlib_pyplot_arrow) { TestExecutionEnvironment env = init_environement(); assert_command_execution_succeeds(env, "from matplotlib.pyplot import *"); assert_command_execution_succeeds(env, "arrow(2,3,4,5)"); assert_command_execution_fails(env, "arrow(2,3,4,5, 0.1)"); assert_command_execution_fails(env, "arrow(2,3,4,5, \"width\")"); assert_command_execution_fails(env, "arrow(2,3,4,5, 0.1, \"#FF00FF\")"); assert_command_execution_succeeds(env, "arrow(2,3,4,5,head_width=0.3)"); assert_command_execution_succeeds(env, "arrow(2,3,4,5,color=\"red\")"); assert_command_execution_succeeds(env, "show()"); deinit_environment(); } QUIZ_CASE(python_matplotlib_pyplot_axis) { TestExecutionEnvironment env = init_environement(); assert_command_execution_succeeds(env, "from matplotlib.pyplot import *"); assert_command_execution_succeeds(env, "axis((2,3,4,5))"); assert_command_execution_succeeds(env, "axis([2,3,4,5])"); assert_command_execution_succeeds(env, "axis()","(2.0, 3.0, 4.0, 5.0)\n"); assert_command_execution_succeeds(env, "show()"); assert_command_execution_fails(env, "axis(2,3,4,5)"); deinit_environment(); } QUIZ_CASE(python_matplotlib_pyplot_bar) { TestExecutionEnvironment env = init_environement(); assert_command_execution_succeeds(env, "from matplotlib.pyplot import *"); assert_command_execution_succeeds(env, "bar([0,2,3],[10,12,23])"); assert_command_execution_succeeds(env, "bar([0,2,3],10)"); assert_command_execution_succeeds(env, "bar([],[])"); assert_command_execution_succeeds(env, "bar([1,2,3],[1,2,3],2,3)"); assert_command_execution_succeeds(env, "bar([1,2,3],[1,2,3],[1,2,3],[1,2,3])"); assert_command_execution_succeeds(env, "bar([1,2,3],[1,2,3],[1,2,3],[1,2,3], color=\"orange\")"); assert_command_execution_succeeds(env, "show()"); assert_command_execution_fails(env, "bar([1,2,3],[1,2,3,4],[1,2,3],[1,2,3])"); deinit_environment(); } QUIZ_CASE(python_matplotlib_pyplot_grid) { TestExecutionEnvironment env = init_environement(); assert_command_execution_succeeds(env, "from matplotlib.pyplot import *"); assert_command_execution_succeeds(env, "grid(True)"); assert_command_execution_succeeds(env, "grid()"); deinit_environment(); } QUIZ_CASE(python_matplotlib_pyplot_hist) { TestExecutionEnvironment env = init_environement(); assert_command_execution_succeeds(env, "from matplotlib.pyplot import *"); assert_command_execution_succeeds(env, "hist([2,3,4,5,6])"); assert_command_execution_succeeds(env, "hist([2,3,4,5,6],23)"); assert_command_execution_succeeds(env, "hist([2,3,4,5,6],[0,2,3])"); assert_command_execution_succeeds(env, "hist([2,3,4,5,6],[0,2,3, 4,5,6,7])"); assert_command_execution_succeeds(env, "hist([2,3,4,5,6],[0,2,3, 4,5,6,7], (0,255,0))"); assert_command_execution_succeeds(env, "show()"); deinit_environment(); } QUIZ_CASE(python_matplotlib_pyplot_plot) { TestExecutionEnvironment env = init_environement(); assert_command_execution_succeeds(env, "from matplotlib.pyplot import *"); assert_command_execution_succeeds(env, "plot([2,3,4,5,6])"); assert_command_execution_succeeds(env, "plot(2,3)"); assert_command_execution_succeeds(env, "plot([2,3,4,5,6],[3,4,5,6,7])"); assert_command_execution_succeeds(env, "plot([2,3,4,5,6],[3,4,5,6,7], color=\"g\")"); assert_command_execution_succeeds(env, "show()"); assert_command_execution_fails(env, "plot([2,3,4,5,6],2)"); deinit_environment(); } QUIZ_CASE(python_matplotlib_pyplot_scatter) { TestExecutionEnvironment env = init_environement(); assert_command_execution_succeeds(env, "from matplotlib.pyplot import *"); assert_command_execution_succeeds(env, "scatter(2,3)"); assert_command_execution_succeeds(env, "scatter([2,3,4,5,6],[3,4,5,6,7])"); assert_command_execution_succeeds(env, "scatter([2,3,4,5,6],[3,4,5,6,7], color=(0,0,255))"); assert_command_execution_succeeds(env, "show()"); assert_command_execution_fails(env, "scatter([2,3,4,5,6],2)"); deinit_environment(); } QUIZ_CASE(python_matplotlib_pyplot_text) { TestExecutionEnvironment env = init_environement(); assert_command_execution_succeeds(env, "from matplotlib.pyplot import *"); assert_command_execution_succeeds(env, "text(2,3,'hello')"); assert_command_execution_succeeds(env, "show()"); deinit_environment(); }