def test_register_existing(collection, session): """Test the behavior of AraDefinitionCollection.register() on a registered AraDefinition""" # Given project_id = '6b608f78-e341-422c-8076-35adc8828545' # table_config = TableConfigResponseDataFactory() # config_uid = table_config["definition_id"] table_config = TableConfig(name="name", description="description", datasets=[], rows=[], variables=[], columns=[], definition_uid = UUID('6b608f78-e341-422c-8076-35adc8828545')) table_config_response = TableConfigResponseDataFactory() defn_uid = table_config_response["definition"]["id"] ver_uid = table_config_response["version"]["id"] session.set_response(table_config_response) # When registered = collection.register(table_config) assert registered.definition_uid == UUID(defn_uid) assert registered.version_uid == UUID(ver_uid) assert session.num_calls == 1 # Ensure we PUT if we were called with a table config id assert session.last_call.method == "PUT" assert session.last_call.path == "projects/{}/ara-definitions/6b608f78-e341-422c-8076-35adc8828545".format(project_id)
def test_get_table_config(collection, session): """Get table config, with or without version""" # Given project_id = '6b608f78-e341-422c-8076-35adc8828545' table_config_response = TableConfigResponseDataFactory() session.set_response(table_config_response) defn_id = table_config_response["definition"]["id"] ver_number = table_config_response["version"]["version_number"] # When retrieved_table_config: TableConfig = collection.get(defn_id, ver_number) # Then assert 1 == session.num_calls expect_call = FakeCall( method="GET", path="projects/{}/ara-definitions/{}/versions/{}".format( project_id, defn_id, ver_number)) assert session.last_call == expect_call assert str(retrieved_table_config.config_uid) == defn_id assert retrieved_table_config.version_number == ver_number # Given table_configs_response = ListTableConfigResponseDataFactory() defn_id = table_configs_response["definition"]["id"] version_number = max([ version_dict["version_number"] for version_dict in table_configs_response["versions"] ]) session.set_response(table_configs_response) # When retrieved_table_config: TableConfig = collection.get(defn_id) # Then assert 2 == session.num_calls expect_call = FakeCall(method="GET", path="projects/{}/ara-definitions/{}".format( project_id, defn_id)) assert session.last_call == expect_call assert str(retrieved_table_config.config_uid) == defn_id assert retrieved_table_config.version_number == version_number
def test_get_table_config_metadata(collection, session): """Get with version gets TBD""" # Given project_id = '6b608f78-e341-422c-8076-35adc8828545' table_config_response = TableConfigResponseDataFactory() session.set_response(table_config_response) defn_id = table_config_response["definition"]["id"] ver_number = table_config_response["version"]["version_number"] # When retrieved_table_config: AraDefinition = collection.get_with_version(defn_id, ver_number) # Then assert 1 == session.num_calls expect_call = FakeCall( method="GET", path="projects/{}/ara-definitions/{}/versions/{}".format(project_id, defn_id, ver_number) ) assert session.last_call == expect_call assert str(retrieved_table_config.config_uid) == defn_id assert retrieved_table_config.version_number == ver_number
def _table_config(): return AraDefinition.build(TableConfigResponseDataFactory())
def _table_config(): return TableConfig.build(TableConfigResponseDataFactory())