> Do you think it is a good idea to keep them?

I'll leave it up to you ;-) My personal take is that we should test just enough to verify the desired behaviour. In this case, we are trying to (as far as I understand) ensure that "uptime" is indeed preserved as a command, and that no other commands are introduced that would authorize public keys. This is sufficiently checked by
```
assertEquals(statement.render(OsFamily.UNIX), "uptime\n");
```
since as long as this holds (and `uptime` doesn't change _significantly_ in meaning ;-)) this cannot authorize public keys. But if someone decided to change the implementation to use a StatementList...why not?

In the case below, I would again say that 
```
assertEquals(statements.size(), 2);
assertEquals(statements.get(0).render(OsFamily.UNIX), "uptime\n");
assertTrue(statements.get(1) instanceof InstallRSAPrivateKey);
```
should be enough, since (again, unless `InstallRSAPrivateKey` changes dramatically) we will not have an authorization statement. If we don't actually care whether it's `InstallRSAPrivateKey` or not, we could also consider changing that second statement to 
```
assertFalse(statements.get(1) instanceof AuthorizeRSAPublicKeys);
```
But also fine with keeping things as-is if you prefer ;-)