def test_list(): lst = [ {Output.PARAM_PATH: "foo", LocalFileSystem.PARAM_CHECKSUM: "123"}, {Output.PARAM_PATH: "bar", LocalFileSystem.PARAM_CHECKSUM: None}, {Output.PARAM_PATH: "baz"}, ] d = {Stage.PARAM_DEPS: lst} SingleStageFile.validate(d) lst[0][Output.PARAM_CACHE] = True lst[1][Output.PARAM_CACHE] = False d = {Stage.PARAM_OUTS: lst} SingleStageFile.validate(d)
def test_none(): SingleStageFile.validate({Stage.PARAM_DEPS: None}) SingleStageFile.validate({Stage.PARAM_OUTS: None})
def test_empty_list(): d = {Stage.PARAM_DEPS: []} SingleStageFile.validate(d) d = {Stage.PARAM_OUTS: []} SingleStageFile.validate(d)
def test_cmd_str(): SingleStageFile.validate({Stage.PARAM_CMD: "cmd"})
def test_object(): with pytest.raises(YAMLValidationError): SingleStageFile.validate({Stage.PARAM_DEPS: {}}) with pytest.raises(YAMLValidationError): SingleStageFile.validate({Stage.PARAM_OUTS: {}})
def test_no_cmd(): SingleStageFile.validate({})
def test_cmd_none(): SingleStageFile.validate({Stage.PARAM_CMD: None})
def test_cmd_obj(): with pytest.raises(YAMLValidationError): SingleStageFile.validate({Stage.PARAM_CMD: {}})
def test_object(): with pytest.raises(StageFileFormatError): SingleStageFile.validate({Stage.PARAM_DEPS: {}}) with pytest.raises(StageFileFormatError): SingleStageFile.validate({Stage.PARAM_OUTS: {}})
def test_cmd_obj(): with pytest.raises(StageFileFormatError): SingleStageFile.validate({Stage.PARAM_CMD: {}})