style(tests): cosmetics
fix(Query/metric): fix handling of case when TopNMetric specified as string
feat(Query/metric): add validations
style(Query/metrics): jsdoc fixes
test(Query/metric): add test suite