raubatz's picture
download
raw
2.27 kB
import pytest
from src.basic_data_handling.casting_nodes import (CastToString, CastToInt, CastToFloat, CastToBoolean,
CastToList, CastToSet, CastToDict)
def test_cast_to_string():
node = CastToString()
assert node.convert_to_string(123) == ("123",)
assert node.convert_to_string(None) == ("None",)
assert node.convert_to_string(True) == ("True",)
assert node.convert_to_string("hello") == ("hello",)
def test_cast_to_int():
node = CastToInt()
assert node.convert_to_int("123") == (123,)
assert node.convert_to_int(456) == (456,)
with pytest.raises(ValueError):
node.convert_to_int("abc")
with pytest.raises(ValueError):
node.convert_to_int(None)
def test_cast_to_float():
node = CastToFloat()
assert node.convert_to_float("123.45") == (123.45,)
assert node.convert_to_float(67.89) == (67.89,)
assert node.convert_to_float(123) == (123.0,)
with pytest.raises(ValueError):
node.convert_to_float("abc")
with pytest.raises(ValueError):
node.convert_to_float(None)
def test_cast_to_boolean():
node = CastToBoolean()
assert node.convert_to_boolean(0) == (False,)
assert node.convert_to_boolean(1) == (True,)
assert node.convert_to_boolean("") == (False,)
assert node.convert_to_boolean("non_empty_string") == (True,)
def test_cast_to_list():
node = CastToList()
assert node.convert_to_list(123) == ([123],)
assert node.convert_to_list([1, 2, 3]) == ([1, 2, 3],)
assert node.convert_to_list("hello") == (["hello"],)
assert node.convert_to_list(None) == ([None],)
def test_cast_to_set():
node = CastToSet()
assert node.convert_to_set(123) == ({123},)
assert node.convert_to_set([1, 2, 2]) == ({1, 2},)
assert node.convert_to_set("abc") == ({"abc"},)
assert node.convert_to_set(None) == ({None},)
def test_cast_to_dict():
node = CastToDict()
assert node.convert_to_dict({"key": "value"}) == ({"key": "value"},)
assert node.convert_to_dict([("key1", "value1"), ("key2", "value2")]) == ({"key1": "value1", "key2": "value2"},)
with pytest.raises(ValueError):
node.convert_to_dict(123)
with pytest.raises(ValueError):
node.convert_to_dict("string")

Xet Storage Details

Size:
2.27 kB
·
Xet hash:
87ae589be8a783f611805666bbd07fcf678bf887d19ea59023fda85188a390fc

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.