Challenge Overview
Lately, Topcoder puts a lot of efforts into a massive update and enhancement of our beloved community platform. A lot of development is going on inside Community App, which is powered by ReactJS / Redux with various bells and whistles, and, what is important for this challenge, unit-tested with Jest. Recent updated of the app have dropped the unit-test coverage to low levels (~25% of code is covered). In this challenge you will increase unit-test coverage up to a solid level (> 80% or higher), following the best practices of unit-testing ReactJS apps with Jest.
You should work out of the latest commit in develop branch of Community App (f0c231cc3fb5d923aa1e401da085575bb1ef1b73 at the moment of writing these specs). Currently there are a few skipped tests, that were broken by recent changes - fix them first. Then go through the unit test coverage report and systematicaly add unit tests everywhere to increase all kinds of coverage (statements / branches / functions / lines). Also pay attention to warnings printed to the console when the tests are running. Some of them point to failing prop types checks: these might be due to wrong types of parameters passed into components during tests, or because of errors in prop types checks - you should fix these problems correctly.
If you feel puzzled how to do some specific kind of testing, do not hesistate to ask / discuss in the challenge forum.
You should work out of the latest commit in develop branch of Community App (f0c231cc3fb5d923aa1e401da085575bb1ef1b73 at the moment of writing these specs). Currently there are a few skipped tests, that were broken by recent changes - fix them first. Then go through the unit test coverage report and systematicaly add unit tests everywhere to increase all kinds of coverage (statements / branches / functions / lines). Also pay attention to warnings printed to the console when the tests are running. Some of them point to failing prop types checks: these might be due to wrong types of parameters passed into components during tests, or because of errors in prop types checks - you should fix these problems correctly.
If you feel puzzled how to do some specific kind of testing, do not hesistate to ask / discuss in the challenge forum.