blob: 72090748b7dc4ac6a2d97946faabd5a2e4b4631c [file] [log] [blame]
Karl Zhang3de5ab12021-05-31 11:45:48 +08001/*
Nik Dewallybacae6c2024-07-30 16:58:14 +01002 * Copyright (c) 2024, Arm Limited. All rights reserved.
Karl Zhang3de5ab12021-05-31 11:45:48 +08003 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 *
6 */
7
8/* This file defines information to track regarding variables in the generated test
9 code. */
10
Nik Dewallybacae6c2024-07-30 16:58:14 +010011#include <stdlib.h>
Karl Zhang3de5ab12021-05-31 11:45:48 +080012#include <string>
Karl Zhang3de5ab12021-05-31 11:45:48 +080013
Karl Zhang3de5ab12021-05-31 11:45:48 +080014#include "find_or_create_asset.hpp"
15#include "variables.hpp"
16#include "gibberish.hpp"
17
Karl Zhang3de5ab12021-05-31 11:45:48 +080018using namespace std;
19
20
21/**********************************************************************************
22 Methods of class variable_info follow:
23**********************************************************************************/
24
25variable_info::variable_info (void) // (default constructor)
26{
27 gibberish *gib = new gibberish;
28
29 hash_declared = value_known = false;
30 name = "";
31 length = 100 + (rand() % 800);
32 gib->sentence ((char*) value, (char*) value + length);
33 // TODO: Sizes of random data neesds to be strategized better
34 type = psa_asset_type::unknown;
35 delete gib;
36}
37
38variable_info::variable_info (string var_name, psa_asset_type var_type)
39{ // (constructor with known name and type)
40 gibberish *gib = new gibberish;
41
42 hash_declared = value_known = false;
43 name.assign (var_name);
44 length = 100 + (rand() % 800);
45 gib->sentence ((char*) value, (char*) value + length);
46 // TODO: Sizes of random data needs to be strategized better
47 type = var_type;
48 delete gib;
49}
50
51variable_info::~variable_info (void) // (destructor)
52{}
53
54
55/**********************************************************************************
56 End of methods of class variable_info.
57**********************************************************************************/