libweave: Validate constraints in FromJson methods

Also fixed public TypedValueBase::SetValue method that allows to create
invalid values.

BUG=brillo:1246
TEST='FEATURES=test emerge-gizmo buffet'

Change-Id: Ia60354c3daf2f150fe3e8d1781d0f37420e03563
Reviewed-on: https://chromium-review.googlesource.com/289641
Trybot-Ready: Vitaly Buka <vitalybuka@chromium.org>
Tested-by: Vitaly Buka <vitalybuka@chromium.org>
Reviewed-by: Alex Vakulenko <avakulenko@chromium.org>
Commit-Queue: Vitaly Buka <vitalybuka@chromium.org>
6 files changed
tree: 5cf21c33429b1486f1746f977c30011d45663cf0
  1. buffet/
  2. libweave/