diff --git a/project.yml b/project.yml new file mode 100644 index 0000000..640cb8f --- /dev/null +++ b/project.yml @@ -0,0 +1,101 @@ +--- + +# Notes: +# Sample project C code is not presently written to produce a release artifact. +# As such, release build options are disabled. +# This sample, therefore, only demonstrates running a collection of unit tests. + +:project: + :use_exceptions: FALSE + :use_test_preprocessor: TRUE + :use_auxiliary_dependencies: TRUE + :build_root: build +# :release_build: TRUE + :test_file_prefix: test_ + :which_ceedling: gem + :ceedling_version: 0.31.1 + :default_tasks: + - test:all + +#:test_build: +# :use_assembly: TRUE + +#:release_build: +# :output: MyApp.out +# :use_assembly: FALSE + +:environment: + +:extension: + :executable: .out + +:paths: + :test: + - +:tests/** + - -:tests/support + :source: + - src/** + :support: + - tests/support + :libraries: [] + +:defines: + # in order to add common defines: + # 1) remove the trailing [] from the :common: section + # 2) add entries to the :common: section (e.g. :test: has TEST defined) + :common: &common_defines [] + :test: + - *common_defines + - TEST + :test_preprocess: + - *common_defines + - TEST + +:cmock: + :mock_prefix: mock_ + :when_no_prototypes: :warn + :enforce_strict_ordering: TRUE + :plugins: + - :ignore + - :callback + :treat_as: + uint8: HEX8 + uint16: HEX16 + uint32: UINT32 + int8: INT8 + bool: UINT8 + +# Add -gcov to the plugins list to make sure of the gcov plugin +# You will need to have gcov and gcovr both installed to make it work. +# For more information on these options, see docs in plugins/gcov +:gcov: + :reports: + - HtmlDetailed + :gcovr: + :html_medium_threshold: 75 + :html_high_threshold: 90 + +#:tools: +# Ceedling defaults to using gcc for compiling, linking, etc. +# As [:tools] is blank, gcc will be used (so long as it's in your system path) +# See documentation to configure a given toolchain for use + +# LIBRARIES +# These libraries are automatically injected into the build process. Those specified as +# common will be used in all types of builds. Otherwise, libraries can be injected in just +# tests or releases. These options are MERGED with the options in supplemental yaml files. +:libraries: + :placement: :end + :flag: "-l${1}" + :path_flag: "-L ${1}" + :system: [] # for example, you might list 'm' to grab the math library + :test: [] + :release: [] + +:plugins: + :load_paths: + - "#{Ceedling.load_path}" + :enabled: + - stdout_pretty_tests_report + - module_generator +... diff --git a/src/showGeneralInfoEmployee.c b/src/showGeneralInfoEmployee.c new file mode 100644 index 0000000..2a9196b --- /dev/null +++ b/src/showGeneralInfoEmployee.c @@ -0,0 +1,99 @@ +#include "showGeneralInfoEmployee.h" +//a = employeeName b = password +int checkUser(char a[length], char b[length]) +{ + if(strcmp(a,"Atharva")==0 && strcmp(b,"Atharva")==0) + { + return 1; + } + else if(strcmp(a,"Can")==0 && strcmp(b,"BlooMask")==0) + { + return 2; + } + else if(strcmp(a,"Haytham")==0 && strcmp(b,"TimoDL")==0) + { + return 3; + } + else if(strcmp(a,"Julius")==0 && strcmp(b,"Insertcat")==0) + { + return 4; + } + else if(strcmp(a,"Mohamed")==0 && strcmp(b,"MD")==0) + { + return 5; + } + else if(strcmp(a,"Shivam")==0 && strcmp(b,"Schivam007")==0) + { + return 6; + } + else + { + return 0; + } +} + + +void showGeneralInfoEmployee(char id[length], char p[length]) +{ + // "If Statements" check, whether the id and the password match + if(checkUser(id, p) == 1) + { + printf(" Welcome Atharva\n"); + printf(" Clearance: 3\n"); + printf("\n"); + printf("\n"); + printf(" ->Review new customer applications.\n"); + } + if(checkUser(id, p) == 2) + { + printf(" Welcome Can\n"); + printf(" Clearance: 3\n"); + printf("\n"); + printf("\n"); + printf(" ->Review new customer applications.\n"); + } + if(checkUser(id, p) == 3) + { + printf(" Welcome Haytham\n"); + printf(" Clearance: 2\n"); + printf("\n"); + printf("\n"); + printf(" ->Review new customer applications.\n"); + printf(" ->Review loan applications.\n"); + } + if(checkUser(id, p) == 4) + { + printf(" Welcome Julius\n"); + printf(" Clearance: 2\n"); + printf("\n"); + printf("\n"); + printf(" ->Review new customer applications.\n"); + printf(" ->Review loan applications.\n"); + } + if(checkUser(id, p) == 5) + { + printf(" Welcome Mohamed\n"); + printf(" Clearance: 3\n"); + printf("\n"); + printf("\n"); + printf(" ->Review new customer applications.\n"); + printf(" ->Review loan applications.\n"); + printf(" ->Terminate account.\n"); + } + if(checkUser(id, p) == 6) + { + printf(" Welcome Shivam\n"); + printf(" Clearance: 3\n"); + printf("\n"); + printf("\n"); + printf(" ->Review new customer applications.\n"); + printf(" ->Review loan applications.\n"); + printf(" ->Terminate account.\n"); + } + else + { + + } +} + + diff --git a/src/showGeneralInfoEmployee.h b/src/showGeneralInfoEmployee.h new file mode 100644 index 0000000..984b035 --- /dev/null +++ b/src/showGeneralInfoEmployee.h @@ -0,0 +1,11 @@ +#ifndef SHOWGENERALINFOEMPLOYEE_H +#define SHOWGENERALINFOEMPLOYEE_H + +#include +#include +#include + +const int length = 100; +int checkUser(char a[length], char b[length]); +void showGeneralInfoEmployee(char id[length], char p[length]); +#endif // SHOWGENERALINFOEMPLOYEE_H diff --git a/tests/support/.gitkeep b/tests/support/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/tests/test_showGeneralInfoEmployee.c b/tests/test_showGeneralInfoEmployee.c new file mode 100644 index 0000000..e666269 --- /dev/null +++ b/tests/test_showGeneralInfoEmployee.c @@ -0,0 +1,20 @@ +#ifdef TEST + +#include "unity.h" + +#include "showGeneralInfoEmployee.h" + +void setUp(void) +{ +} + +void tearDown(void) +{ +} + +void test_showGeneralInfoEmployee_NeedToImplement(void) +{ + TEST_IGNORE_MESSAGE("Need to Implement showGeneralInfoEmployee"); +} + +#endif // TEST