def test_network_with_no_usages():
    """
    Test given network with no usages element, the usages attribute is None.
    """
    reader = XmlReader(make_buffer('<network/>'))
    result = NetworkReader.read_one(reader)
    reader.close()

    assert_is_none(result.usages)
def test_network_with_no_usages():
    """
    Test given network with no usages element, the usages attribute is None.
    """
    reader = XmlReader(make_buffer('<network/>'))
    result = NetworkReader.read_one(reader)
    reader.close()

    assert_is_none(result.usages)
def test_network_with_empty_usages():
    """
    Test given network with empty usages element, the usages attribute is empty list.
    """
    reader = XmlReader(make_buffer('<network><usages/></network>'))
    result = NetworkReader.read_one(reader)
    reader.close()

    assert_true(isinstance(result.usages, list))
    assert_equals(len(result.usages), 0)
def test_network_with_empty_usages():
    """
    Test given network with empty usages element, the usages attribute is empty list.
    """
    reader = XmlReader(make_buffer('<network><usages/></network>'))
    result = NetworkReader.read_one(reader)
    reader.close()

    assert_true(isinstance(result.usages, list))
    assert_equals(len(result.usages), 0)
def test_network_with_one_usages():
    """
    Test given network with no usages element, the usages attribute is None.
    """
    reader = XmlReader(
        make_buffer('<network><usages><usage>vm</usage></usages></network>'))
    result = NetworkReader.read_one(reader)
    reader.close()

    assert_true(isinstance(result.usages, list))
    assert_equals(len(result.usages), 1)
    assert_equals(result.usages[0], types.NetworkUsage.VM)
def test_unsupported_usage_dont_raise_exception():
    """
    Test when given network with unsupported usage element,
    it don't raise exception.
    """
    reader = XmlReader(
        make_buffer('<network>' + '<usages>' + '<usage>ugly</usage>' +
                    '<usage>display</usage>' + '</usages>' + '</network>'))
    result = NetworkReader.read_one(reader)
    reader.close()

    assert_true(isinstance(result.usages, list))
    assert_equals(len(result.usages), 2)
    assert_is_none(result.usages[0])
    assert_equals(result.usages[1], types.NetworkUsage.DISPLAY)
def test_network_with_one_usages():
    """
    Test given network with no usages element, the usages attribute is None.
    """
    reader = XmlReader(
        make_buffer(
            '<network><usages><usage>vm</usage></usages></network>'
        )
    )
    result = NetworkReader.read_one(reader)
    reader.close()

    assert_true(isinstance(result.usages, list))
    assert_equals(len(result.usages), 1)
    assert_equals(result.usages[0], types.NetworkUsage.VM)
def test_unsupported_usage_dont_raise_exception():
    """
    Test when given network with unsupported usage element,
    it don't raise exception.
    """
    reader = XmlReader(
        make_buffer(
            '<network>' +
            '<usages>' +
            '<usage>ugly</usage>' +
            '<usage>display</usage>' +
            '</usages>' +
            '</network>'
        )
    )
    result = NetworkReader.read_one(reader)
    reader.close()

    assert_true(isinstance(result.usages, list))
    assert_equals(len(result.usages), 2)
    assert_is_none(result.usages[0])
    assert_equals(result.usages[1], types.NetworkUsage.DISPLAY)