コード例 #1
0
    def test_http_filesystem_no_versioning(self):
        pattern = r"HTTP\(s\) DataSet doesn't support versioning\."

        with pytest.raises(DataSetError, match=pattern):
            JSONDataSet(
                filepath="https://example.com/file.json", version=Version(None, None)
            )
コード例 #2
0
ファイル: test_json_dataset.py プロジェクト: watilde/kedro
    def test_version_str_repr(self, load_version, save_version):
        """Test that version is in string representation of the class instance
        when applicable."""
        filepath = "test.json"
        ds = JSONDataSet(filepath=filepath)
        ds_versioned = JSONDataSet(filepath=filepath,
                                   version=Version(load_version, save_version))
        assert filepath in str(ds)
        assert "version" not in str(ds)

        assert filepath in str(ds_versioned)
        ver_str = "version=Version(load={}, save='{}')".format(
            load_version, save_version)
        assert ver_str in str(ds_versioned)
        assert "JSONDataSet" in str(ds_versioned)
        assert "JSONDataSet" in str(ds)
        assert "protocol" in str(ds_versioned)
        assert "protocol" in str(ds)
コード例 #3
0
    def test_protocol_usage(self, filepath, instance_type):
        data_set = JSONDataSet(filepath=filepath)
        assert isinstance(data_set._fs, instance_type)

        # _strip_protocol() doesn't strip http(s) protocol
        if data_set._protocol == "https":
            path = filepath.split("://")[-1]
        else:
            path = data_set._fs._strip_protocol(filepath)

        assert str(data_set._filepath) == path
        assert isinstance(data_set._filepath, PurePosixPath)
コード例 #4
0
ファイル: test_json_dataset.py プロジェクト: watilde/kedro
def versioned_json_data_set(filepath_json, load_version, save_version):
    return JSONDataSet(filepath=filepath_json,
                       version=Version(load_version, save_version))
コード例 #5
0
ファイル: test_json_dataset.py プロジェクト: watilde/kedro
def json_data_set(filepath_json, load_args, save_args):
    return JSONDataSet(filepath=filepath_json,
                       load_args=load_args,
                       save_args=save_args)
コード例 #6
0
ファイル: test_json_dataset.py プロジェクト: watilde/kedro
 def test_catalog_release(self, mocker):
     fs_mock = mocker.patch("fsspec.filesystem").return_value
     filepath = "test.json"
     data_set = JSONDataSet(filepath=filepath)
     data_set.release()
     fs_mock.invalidate_cache.assert_called_once_with(filepath)
コード例 #7
0
ファイル: test_json_dataset.py プロジェクト: watilde/kedro
 def test_filepath(self):
     data_set = JSONDataSet(filepath="/tmp/test.json")
     assert isinstance(data_set._filepath, PurePosixPath)
コード例 #8
0
ファイル: test_json_dataset.py プロジェクト: watilde/kedro
 def test_protocol_usage(self, filepath, instance_type):
     data_set = JSONDataSet(filepath=filepath)
     assert isinstance(data_set._fs, instance_type)
     assert str(
         data_set._filepath) == data_set._fs._strip_protocol(filepath)