File tree Expand file tree Collapse file tree 4 files changed +31
-3
lines changed
Wikibase-Datatype-Value-Monolingual Expand file tree Collapse file tree 4 files changed +31
-3
lines changed Original file line number Diff line number Diff line change 110.37
22 - Error message change: Rename error message for check_language() helper.
3+ - Add $Wikibase::Datatype::Utils::SKIP_CHECK_LANG variable to skip check of
4+ Wikibase languages which are supported.
35 - Remove obsolete error message in doc for check_language() helper.
46
570.36 2025-01-01T22:02:29+01:00
Original file line number Diff line number Diff line change @@ -13,6 +13,8 @@ use Readonly;
1313Readonly::Array our @EXPORT_OK => qw( check_datetime check_entity check_language
1414 check_lexeme check_property check_sense) ;
1515
16+ our $SKIP_CHECK_LANG => 0;
17+
1618our $VERSION = 0.37;
1719
1820sub check_datetime {
@@ -77,7 +79,7 @@ sub check_entity {
7779sub check_language {
7880 my ($self , $key ) = @_ ;
7981
80- if (none { $_ eq $self -> {$key } } all_language_codes()) {
82+ if (! $SKIP_CHECK_LANG && none { $_ eq $self -> {$key } } all_language_codes()) {
8183 err " Language code '" .$self -> {$key }." ' isn't code supported by Wikibase." ;
8284 }
8385
@@ -155,6 +157,14 @@ Wikibase::Datatype::Utils - Wikibase datatype utilities.
155157
156158Datatype utilities for checking of data objects.
157159
160+ =head1 VARIABLES
161+
162+ =head2 C<$SKIP_CHECK_LANG >
163+
164+ Boolean variable to skip check of right language.
165+
166+ Default value is 0, checking is working.
167+
158168=head1 SUBROUTINES
159169
160170=head2 C<check_datetime >
Original file line number Diff line number Diff line change @@ -3,7 +3,7 @@ use warnings;
33
44use English;
55use Error::Pure::Utils qw( clean) ;
6- use Test::More ' tests' => 4 ;
6+ use Test::More ' tests' => 5 ;
77use Test::NoWarnings;
88use Wikibase::Datatype::Utils qw( check_language) ;
99
@@ -35,3 +35,11 @@ $self = {
3535};
3636my $ret = check_language($self , ' key' );
3737is($ret , undef , ' Right language is present.' );
38+
39+ # Test.
40+ $self = {
41+ ' key' => ' xx' ,
42+ };
43+ $Wikibase::Datatype::Utils::SKIP_CHECK_LANG = 1;
44+ $ret = check_language($self , ' key' );
45+ is($ret , undef , ' Not supported language is present without error.' );
Original file line number Diff line number Diff line change @@ -3,7 +3,7 @@ use warnings;
33
44use English;
55use Error::Pure::Utils qw( clean) ;
6- use Test::More ' tests' => 6 ;
6+ use Test::More ' tests' => 7 ;
77use Test::NoWarnings;
88use Unicode::UTF8 qw( decode_utf8) ;
99use Wikibase::Datatype::Value::Monolingual;
@@ -48,3 +48,11 @@ eval {
4848};
4949is($EVAL_ERROR , " Language code 'ger' isn't code supported by Wikibase.\n " ,
5050 " Language code 'ger' isn't code supported by Wikibase." );
51+
52+ # Test.
53+ $Wikibase::Datatype::Utils::SKIP_CHECK_LANG = 1;
54+ $obj = Wikibase::Datatype::Value::Monolingual-> new(
55+ ' language' => ' ger' ,
56+ ' value' => ' foo' ,
57+ );
58+ isa_ok($obj , ' Wikibase::Datatype::Value::Monolingual' );
You can’t perform that action at this time.
0 commit comments