actions.build: added --rebuild option; do not rebuild by default

~~Well, it's common way to tests (*weak argument, ok*).~~
There are some really usefull helpers, like `assertDictEqual`. So if you will decide use one of them, you will get two type of assertions.
But, as I see, you use `pytest`, so in this case there is no reason to use `unittest.TestCase.assert*`