diff options
Diffstat (limited to 'test/unit-test/vendor/ceedling/plugins/module_generator/README.md')
| -rw-r--r-- | test/unit-test/vendor/ceedling/plugins/module_generator/README.md | 117 |
1 files changed, 0 insertions, 117 deletions
diff --git a/test/unit-test/vendor/ceedling/plugins/module_generator/README.md b/test/unit-test/vendor/ceedling/plugins/module_generator/README.md deleted file mode 100644 index c7e982352..000000000 --- a/test/unit-test/vendor/ceedling/plugins/module_generator/README.md +++ /dev/null @@ -1,117 +0,0 @@ -ceedling-module-generator -========================= - -## Overview - -The module_generator plugin adds a pair of new commands to Ceedling, allowing -you to make or remove modules according to predefined templates. WIth a single call, -Ceedling can generate a source, header, and test file for a new module. If given a -pattern, it can even create a series of submodules to support specific design patterns. -Finally, it can just as easily remove related modules, avoiding the need to delete -each individually. - -Let's say, for example, that you want to create a single module named `MadScience`. - -``` -ceedling module:create[MadScience] -``` - -It says we're speaking to the module plugin, and we want to create a new module. The -name of that module is between the brackets. It will keep this case, unless you have -specified a different default (see configuration). It will create three files: -`MadScience.c`, `MadScience.h`, and `TestMadScience.c`. *NOTE* that it is important that -there are no spaces between the brackets. We know, it's annoying... but it's the rules. - -You can also create an entire pattern of files. To do that, just add a second argument -to the pattern ID. Something like this: - -``` -ceedling module:create[SecretLair,mch] -``` - -In this example, we'd create 9 files total: 3 headers, 3 source files, and 3 test files. These -files would be named `SecretLairModel`, `SecretLairConductor`, and `SecretLairHardware`. Isn't -that nice? - -Similarly, you can create stubs for all functions in a header file just by making a single call -to your handy `stub` feature, like this: - -``` -ceedling module:stub[SecretLair] -``` - -This call will look in SecretLair.h and will generate a file SecretLair.c that contains a stub -for each function declared in the header! Even better, if SecretLair.c already exists, it will -add only new functions, leaving your existing calls alone so that it doesn't cause any problems. - -## Configuration - -Enable the plugin in your project.yml by adding `module_generator` -to the list of enabled plugins. - -Then, like much of Ceedling, you can just run as-is with the defaults, or you can override those -defaults for your own needs. For example, new source and header files will be automatically -placed in the `src/` folder while tests will go in the `test/` folder. That's great if your project -follows the default ceedling structure... but what if you have a different structure? - -``` -:module_generator: - :project_root: ./ - :source_root: source/ - :inc_root: includes/ - :test_root: tests/ -``` - -Now I've redirected the location where modules are going to be generated. - -### Includes - -You can make it so that all of your files are generated with a standard include list. This is done -by adding to the `:includes` array. For example: - -``` -:module_generator: - :includes: - :tst: - - defs.h - - board.h - :src: - - board.h -``` - -### Boilerplates - -You can specify the actual boilerplate used for each of your files. This is the handy place to -put that corporate copyright notice (or maybe a copyleft notice, if that's your preference?) - -``` -:module_generator: - :boilerplates: | - /*************************** - * This file is Awesome. * - * That is All. * - ***************************/ -``` - -### Test Defines - -You can specify the "#ifdef TEST" at the top of the test files with a custom define. -This example will put a "#ifdef CEEDLING_TEST" at the top of the test files. - -``` -:module_generator: - :test_define: CEEDLING_TEST -``` - -### Naming Convention - -Finally, you can force a particular naming convention. Even if someone calls the generator -with something like `MyNewModule`, if they have the naming convention set to `:caps`, it will -generate files like `MY_NEW_MODULE.c`. This keeps everyone on your team behaving the same way. - -Your options are as follows: - - - `:bumpy` - BumpyFilesLooksLikeSo - - `:camel` - camelFilesAreSimilarButStartLow - - `:snake` - snake_case_is_all_lower_and_uses_underscores - - `:caps` - CAPS_FEELS_LIKE_YOU_ARE_SCREAMING |
