{"problem": {"id": 1754, "resource_id": "prog.2021.bmp", "title": "Problem Set 4: BMP Transformations!"}, "student": {"id": 5609, "resource_id": "1DIYiK", "name": "Richard Dzurik", "email": "richard.dzurik@student.tuke.sk"}, "score": 15.0, "percentage": 15.0, "testcases": [{"id": 11076453, "title": "Structure Check", "description": null, "duration": 0.07057428359985352, "score": null, "hint": null, "strict": true, "passed": true, "type": "ws", "render": "normal", "submission": 381097, "parent": null}, {"id": 11076454, "title": "About Tools", "description": "Provides info about the tools. Mostly their versions.\n", "duration": 0.1781771183013916, "score": null, "hint": null, "strict": false, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": null}, {"id": 11076455, "title": "Globals", "description": "Searching for global variables, usage of which is _forbidden_.\n", "duration": 0.20326828956604004, "score": null, "hint": null, "strict": true, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": null}, {"id": 11076456, "title": "Static Code Analysis", "description": "Checks style of your code with `cppcheck` with following command:\n`cppcheck --enable=performance,unusedFunction --error-exitcode=1 bmp.c transformations.c main.c`\n", "duration": 0.23985767364501953, "score": null, "hint": null, "strict": true, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": null}, {"id": 11076457, "title": "Header Files Check", "description": "Simple test with `diff`, if header files of student project are same as those of the Arena.\n", "duration": 0.42758679389953613, "score": 0.0, "hint": null, "strict": true, "passed": true, "type": "suite", "render": "normal", "submission": 381097, "parent": null}, {"id": 11076458, "title": "bmp.h", "description": null, "duration": 0.21065640449523926, "score": null, "hint": null, "strict": false, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076457}, {"id": 11076459, "title": "transformations.h", "description": null, "duration": 0.21693038940429688, "score": null, "hint": null, "strict": false, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076457}, {"id": 11076460, "title": "Compilation", "description": "Compiles your code with the following command:\n`gcc -c -std=c11 -Wall -Werror -Wconversion main.c bmp.c transformations.c -lm`\n", "duration": 0.6994261741638184, "score": null, "hint": null, "strict": true, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": null}, {"id": 11076461, "title": "Makefile Checks", "description": null, "duration": 0.8818528652191162, "score": 0.0, "hint": null, "strict": true, "passed": true, "type": "suite", "render": "normal", "submission": 381097, "parent": null}, {"id": 11076462, "title": "make all", "description": "Test target \"all\"", "duration": 0.21406769752502441, "score": null, "hint": null, "strict": false, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076461}, {"id": 11076463, "title": "make clean", "description": "Test target \"clean\"", "duration": 0.1918644905090332, "score": null, "hint": null, "strict": false, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076461}, {"id": 11076464, "title": "make bmp", "description": "Test target \"bmp\"", "duration": 0.22202420234680176, "score": null, "hint": null, "strict": false, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076461}, {"id": 11076465, "title": "make transformations", "description": "Test target \"transformations\"", "duration": 0.25389647483825684, "score": null, "hint": null, "strict": false, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076461}, {"id": 11076466, "title": "BMP Module", "description": "Tests of BMP module.", "duration": 15.458077669143677, "score": 13.0, "hint": null, "strict": false, "passed": false, "type": "suite", "render": "normal", "submission": 381097, "parent": null}, {"id": 11076467, "title": "Suite `read_bmp_header()`", "description": null, "duration": 10.256937980651855, "score": 9.5, "hint": null, "strict": false, "passed": true, "type": "suite", "render": "normal", "submission": 381097, "parent": 11076466}, {"id": 11076468, "title": "Dry Run", "description": "Given the `NULL` stream\nWhen the function is called\nThen `NULL` must be returned.\n", "duration": 0.18782997131347656, "score": 0.5, "hint": null, "strict": true, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076467}, {"id": 11076469, "title": "Valid Type - Unit Test", "description": "Given the valid BMP stream\nWhen the function is called\nThen the header type must be `BM`\n", "duration": 0.2753760814666748, "score": 0.5, "hint": null, "strict": true, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076467}, {"id": 11076470, "title": "Valid Type - Valgrind", "description": null, "duration": 1.2805774211883545, "score": 1.0, "hint": null, "strict": false, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076467}, {"id": 11076471, "title": "Valid Width and Height - Unit Test", "description": "Given the valid BMP stream\nWhen the function is invoked\nThen the image width must be valid\nAnd the image height must be valid\n", "duration": 0.26457643508911133, "score": 0.5, "hint": null, "strict": true, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076467}, {"id": 11076472, "title": "Valid Width and Height - Valgrind", "description": null, "duration": 1.354297399520874, "score": 1.0, "hint": null, "strict": false, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076467}, {"id": 11076473, "title": "Invalid Stream - Unit Test", "description": "Given invalid BMP stream\nWhen the function is invoked\nThen `NULL` must be returned.\n", "duration": 0.24087119102478027, "score": 0.5, "hint": null, "strict": true, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076467}, {"id": 11076474, "title": "Not a BMP Stream - Valgrind", "description": null, "duration": 1.550612211227417, "score": 1.0, "hint": null, "strict": false, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076467}, {"id": 11076475, "title": "Stream not at the Beginning - Unit Test", "description": "Given a valid BMP stream\nAnd file position indicator is set somewhere in the file\nWhen the function is invoked\nThen function can't return `NULL`.\n", "duration": 0.2555983066558838, "score": 0.5, "hint": null, "strict": true, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076467}, {"id": 11076476, "title": "Stream not at the Beginning - Valgrind", "description": null, "duration": 1.3348360061645508, "score": 1.0, "hint": null, "strict": false, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076467}, {"id": 11076477, "title": "Size of the File - Unit Test", "description": "Given the valid BMP stream\nWhen function is invoked\nThen valid file size must be read\n", "duration": 0.27825212478637695, "score": 0.5, "hint": null, "strict": true, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076467}, {"id": 11076478, "title": "Size of the File - Valgrind", "description": null, "duration": 1.4233107566833496, "score": 1.0, "hint": null, "strict": false, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076467}, {"id": 11076479, "title": "Test Content of Populated Header - Unit Test", "description": "Given the stream with BMP image\nWhen function is called\nThen return populated header.\n", "duration": 0.3343067169189453, "score": 0.5, "hint": null, "strict": true, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076467}, {"id": 11076480, "title": "Test Content of Populated Header - Valgrind", "description": null, "duration": 1.4764933586120605, "score": 1.0, "hint": null, "strict": false, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076467}, {"id": 11076481, "title": "Suite `read_bmp_data()`", "description": null, "duration": 0.8235154151916504, "score": 1.5, "hint": null, "strict": false, "passed": false, "type": "suite", "render": "normal", "submission": 381097, "parent": 11076466}, {"id": 11076482, "title": "Dry Run", "description": "When the function is called with `NULL` stream\nAND `NULL` header\nThen `NULL` will be returned.\n", "duration": 0.30697154998779297, "score": 0.5, "hint": null, "strict": true, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076481}, {"id": 11076483, "title": "Wrong Position in Stream", "description": "Given the stream valid BMP image\nAnd the position in stream is not in the beginning\nWhen the function is called\nThen it should not return `NULL`.\n", "duration": 0.24922633171081543, "score": 1.0, "hint": null, "strict": true, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076481}, {"id": 11076484, "title": "Test Content of Data - Unit Test", "description": "Given the valid BMP stream\nAnd the position in file is correct\nAnd valid header\nWhen the function is called\nThen data should be read.\n", "duration": 0.267317533493042, "score": 0.0, "hint": null, "strict": true, "passed": false, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076481}, {"id": 11076485, "title": "Suite `read_bmp()`", "description": null, "duration": 0.9061264991760254, "score": 1.5, "hint": null, "strict": false, "passed": false, "type": "suite", "render": "normal", "submission": 381097, "parent": 11076466}, {"id": 11076486, "title": "Dry Run", "description": "Given the `NULL` stream\nWhen the function is called\nThen `NULL` will be returned.\n", "duration": 0.3282277584075928, "score": 0.5, "hint": null, "strict": true, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076485}, {"id": 11076487, "title": "Invalid Stream", "description": "Given an invalid BMP stream,\nWhen function is invoked\nThen it should return `NULL`\nAnd write `Error: This is not a BMP file.` to `stderr`.\n", "duration": 0.2745206356048584, "score": 1.0, "hint": null, "strict": true, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076485}, {"id": 11076488, "title": "Content of BMP File - Unit Test", "description": "Given the valid BMP stream\nWhen the function is called\nThen `struct bmp_image` should be created with valid header and data.\n", "duration": 0.3033781051635742, "score": 0.0, "hint": null, "strict": true, "passed": false, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076485}, {"id": 11076489, "title": "Suite `free_bmp_image()`", "description": null, "duration": 2.3967645168304443, "score": 0.5, "hint": null, "strict": false, "passed": false, "type": "suite", "render": "normal", "submission": 381097, "parent": 11076466}, {"id": 11076490, "title": "Dry Run", "description": "Given the image with single or both `NULL` elements,\nWhen the function is called with such image or `NULL` image,\nThen function must free at least existing elements and must pass.\n", "duration": 0.5608985424041748, "score": 0.0, "hint": null, "strict": false, "passed": false, "type": "suite", "render": "normal", "submission": 381097, "parent": 11076489}, {"id": 11076491, "title": "Dry Run - Unit Test", "description": null, "duration": 0.5608985424041748, "score": 0.0, "hint": null, "strict": true, "passed": false, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076490}, {"id": 11076492, "title": "Free Image - Unit Test", "description": "Given the BMP image,\nWhen the function is called,\nThen the image must be freed from the memory.\n", "duration": 0.2803158760070801, "score": 0.5, "hint": null, "strict": true, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076489}, {"id": 11076493, "title": "Free Image - Valgrind", "description": null, "duration": 1.5555500984191895, "score": 0.0, "hint": null, "strict": false, "passed": false, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076489}, {"id": 11076494, "title": "Module Transformations", "description": "Tests for module Transformations.", "duration": 5.837414979934692, "score": 2.0, "hint": null, "strict": false, "passed": false, "type": "suite", "render": "normal", "submission": 381097, "parent": null}, {"id": 11076495, "title": "Suite `flip_horizontally()`", "description": null, "duration": 0.9196789264678955, "score": 0.5, "hint": null, "strict": false, "passed": false, "type": "suite", "render": "normal", "submission": 381097, "parent": 11076494}, {"id": 11076496, "title": "Dry Run Test", "description": "When the function is called with `NULL` image,\nThen `NULL` will be returned.\n", "duration": 0.40865397453308105, "score": 0.5, "hint": null, "strict": true, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076495}, {"id": 11076497, "title": "New Image", "description": "Given the BMP Image\nWhen the function is called\nThen returned image is not `NULL`\nand returned image is different than the given one.\n", "duration": 0.5110249519348145, "score": 0.0, "hint": null, "strict": true, "passed": false, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076495}, {"id": 11076498, "title": "Suite `flip_vertically()`", "description": null, "duration": 0.8437008857727051, "score": 0.5, "hint": null, "strict": false, "passed": false, "type": "suite", "render": "normal", "submission": 381097, "parent": 11076494}, {"id": 11076499, "title": "Dry Run Test", "description": "When the function is called with `NULL` image,\nThen `NULL` will be returned.\n", "duration": 0.31569886207580566, "score": 0.5, "hint": null, "strict": true, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076498}, {"id": 11076500, "title": "New Image", "description": "Given the BMP Image\nWhen the function is called\nThen returned image is not `NULL`\nand returned image is different than the given one.\n", "duration": 0.5280020236968994, "score": 0.0, "hint": null, "strict": true, "passed": false, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076498}, {"id": 11076501, "title": "Suite `rotate_right()`", "description": null, "duration": 0.7918825149536133, "score": 0.5, "hint": null, "strict": false, "passed": false, "type": "suite", "render": "normal", "submission": 381097, "parent": 11076494}, {"id": 11076502, "title": "Dry Run Test", "description": "When the function is called with `NULL` image,\nThen `NULL` will be returned.\n", "duration": 0.30101704597473145, "score": 0.5, "hint": null, "strict": true, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076501}, {"id": 11076503, "title": "New Image", "description": "Given the BMP Image\nWhen the function is called\nThen returned image is not `NULL`\nand returned image is different than the given one.\n", "duration": 0.49086546897888184, "score": 0.0, "hint": null, "strict": true, "passed": false, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076501}, {"id": 11076504, "title": "Suite `rotate_left()`", "description": null, "duration": 0.7940866947174072, "score": 0.5, "hint": null, "strict": false, "passed": false, "type": "suite", "render": "normal", "submission": 381097, "parent": 11076494}, {"id": 11076505, "title": "Dry Run Test", "description": "When the function is called with `NULL` image,\nThen `NULL` will be returned.\n", "duration": 0.30568385124206543, "score": 0.5, "hint": null, "strict": true, "passed": true, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076504}, {"id": 11076506, "title": "New Image", "description": "Given the BMP Image\nWhen the function is called\nThen returned image is not `NULL`\nand returned image is different than the given one.\n", "duration": 0.4884028434753418, "score": 0.0, "hint": null, "strict": true, "passed": false, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076504}, {"id": 11076507, "title": "Suite `crop()`", "description": null, "duration": 0.2599294185638428, "score": 0.0, "hint": null, "strict": false, "passed": false, "type": "suite", "render": "normal", "submission": 381097, "parent": 11076494}, {"id": 11076508, "title": "Dry Run Test", "description": "When the function is called with `NULL` image,\nThen `NULL` will be returned.\n", "duration": 0.2599294185638428, "score": 0.0, "hint": null, "strict": true, "passed": false, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076507}, {"id": 11076509, "title": "Suite `extract()`", "description": null, "duration": 0.32814669609069824, "score": 0.0, "hint": null, "strict": false, "passed": false, "type": "suite", "render": "normal", "submission": 381097, "parent": 11076494}, {"id": 11076510, "title": "Dry Run Test", "description": "Given the `NULL` image\nAnd `NULL` parameter `colors_to_keep`\nWhen the function is called\nThen `NULL` will be returned.\n", "duration": 0.32814669609069824, "score": 0.0, "hint": null, "strict": true, "passed": false, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076509}, {"id": 11076511, "title": "Suite `scale()`", "description": null, "duration": 0.29159045219421387, "score": 0.0, "hint": null, "strict": false, "passed": false, "type": "suite", "render": "normal", "submission": 381097, "parent": 11076494}, {"id": 11076512, "title": "Dry Run Test", "description": "Given a `NULL` as an image\nAnd random valid scale factor\nWhen the function is called\nThen `NULL` will be returned.\n", "duration": 0.29159045219421387, "score": 0.0, "hint": null, "strict": true, "passed": false, "type": "exec", "render": "normal", "submission": 381097, "parent": 11076511}], "id": 381097, "resource_id": "97b71e8f-99ed-4edb-8f0d-6dec2aecb9a1", "date_submitted": "2021-04-30T17:08:00Z", "date_evaluated": "2021-04-30T18:12:00.368Z", "max_score": 100.0}