Add wxIntegerValidatorctor ctor taking minimum and maximum value
Using this ctor is more convenient than using the default ctor and then calling SetMin() and SetMax(). Document the new ctor and add tests showing that minimum and maximum values are actually respected. Closes https://github.com/wxWidgets/wxWidgets/pull/2610
This commit is contained in:
committed by
Vadim Zeitlin
parent
a2389fc512
commit
0fc936ca41
@@ -114,6 +114,40 @@ TEST_CASE_METHOD(NumValidatorTestCase, "ValNum::TransferUnsigned", "[valnum]")
|
||||
CHECK( !valUnsigned.TransferFromWindow() );
|
||||
}
|
||||
|
||||
TEST_CASE_METHOD(NumValidatorTestCase, "ValNum::TransferUnsignedRange", "[valnum]")
|
||||
{
|
||||
unsigned value = 1;
|
||||
wxIntegerValidator<unsigned> valUnsigned(&value, 1, 20);
|
||||
valUnsigned.SetWindow(m_text);
|
||||
|
||||
CHECK( valUnsigned.TransferToWindow() );
|
||||
CHECK( m_text->GetValue() == "1" );
|
||||
|
||||
value = 17;
|
||||
CHECK( valUnsigned.TransferToWindow() );
|
||||
CHECK( m_text->GetValue() == "17" );
|
||||
|
||||
m_text->ChangeValue("foobar");
|
||||
CHECK( !valUnsigned.TransferFromWindow() );
|
||||
|
||||
m_text->ChangeValue("0");
|
||||
CHECK( !valUnsigned.TransferFromWindow() );
|
||||
|
||||
m_text->ChangeValue("1");
|
||||
CHECK( valUnsigned.TransferFromWindow() );
|
||||
CHECK( value == 1);
|
||||
|
||||
m_text->ChangeValue("20");
|
||||
CHECK( valUnsigned.TransferFromWindow() );
|
||||
CHECK( value == 20);
|
||||
|
||||
m_text->ChangeValue("21");
|
||||
CHECK( !valUnsigned.TransferFromWindow() );
|
||||
|
||||
m_text->Clear();
|
||||
CHECK( !valUnsigned.TransferFromWindow() );
|
||||
}
|
||||
|
||||
TEST_CASE_METHOD(NumValidatorTestCase, "ValNum::TransferULL", "[valnum]")
|
||||
{
|
||||
unsigned long long value = 0;
|
||||
|
||||
Reference in New Issue
Block a user