Files
dataset-uploader/features/upload_datasets/utility_functions.feature

83 lines
2.6 KiB
Gherkin

Feature: Utility Functions
As a developer
I want utility functions to work correctly
So that dataset processing is reliable
Scenario: Map valid HuggingFace license
When I map license "MIT"
Then the license should be "mit"
Scenario: Map unknown license to other
When I map license "Custom License"
Then the license should be "other"
Scenario: Map None license to other
When I map license None
Then the license should be "other"
Scenario: Get size category for tiny dataset
When I get size category for 0.005 GB
Then the size category should be "n<1K"
Scenario: Get size category for small dataset
When I get size category for 0.5 GB
Then the size category should be "1K<n<10K"
Scenario: Get size category for medium dataset
When I get size category for 5 GB
Then the size category should be "10K<n<100K"
Scenario: Get size category for large dataset
When I get size category for 50 GB
Then the size category should be "100K<n<1M"
Scenario: Get size category for xlarge dataset
When I get size category for 500 GB
Then the size category should be "1M<n<10M"
Scenario: Get RDF format for turtle
When I get RDF format for "turtle"
Then the format should be "turtle"
Scenario: Get RDF format for RDF/XML
When I get RDF format for "rdf/xml"
Then the format should be "xml"
Scenario: Get RDF format for N-Triples
When I get RDF format for "nt"
Then the format should be "nt"
Scenario: Get RDF format for unknown format
When I get RDF format for "unknown"
Then the format should be "turtle"
Scenario: Get dataset info for valid dataset
When I get dataset info for "wordnet"
Then the dataset info should be returned
Scenario: Get dataset info for invalid dataset
When I get dataset info for "invalid-dataset-xyz"
Then the dataset info should be None
Scenario: Create dataset card
When I create dataset card for "wordnet"
Then the card should contain dataset name
And the card should contain license information
And the card should contain format documentation
Scenario: Get most recent file in directory
Given a directory with multiple files
When I get the most recent file
Then the newest file should be returned
Scenario: Get most recent file in empty directory
Given an empty directory
When I get the most recent file
Then None should be returned
Scenario: Get RDF format documentation
When I get format documentation for "wordnet"
Then the documentation should contain schema information
And the documentation should contain example code