Closed yourmercury closed 1 year ago
👋 @yourmercury Thanks for your application! We will do a pre-review and let you know if we have any immediate questions. In the mean time please refer to our review schedule here for a detailed timeline and response dates. Best, Will
Hi @yourmercury
Thanks for your patience, but unfortunately, we will need to deny your application at this time. Funding tooling needed around the sBTC protocol is still our top priority and the list of identified needs is poised to receive the majority of the available grants budget for the next 2-3 quarters. I would encourage you to keep an eye on the Critical Bounties though! We would love your participation on that front.
Thanks for your understanding.
Best, Will
APPLICANT
Type:                                                                        Direct Application
Email:                                                                    momohpolycarp@gmail.com
Discord:                                                    yourmercury#8205
Twitter:                                                        @yourmercury_
Stacks Forum:          
GRANT BASICS
Grant Name:                                        Parse Comments to Unit test
Total Budget:                              22,000
Total Duration:                 288
Grant Type:                                               Open Source Dev 1st time Grantees
Grant Track:                                          Stacks Developer Experience
Grant Goal:                                               Integrate Between Technologies
Grant Audience:             Developers
Specific Audience:         Clarity developers. especially the ones who are not JS devs
Grant Team:                                       yourmercury,teen0809
Previous Grants:                      Clarinet GUI - grant 505 on the former dashboard
Ecosystem Programs:     
GRANT MISSION, IMPACT, RISKS & REFERENCE
Grant Mission:         Unit testing allows for consistent, repeatable, and efficient testing of smart contract code. Due to the immutable nature of smart contracts, it helps to identify bugs and issues early in the dev process, making it easier to fix them before they become critical.
To write and run Units Tests for Clarity contracts, we use the test framework shipped with Deno which is a javascript runtime. it is pretty easy to use when you are a javascript developer but the small issue is that it is as time consuming or more time consuming than actually writing the contracts.
Also, as Clarity being one of my favorite languages because it is super easy to assimilate or learn, it won't be alien for someone's first language to be clarity. This would pose a little problem in terms of writing Unit tests.
Also, Unit test from function to function are usually very alike in terms of processes. This makes it possible to break and or map these processes to simple understandable comments on our clarity codes that would be easily parsed to output javascript unit test snippets.
We pledge to solve these listed problems by Creating this command line application that takes a line of comment on our clarity code and parses a corresponding Javascript test for clarinet to run. Hereby reducing the development time and greatly reducing the need to write test in Javascript to maybe for some really technically heavy test processes. Developers would not need to be Javascript savvy to write the all important Unit testing.
The application does not run the Unit tests. All it does is parse them to Javascript. The developer would still need to call
clarinet test
which would run the derived Javascript testsGrant Impact:               Usability. There would definitely be some manual testing of the application by developers in the community to give their sincere opinions about the usability of the CLI. these feedback would be documented and reported.
Grant Risks:                          There is a risk of defining too much commands for the comments that it would not help users who already know JS and those who don't will need to memorize a whole lot of commands. But we decided to go with what we call the 'process-mapping' approach. This would enable the app have less commands.
Support Link:                                     Above is a short illustration of the concept that is to be implemented
GRANT ROADMAP & DELIVERABLES
MILESTONE 1:
Deliverable:                   We would deliver and demonstrate the completed CLI application and Documentation
FINAL DELIVERABLE
Deliverable:                   CLI app and documentation to parse comments to JS unit test for clarity