Можно бы добавить тест на некорректный ввод, например подать большой int вместе типа метрики. По-простому компилятор защитит пользователя от подобных шагов, однако этого все равно можно добиться приведением типов. Поэтому можно бы и проверять typeMetric на входе (кстати этого не делается).