<commit_before>fatecsp-alp
===========

Contains programs of discipline Algorithm and Logic Programming (Banin's Teacher) from Analysis and System Development of FATEC-SP<commit_msg>Created basic documentation of ProductUtils and TestGenerator<commit_after>fatecsp-alp
===========

Contains programs of discipline Algorithm and Logic Programming (Banin's Teacher) from Analysis and System Development of FATEC-SP

#T1 - Product Generator
## Description
Two programs need to be created inside one, they will basically:
* Request input from user to create N products and save it into one text file (user will tell how much products he wants).
* Requests from user to generate Z random sells, using products from file previously created, and save all into one other file.

### Product and Sells Files
Product and sells files are basically CSV (comma-separated value).
* Product content
** Product Code
** Product Description
** Product Price

* Sell content
** Product Code
** Datetime of sell
** Quantity
** Total price

## Program Files
* ProductUtils.pas - Contains struct of Product and all utilities functions to handle with products. They are:
** function ParseProduct(productInfo : SplitedText) : Product; - This function receive of string and parse it into record of Product (code, description and price)
** function GetsProducts(filePath : String[255]) : Products; - This function gets all product lines from given file.

** function LineIsValid(line : String[255]): boolean; - Verify, accordinaly to Product File business rule, if a line is not comment.

** procedure PrintProducts(productsArray : Products); - Receives an array of Products and print it all, exposing code, description and price.

* TestGenerator.pas - This is the main file of project, it's executes all code to generate tests.
{'fraction_non_alphanumeric': 0.07380688124306327, 'fraction_numerical': 0.00388457269700333, 'mean_word_length': 5.091216216216216, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6211626', 'n_tokens_mistral': 454, 'n_tokens_neox': 422, 'n_words': 230}