def METHOD_NAME(client, rand_gen):
    # confirm dataset can be created
    name = rand_gen(str)
    dataset = client.create_dataset(name=name)
    assert dataset.name == name
    assert dataset.created_by() == client.get_user()
    assert dataset.organization() == client.get_organization()
    retrieved_dataset = client.get_dataset(dataset.uid)
    assert retrieved_dataset.name == dataset.name
    assert retrieved_dataset.uid == dataset.uid
    assert retrieved_dataset.created_by() == dataset.created_by()
    assert retrieved_dataset.organization() == dataset.organization()
    dataset = client.get_dataset(dataset.uid)
    assert dataset.name == name
    new_name = rand_gen(str)
    dataset.update(name=new_name)
    # Test local object updates.
    assert dataset.name == new_name
    # Test remote updates.
    dataset = client.get_dataset(dataset.uid)
    assert dataset.name == new_name
    # Test description
    description = rand_gen(str)
    assert dataset.description == ""
    dataset.update(description=description)
    assert dataset.description == description
    dataset.delete()
    with pytest.raises(ResourceNotFoundError):
        dataset = client.get_dataset(dataset.uid)