Documentation¶
You can access the basic classes by just importing dammy:
import dammy
- But if you want to add more functionality, there are more modules available.
- Check the documentation page for each module to see the available classes and
functions.
db |
this module contains everything database related, allowing you to create primary keys, foreign keys and autoincrement fields |
exceptions |
This module contains all the custom exceptions used by dammy. |
functions |
This module includes some standard functions to be used on dammy objects |
stdlib |
This module contains some basic and common utilities, such as random generation for person names, countries, integers, strings, dates… |
The main module¶
The classes in the main module are listed below.
-
class
dammy.
BaseGenerator
(sql_equivalent)¶ The base class from which all generators must inherit.
-
generate
(dataset=None)¶ Generate a value and perform a posterior treatment. By default, no treatment is done and generate_raw() is called.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: The value generated by the generator
-
generate_raw
(dataset=None)¶ Generate without posterior treatment. All generators must implement this method. If a generator does not implement this method a NotImplementedError will be raised
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: The value generated by the generator Raises: NotImplementedError
-
iterator
(dataset=None)¶ Get a iterator which generates values and performs a posterior treatment on them. By default, no treatment is done and generate_raw() is called.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: A Python iterator
-
iterator_raw
(dataset=None)¶ Get a generator which generates values without posterior treatment.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: Python generator Raises: NotImplementedError
-
-
class
dammy.
EntityGenerator
¶ The class from which all composite generators must inherit.
Note
All clases inheriting from this class should not have any other methods than the ones listed below, for the sake of consistency.
-
generate
(dataset=None)¶ Generate a value and perform a posterior treatment. By default, no treatment is done and generate_raw() is called.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: The value generated by the generator
-
generate_raw
(dataset=None)¶ Gets all the attributes of the class and generates a new value.
Implementation of the generate_raw() method from BaseGenerator.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: A dict where every key value pair is an attribute and its value Raises: dammy.exceptions.DatasetRequiredException
-
iterator
(dataset=None)¶ Get a iterator which generates values and performs a posterior treatment on them. By default, no treatment is done and generate_raw() is called.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: A Python iterator
-
iterator_raw
(dataset=None)¶ Get a generator which generates values without posterior treatment.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: Python generator Raises: NotImplementedError
-
to_csv
(number, save_to)¶ Save the specified amount of instances in a csv file
Parameters: - number (int) – The number of instances
- save_to (str) – The path to the file where the instances will be saved
-
to_json
(number, save_to=None, indent=4)¶ Get the specified amount of instances as a list of json dicts
Parameters: - number (int) – The number of instances
- save_to (str) – The path where the generated json will be saved. If none, it will be returned as a string
Returns: str containing the generated json if save_to=None, None in other cases
-
-
class
dammy.
FunctionResult
(function, obj, *args, **kwargs)¶ Allows the manipulation of generators by functions
-
generate
(dataset=None)¶ Generate a value and perform a posterior treatment. By default, no treatment is done and generate_raw() is called.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: The value generated by the generator
-
generate_raw
(dataset=None)¶ Generate a value and call the function using the generated value as a parameter
Implementation of the generate_raw() method from BaseGenerator.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: The result of running the generated value through the function
-
iterator
(dataset=None)¶ Get a iterator which generates values and performs a posterior treatment on them. By default, no treatment is done and generate_raw() is called.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: A Python iterator
-
iterator_raw
(dataset=None)¶ Get a generator which generates values without posterior treatment.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: Python generator Raises: NotImplementedError
-
-
class
dammy.
AttributeGetter
(obj, attr)¶ Allows getting attribute values from values generated by generators
-
generate
(dataset=None)¶ Generate a value and perform a posterior treatment. By default, no treatment is done and generate_raw() is called.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: The value generated by the generator
-
generate_raw
(dataset=None)¶ Generate a value and get the specified attribute
Implementation of the generate_raw() method from BaseGenerator.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: The value of the attribute on the generated object
-
iterator
(dataset=None)¶ Get a iterator which generates values and performs a posterior treatment on them. By default, no treatment is done and generate_raw() is called.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: A Python iterator
-
iterator_raw
(dataset=None)¶ Get a generator which generates values without posterior treatment.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: Python generator Raises: NotImplementedError
-
-
class
dammy.
MethodCaller
(obj, method, *args, **kwargs)¶ Allows calling methods of values generated by generators
-
generate
(dataset=None)¶ Generate a value and perform a posterior treatment. By default, no treatment is done and generate_raw() is called.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: The value generated by the generator
-
generate_raw
(dataset=None)¶ Generate a value and call the specified method on the generated value
Implementation of the generate_raw() method from BaseGenerator.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: The value returned by the called method
-
iterator
(dataset=None)¶ Get a iterator which generates values and performs a posterior treatment on them. By default, no treatment is done and generate_raw() is called.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: A Python iterator
-
iterator_raw
(dataset=None)¶ Get a generator which generates values without posterior treatment.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: Python generator Raises: NotImplementedError
-
-
class
dammy.
OperationResult
(a, b, op, sql)¶ Allows binary operations with regular and Dammy objects and it is returned when any of such operations is performed
-
class
Operator
¶ Enumerated type containing all the available operators
-
generate
(dataset=None)¶ Generate a value and perform a posterior treatment. By default, no treatment is done and generate_raw() is called.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: The value generated by the generator
-
generate_raw
(dataset=None)¶ Generates a value and performs the operation. It will raise a TypeError if the operator is invalid.
Implementation of the generate_raw() method from BaseGenerator.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: The value returned after performing the operation Raises: TypeError
-
iterator
(dataset=None)¶ Get a iterator which generates values and performs a posterior treatment on them. By default, no treatment is done and generate_raw() is called.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: A Python iterator
-
iterator_raw
(dataset=None)¶ Get a generator which generates values without posterior treatment.
Parameters: dataset ( dammy.db.DatasetGenerator
or dict) – The dataset from which all referenced fields will be retrievedReturns: Python generator Raises: NotImplementedError
-
class
More modules¶
In addition to the main module, dammy contains other modules extending the functionalities