{"action":"created","issue":{"url":"https://api.github.com/repos/ufz/ogs/issues/958","labels_url":"https://api.github.com/repos/ufz/ogs/issues/958/labels{/name}","comments_url":"https://api.github.com/repos/ufz/ogs/issues/958/comments","events_url":"https://api.github.com/repos/ufz/ogs/issues/958/events","html_url":"https://github.com/ufz/ogs/pull/958","id":126842086,"number":958,"title":"Clang Jenkins workflow script with sanitizers","user":{"login":"bilke","id":149656,"avatar_url":"https://avatars.githubusercontent.com/u/149656?v=3","gravatar_id":"","url":"https://api.github.com/users/bilke","html_url":"https://github.com/bilke","followers_url":"https://api.github.com/users/bilke/followers","following_url":"https://api.github.com/users/bilke/following{/other_user}","gists_url":"https://api.github.com/users/bilke/gists{/gist_id}","starred_url":"https://api.github.com/users/bilke/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bilke/subscriptions","organizations_url":"https://api.github.com/users/bilke/orgs","repos_url":"https://api.github.com/users/bilke/repos","events_url":"https://api.github.com/users/bilke/events{/privacy}","received_events_url":"https://api.github.com/users/bilke/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/ufz/ogs/labels/please%20review","name":"please review","color":"d4c5f9"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/ufz/ogs/milestones/3","html_url":"https://github.com/ufz/ogs/milestones/Complete%20test%20and%20QA%20environment.","labels_url":"https://api.github.com/repos/ufz/ogs/milestones/3/labels","id":204529,"number":3,"title":"Complete test and QA environment.","description":"Acceptance or end-to-end tests and QA\r\n---------------------\r\n\r\n**Open to constructive criticism and improvement!**\r\n\r\n\r\nSo far, only the google test framework and the code coverage provide support for unit tests. Although we have some other tests, these are not continuously running.\r\n\r\nTesting of the \"end-to-end\" functionality is an important aspect. With this milestone done, all of the unit tests, acceptance (or end-to-end) tests, their code coverage and simple code analysis for QA (like trailing whitespaces function names and some simple metrics like function lengths) will be provided.\r\n\r\nBased on our experience with OGS5 benchmarks, Lars and I propose the following basis for the testing environment:\r\n - User provides simple shells script to prepare, run and postprocess a benchmark in these three parts: pre(), run(), post().\r\n - These shell scripts are called from a testing application, which collects the output. The testing application can be called in CI environment or by command line.\r\n - The output can be further processed by a web server to publish the results in an illustrative chart (with green/red markers etc.).\r\n\r\nFurther applications include:\r\n - Code coverage of the acceptance tests (together or separately with unit tests)\r\n - Running Doxygen to discover undocumented interfaces.\r\n - Analyse code for simple formatting issues or metrics, like function lengths.\r\n\r\n\r\n---------------------\r\nLater, should the need arise, we could specialise any of the pre(), run() or post() functions for running FEM benchmarks, for example.\r\n\r\nAnother development direction would be to analyse the output of the testing application in a more detailed way, *e.g.* the numerical deviation of an FEM benchmark from the analytical solution.\r\n\r\n---------------------\r\nChangeLog:\r\n31. Oct. 2012 - Meeting Dima and Lars\r\n12. Nov. 2012 - Spell check, Dima\r\n03. Dec. 2012 - Change due dates, because still working on basic libs. Dima","creator":{"login":"endJunction","id":329493,"avatar_url":"https://avatars.githubusercontent.com/u/329493?v=3","gravatar_id":"","url":"https://api.github.com/users/endJunction","html_url":"https://github.com/endJunction","followers_url":"https://api.github.com/users/endJunction/followers","following_url":"https://api.github.com/users/endJunction/following{/other_user}","gists_url":"https://api.github.com/users/endJunction/gists{/gist_id}","starred_url":"https://api.github.com/users/endJunction/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/endJunction/subscriptions","organizations_url":"https://api.github.com/users/endJunction/orgs","repos_url":"https://api.github.com/users/endJunction/repos","events_url":"https://api.github.com/users/endJunction/events{/privacy}","received_events_url":"https://api.github.com/users/endJunction/received_events","type":"User","site_admin":false},"open_issues":6,"closed_issues":8,"state":"open","created_at":"2012-10-31T11:59:55Z","updated_at":"2016-01-15T10:03:31Z","due_on":null,"closed_at":null},"comments":0,"created_at":"2016-01-15T10:03:17Z","updated_at":"2016-01-15T12:25:03Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/ufz/ogs/pulls/958","html_url":"https://github.com/ufz/ogs/pull/958","diff_url":"https://github.com/ufz/ogs/pull/958.diff","patch_url":"https://github.com/ufz/ogs/pull/958.patch"},"body":"Adds Jenkins scripts to compile with clang sanitizers enabled which are run in Docker containers.\r\n\r\nSanitizer errors are shown under *Parsed Console Output* in a run job, e.g. [here](https://svn.ufz.de:8443/job/OGS-6/job/Docker/job/clang-scm/54/parsed_console/).\r\n\r\nCloses #954."},"comment":{"url":"https://api.github.com/repos/ufz/ogs/issues/comments/171947595","html_url":"https://github.com/ufz/ogs/pull/958#issuecomment-171947595","issue_url":"https://api.github.com/repos/ufz/ogs/issues/958","id":171947595,"user":{"login":"endJunction","id":329493,"avatar_url":"https://avatars.githubusercontent.com/u/329493?v=3","gravatar_id":"","url":"https://api.github.com/users/endJunction","html_url":"https://github.com/endJunction","followers_url":"https://api.github.com/users/endJunction/followers","following_url":"https://api.github.com/users/endJunction/following{/other_user}","gists_url":"https://api.github.com/users/endJunction/gists{/gist_id}","starred_url":"https://api.github.com/users/endJunction/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/endJunction/subscriptions","organizations_url":"https://api.github.com/users/endJunction/orgs","repos_url":"https://api.github.com/users/endJunction/repos","events_url":"https://api.github.com/users/endJunction/events{/privacy}","received_events_url":"https://api.github.com/users/endJunction/received_events","type":"User","site_admin":false},"created_at":"2016-01-15T12:25:03Z","updated_at":"2016-01-15T12:25:03Z","body":"In jenkins there is a message\r\n```\r\nNOTE: Some bad parsing rules have been found:\r\nBad parsing rule:\\[*][*][*]Failed\\, Error:1\r\n```\r\nIs it OK?\r\n\r\nRuntime errors and memory leaks are in red :+1: "}}