Fixed:
While this ran, test.txt was unchanged; and the altered text was simply directed to the command line. Couldn't get any modification to work as planned...
So, after more digging around, I tried to rectify the problem thusly:
This block runs without warnings or errors, but instead of the text ($content) being altered and returned to the original file (as the apparent logic/flow would indicate), all in "test.txt" is erased; and the script simply exits.
FWIW, the perldocs were rather confusing/obtuse on all of this...
???
Thanks again
---------- Post updated at 04:20 PM ---------- Previous update was at 04:05 PM ----------
Stop the presses!
Working with something over here. Seems I got confused over handles/content.
Back soon --
---------- Post updated at 04:39 PM ---------- Previous update was at 04:20 PM ----------
Back again.
This time, the code seems better in some regards, but the result is still the same: All content of test.txt is simply erased--
Really confused now...
Hi guys, I hope you can help me with my problem.
I have a text file that contains lines like this:
78 ANGELO -809.05
79 ANGELO2 -5,000.06
I need to find all occurences of amounts that are negative and replace them with x's
78 ANGELO xxxxxxx
79... (4 Replies)
I want to replace a string within a file using perl.
We have a line that gets commented out, and I want to replace that line now matter how it was commented out.
for example, I'd want to replace
###ES=PR1A with ES=PR1A
or
##LJW(9/16/26)ES=PR1A with ES=PR1A
I tried: perl... (4 Replies)
I want to append a decimal number to a string. But I want to restrict the number to only 2 decimal points
for e.g:
my $output = "\n The number is = ";
my $number = 2.3333333;
$output = $output . $number;
But I want the $output as: "The number is = 2.33"; and not 2.3333333
(I do not... (1 Reply)
I have one string
string1=user/password:IP_ADDR:Directory
I need to replace string1 value like store into string2
string2=user password:IP_ADDR:Directory
i.e replace "/" character by '<space>' character
But i wouldn't use any file in the meantime.
Please help me......................... (6 Replies)
Hi All,
I have below file which has data in below format.
#$ | AB_100
| AB_300
()| AB_4
@*(% | AB-789
i want o/p as below format.
| AB_100
| AB_300
| AB_4
| AB-789
So here there is no standard format.
How we can achieve the same in unix ?
Regards, (3 Replies)
Hey everybody. I've got a simple problem but am unsure how to resolve it. I am using a script to edit multiple files at once. Inside the script I am using an sed command to make the changes. My problem is that I can only get it to work for stings that contain a word or words. How can I modify it to... (1 Reply)
Dear Friends,
I want to replace following line with given line.
It should grep/search following string in a file (input.txt)
M/M SRNO: 000M/6200-0362498 COSMETIC PRO MALE FEMALE
Once found it should replace it to following string.
T_DLHNNO: 000M/6200-0362498 ... (7 Replies)
Hallo everybody,
I have a following problem - I'm doing a map funciont to fill in a HTML table and I want to use some radiobutton groups. Unfortunatelly, they are grouped by names, so I have to add some "counter" that will divide one row from another, and I'm using CGI.pm for generating the... (3 Replies)
Hi,
I have a text file where all records come in one line (single line file), each record starts with 'BUCH' and ends with '@&' and if data is not there we get space instead. between '@&' and next record there might be some spaces, now I want to remove those spaces between '@&' and 'BUCH'.
... (4 Replies)
Greetings!
Here's what I believe is a "simple one" for the community tonight ;)
What I'm trying to do is assign a "true/false" value to a variable depending upon whether a named process (some-process) exists; and then test for this value in the succeeding logic. I banged my head against the... (2 Replies)
Discussion started by: LinQ
2 Replies
LEARN ABOUT DEBIAN
test::strict
Test::Strict(3pm) User Contributed Perl Documentation Test::Strict(3pm)NAME
Test::Strict - Check syntax, presence of use strict; and test coverage
SYNOPSIS
"Test::Strict" lets you check the syntax, presence of "use strict;" and presence "use warnings;" in your perl code. It report its results
in standard "Test::Simple" fashion:
use Test::Strict tests => 3;
syntax_ok( 'bin/myscript.pl' );
strict_ok( 'My::Module', "use strict; in My::Module" );
warnings_ok( 'lib/My/Module.pm' );
Module authors can include the following in a t/strict.t and have "Test::Strict" automatically find and check all perl files in a module
distribution:
use Test::Strict;
all_perl_files_ok(); # Syntax ok and use strict;
or
use Test::Strict;
all_perl_files_ok( @mydirs );
"Test::Strict" can also enforce a minimum test coverage the test suite should reach. Module authors can include the following in a
t/cover.t and have "Test::Strict" automatically check the test coverage:
use Test::Strict;
all_cover_ok( 80 ); # at least 80% coverage
or
use Test::Strict;
all_cover_ok( 80, 't/' );
DESCRIPTION
The most basic test one can write is "does it compile ?". This module tests if the code compiles and play nice with "Test::Simple"
modules.
Another good practice this module can test is to "use strict;" in all perl files.
By setting a minimum test coverage through "all_cover_ok()", a code author can ensure his code is tested above a preset level of kwality
throughout the development cycle.
Along with Test::Pod, this module can provide the first tests to setup for a module author.
This module should be able to run under the -T flag for perl >= 5.6. All paths are untainted with the following pattern:
"qr|^([-+@w./:\]+)$|" controlled by $Test::Strict::UNTAINT_PATTERN.
FUNCTIONS
syntax_ok( $file [, $text] )
Run a syntax check on $file by running "perl -c $file" with an external perl interpreter. The external perl interpreter path is stored in
$Test::Strict::PERL which can be modified. You may prefer "use_ok()" from Test::More to syntax test a module. For a module, the path
(lib/My/Module.pm) or the name (My::Module) can be both used.
strict_ok( $file [, $text] )
Check if $file contains a "use strict;" statement. "use Moose" and "use Mouse" are also considered valid.
This is a pretty naive test which may be fooled in some edge cases. For a module, the path (lib/My/Module.pm) or the name (My::Module) can
be both used.
warnings_ok( $file [, $text] )
Check if warnings have been turned on.
If $file is a module, check if it contains a "use warnings;" or "use warnings::..." or "use Moose" or "use Mouse" statement. If the perl
version is <= 5.6, this test is skipped ("use warnings" appeared in perl 5.6).
If $file is a script, check if it starts with "#!...perl -w". If the -w is not found and perl is >= 5.6, check for a "use warnings;" or
"use warnings::..." or "use Moose" or "use Mouse" statement.
This is a pretty naive test which may be fooled in some edge cases. For a module, the path (lib/My/Module.pm) or the name (My::Module) can
be both used.
all_perl_files_ok( [ @directories ] )
Applies "strict_ok()" and "syntax_ok()" to all perl files found in @directories (and sub directories). If no <@directories> is given, the
starting point is one level above the current running script, that should cover all the files of a typical CPAN distribution. A perl file
is *.pl or *.pm or *.t or a file starting with "#!...perl"
If the test plan is defined:
use Test::Strict tests => 18;
all_perl_files_ok();
the total number of files tested must be specified.
You can control which tests are run on each perl site through:
$Test::Strict::TEST_SYNTAX (default = 1)
$Test::Strict::TEST_STRICT (default = 1)
$Test::Strict::TEST_WARNINGS (default = 0)
$Test::Strict::TEST_SKIP (default = []) "Trusted" files to skip
all_cover_ok( [coverage_threshold [, @t_dirs]] )
This will run all the tests in @t_dirs (or current script's directory if @t_dirs is undef) under Devel::Cover and calculate the global test
coverage of the code loaded by the tests. If the test coverage is greater or equal than "coverage_threshold", it is a pass, otherwise it's
a fail. The default coverage threshold is 50 (meaning 50% of the code loaded has been covered by test).
The threshold can be modified through $Test::Strict::COVERAGE_THRESHOLD.
You may want to select which files are selected for code coverage through $Test::Strict::DEVEL_COVER_OPTIONS, see Devel::Cover for the list
of available options. The default is '+ignore,"/Test/Strict"'.
The path to "cover" utility can be modified through $Test::Strict::COVER.
The 50% threshold is a completely arbitrary value, which should not be considered as a good enough coverage.
The total coverage is the return value of "all_cover_ok()".
CAVEATS
For "all_cover_ok()" to work properly, it is strongly advised to install the most recent version of Devel::Cover and use perl 5.8.1 or
above. In the case of a "make test" scenario, "all_perl_files_ok()" re-run all the tests in a separate perl interpreter, this may lead to
some side effects.
SEE ALSO
Test::More, Test::Pod. Test::Distribution, <Test:NoWarnings>
AUTHOR
Pierre Denis, "<pdenis@gmail.com>".
COPYRIGHT
Copyright 2005, 2010 Pierre Denis, All Rights Reserved.
You may use, modify, and distribute this package under the same terms as Perl itself.
perl v5.10.1 2010-02-14 Test::Strict(3pm)