<URL: https://rt.cpan.org/Ticket/Display.html?id=54825 >
On Fri Jan 21 06:41:28 2011, JAWNSY wrote: > Reopening for a very quick question: have you considered using > Test::Warn? It will ensure the warnings are emitted, while at the same > time suppressing them from test output. I guess it would be ok to suppress those taint-related warnings from the test suite output (if we can find a satisfactory way of doing that). One way would be to set the config option 'NO_UNTAINT_WARN => 1;' in the test script. However, I'd rather *not* do that in case someone uses that test script as a template, thereby running their scripts with 'NO_UNTAINT_WARN => 1;', totally oblivious to the sorts of things that Inline is doing under the hood. My attempts at using Test::Warn to detect and suppress the warnings have not yet worked: ############################# use warnings; use strict; use Test::More tests => 1; use Test::Warn; use Inline Config => UNTAINT => 1, DIRECTORY => '_Inline_test'; use Inline C => <<'END_OF_C_CODE'; int add(int x, int y) { return x + y; } END_OF_C_CODE warnings_are {add(3,4)} []; ############################# The warnings are issued during Inline's build phase, before the warnings_are() test is run - so I get output of: ############################# 1..1 In Inline::env_untaint() : Blindly untainting tainted fields in %ENV. In Inline::check_config_file(): Blindly untainting Inline configuration file information. In Inline::env_untaint() : Blindly untainting tainted fields in %ENV. In Inline::obj_untaint() : Blindly untainting tainted fields in Inline object. ok 1 ############################# I'll keep looking at this (as time permits) until I either find a way to make it work, or come to an understanding that it can't be made to work. Cheers, Rob