Example #1
0
    def test_create_dataset(self, accesskey, url):
        gas_client = GAS(access_key=accesskey, url=url)
        dataset_name = get_random_dataset_name()

        dataset_client = gas_client.create_dataset(dataset_name)
        assert dataset_client.status.commit_id is None
        assert dataset_client.status.draft_number is None
        assert not dataset_client.status.is_draft
        assert dataset_client.name == dataset_name
        assert dataset_client.dataset_id is not None
        gas_client.get_dataset(dataset_name)

        gas_client.delete_dataset(dataset_name)
Example #2
0
    def test_rename_dataset(self, accesskey, url):
        gas_client = GAS(access_key=accesskey, url=url)
        dataset_name = get_random_dataset_name()
        dataset_client = gas_client.create_dataset(dataset_name)
        dataset_client.create_draft("v_test")
        dataset_client.commit(message="Test", tag="V1")

        new_dataset_name = get_random_dataset_name()
        gas_client.rename_dataset(name=dataset_name, new_name=new_dataset_name)
        with pytest.raises(GASDatasetError):
            gas_client.get_dataset(dataset_name)
        gas_client.get_dataset(new_dataset_name)

        gas_client.delete_dataset(new_dataset_name)
Example #3
0
    def test_create_dataset_with_region(self, accesskey, url):
        gas_client = GAS(access_key=accesskey, url=url)
        regions = ("beijing", "hangzhou", "shanghai")

        for region in regions:
            dataset_name = get_random_dataset_name()
            gas_client.create_dataset(dataset_name, region=region)
            gas_client.get_dataset(dataset_name)

            gas_client.delete_dataset(dataset_name)

        region = "guangzhou"
        dataset_name = get_random_dataset_name()
        with pytest.raises(GASResponseError):
            gas_client.create_dataset(dataset_name, region=region)
Example #4
0
    def test_delete_dataset(self, accesskey, url):
        gas_client = GAS(access_key=accesskey, url=url)
        dataset_name_1 = get_random_dataset_name()
        gas_client.create_dataset(dataset_name_1)

        gas_client.delete_dataset(dataset_name_1)
        with pytest.raises(GASDatasetError):
            gas_client.get_dataset(dataset_name_1)

        dataset_name_2 = get_random_dataset_name()
        dataset_client_2 = gas_client.create_dataset(dataset_name_2)
        dataset_client_2.create_draft("v_test")
        dataset_client_2.commit(message="Test", tag="V1")
        gas_client.delete_dataset(dataset_name_2)
        with pytest.raises(GASDatasetError):
            gas_client.get_dataset(dataset_name_2)
Example #5
0
    def test_create_dataset(self, accesskey, url, dataset_client, job):
        job.update()
        job.create_dataset("search_dataset")
        gas_client = GAS(access_key=accesskey, url=url)

        search_dataset = gas_client.get_dataset("search_dataset", True)

        search_dataset_segment = search_dataset.get_or_create_segment("test")
        assert (search_dataset_segment.get_sensors() ==
                dataset_client.get_segment("test").get_sensors())

        search_dataset_frames = search_dataset_segment.list_frames()
        assert len(search_dataset_frames) == 1
        search_dataset_data = search_dataset_frames[0]["CAM_BACK_RIGHT"]
        assert search_dataset_data.path == "test_CAM_BACK_RIGHT.txt"
        assert search_dataset_data.label == Label.loads(LABEL_1)
Example #6
0
    def test_get_dataset_to_latest_commit(self, accesskey, url):
        gas_client = GAS(access_key=accesskey, url=url)
        dataset_name = get_random_dataset_name()
        dataset_client = gas_client.create_dataset(dataset_name)
        dataset_client.create_draft("v_test_1")
        dataset_client.commit(message="Test", tag="V1")
        dataset_client.create_draft("v_test_2")
        dataset_client.commit(message="Test", tag="V2")
        v2_commit_id = dataset_client.status.commit_id

        dataset_client = gas_client.get_dataset(dataset_name)
        assert dataset_client.status.commit_id == v2_commit_id
        assert dataset_client.status.draft_number is None
        assert dataset_client.name == dataset_name
        assert dataset_client.dataset_id is not None

        gas_client.delete_dataset(dataset_name)
Example #7
0
def get_dataset_client(
    gas: GAS, tbrn_info: TBRN, is_fusion: Optional[bool] = None
) -> DatasetClientType:
    """Get the dataset client with any type and its version info.

    Arguments:
        gas: The gas client.
        tbrn_info: The tbrn of the resource.
        is_fusion: Whether the dataset is a fusion dataset, True for fusion dataset.

    Returns:
        The dataset client and its version info.

    """
    dataset_client = (
        gas._get_dataset_with_any_type(tbrn_info.dataset_name)  # pylint: disable=protected-access
        if is_fusion is None
        else gas.get_dataset(tbrn_info.dataset_name, is_fusion)
    )
    if tbrn_info.is_draft:
        dataset_client.checkout(draft_number=tbrn_info.draft_number)
    elif tbrn_info.revision is not None:
        dataset_client.checkout(revision=tbrn_info.revision)
    return dataset_client