polite-garden-50641
01/05/2021, 4:29 PMenough-analyst-54434
01/05/2021, 4:39 PMpolite-garden-50641
01/05/2021, 4:50 PMrun_rule_with_mocksenough-analyst-54434
01/05/2021, 4:50 PMenough-analyst-54434
01/05/2021, 4:51 PMpolite-garden-50641
01/05/2021, 4:55 PMrule_runner.build_root in order to assert that stuff has been written to the correct location. and that location is already a temporary location so I don't have to worry about cleaning it up, right ?hundreds-father-404
01/05/2021, 4:58 PMpolite-garden-50641
01/05/2021, 5:15 PMdigest = await Get(Digest, CreateDigest([FileContent(path=fn, content=bytes_data]))) to get/create the digest that will be passed to the workspace.write_digest() api.
However, when calling run_rule_with_mocks I am passing a MockGet that looks like this: MockGet(output_type=Digest, input_type=CreateDigest, mock=lambda fc: EMPTY_DIGEST)
which means that the an empty digest is returned and nothing gets written, how do I create an actual digest ?
Since in this case I want an actual digest or digest like object to be created.hundreds-father-404
01/05/2021, 5:36 PMrule_runner.request(Digest, [CreateDigest([FileContent(..)])) to get a Digest object, then use that in your MockGethundreds-father-404
01/05/2021, 5:37 PMrun_rule_with_mocks? Often rule_runner.run_goal_rule is better and more integration-y.polite-garden-50641
01/05/2021, 6:58 PMrunner = RuleRunner(rules=[QueryRule(Digest, [CreateDigest])]) however I still get an error... what am I doing wrong?hundreds-father-404
01/05/2021, 6:59 PMrule_runner.request() the right way - are you saying rule_runner.request(Digest, [FileContent()] by chance, without the wrapping CreateDigest()?polite-garden-50641
01/05/2021, 7:00 PMdef mock_create_digest(fc):
return runner.request(Digest, fc)polite-garden-50641
01/05/2021, 7:01 PMpolite-garden-50641
01/05/2021, 7:01 PMMockGet(output_type=Digest, input_type=CreateDigest, mock=mock_create_digest)hundreds-father-404
01/05/2021, 7:09 PMrunner.request(Digest, [CreateDigest([fc])])polite-garden-50641
01/05/2021, 7:21 PMrunner.request(Digest, [fc]) fixed i.thundreds-father-404
01/05/2021, 7:22 PMFileContent -> Digest. It should need the wrapping CreateDigest()