use strict; use warnings; use autodie; use Test::More; use Text::Upmake; BEGIN { use_ok('Text::Upmake::MSBuild'); } my $sources = [qw(file1.cpp file2.cpp fileNew.cpp)]; my $headers = [qw(file1.h file2.h fileNew.h)]; open my $out, '>', \my $outstr; update_msbuild(*DATA, $out, $sources, $headers); note("Result: $outstr"); like($outstr, qr/file1\.cpp/, 'existing source file was preserved'); like($outstr, qr/fileNew\.cpp/m, 'new source file was added'); unlike($outstr, qr/fileOld\.cpp/, 'old source file was removed'); unlike($outstr, qr/file3\.h/, 'old header was removed'); like($outstr, qr/fileNew\.h/, 'new header was added'); done_testing() __DATA__ Debug Win32 Create