diff options
author | Ivan Kanakarakis <ivan.kanak@gmail.com> | 2018-09-04 04:22:47 +0300 |
---|---|---|
committer | Ivan Kanakarakis <ivan.kanak@gmail.com> | 2018-09-04 04:22:47 +0300 |
commit | a76cd33908fd01b23ee2aa139a3c9fc069bcf15a (patch) | |
tree | 64abce6d5f4b6fbc2e58203ed462ffba6f4aa940 /tests | |
parent | 92a1faa26848a0711bce54ada086e885745952c0 (diff) | |
download | pysaml2-a76cd33908fd01b23ee2aa139a3c9fc069bcf15a.tar.gz |
Update test cases for set_text method
Signed-off-by: Ivan Kanakarakis <ivan.kanak@gmail.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/test_02_saml.py | 53 |
1 files changed, 43 insertions, 10 deletions
diff --git a/tests/test_02_saml.py b/tests/test_02_saml.py index 2e9c33ee..66306502 100644 --- a/tests/test_02_saml.py +++ b/tests/test_02_saml.py @@ -230,22 +230,55 @@ class TestSAMLBase: assert "saml:AttributeValue" in nsstr assert "saml:AttributeValue" not in txt - def test_set_text(self): + def test_set_text_empty(self): + av = AttributeValue() + av.set_text(None) + assert av.get_type() == '' + assert av.text == '' + + def test_set_text_value(self): + value = 123 + av = AttributeValue(value) + assert av.get_type() == 'xs:integer' + assert av.text == str(value) + + def test_set_text_update_same_type(self): av = AttributeValue() av.set_text(True) - assert av.text == "true" + assert av.get_type() == 'xs:boolean' + assert av.text == 'true' av.set_text(False) - assert av.text == "false" - # can't change value to another type - raises(AssertionError, "av.set_text(491)") + assert av.get_type() == 'xs:boolean' + assert av.text == 'false' + def test_set_text_cannot_change_value_type(self): av = AttributeValue() - av.set_text(None) - assert av.text == "" - + av.set_text(True) + assert av.get_type() == 'xs:boolean' + assert av.text == 'true' + with raises(ValueError): + av.set_text(123) + assert av.get_type() == 'xs:boolean' + assert av.text == 'true' + + def test_set_xs_type_anytype_unchanged_value(self): + av = AttributeValue() + av.set_type('xs:anyType') + for value in [ + [1, 2, 3], + {'key': 'value'}, + True, + 123, + ]: + av.set_text(value) + # the value is unchanged + assert av.text == value + + def test_set_invalid_type_before_text(self): av = AttributeValue() - av.set_type('invalid') - raises(ValueError, "av.set_text('free text')") + av.set_type('invalid-type') + with raises(ValueError): + av.set_text('foobar') def test_make_vals_div(self): foo = saml2.make_vals(666, AttributeValue, part=True) |