1c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa/* 2c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa * Copyright (C) 2014 The Android Open Source Project 3c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa * 4c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa * Licensed under the Apache License, Version 2.0 (the "License"); 5c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa * you may not use this file except in compliance with the License. 6c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa * You may obtain a copy of the License at 7c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa * 8c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa * http://www.apache.org/licenses/LICENSE-2.0 9c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa * 10c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa * Unless required by applicable law or agreed to in writing, software 11c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa * distributed under the License is distributed on an "AS IS" BASIS, 12c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa * See the License for the specific language governing permissions and 14c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa * limitations under the License. 15c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa */ 16c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa 17c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa#include "utils/autocorrection_threshold_utils.h" 18c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa 19c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa#include <gtest/gtest.h> 20c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa 21c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa#include <vector> 22c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa 23c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawanamespace latinime { 24c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawanamespace { 25c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa 26c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawaint CalcEditDistance(const std::vector<int> &before, 27c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa const std::vector<int> &after) { 28c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa return AutocorrectionThresholdUtils::editDistance( 29c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa &before[0], before.size(), &after[0], after.size()); 30c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa} 31c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa 32c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei YukawaTEST(AutocorrectionThresholdUtilsTest, SameData) { 33c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa EXPECT_EQ(0, CalcEditDistance({1}, {1})); 34c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa EXPECT_EQ(0, CalcEditDistance({2, 2}, {2, 2})); 35c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa EXPECT_EQ(0, CalcEditDistance({3, 3, 3}, {3, 3, 3})); 36c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa} 37c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa 38c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa} // namespace 39c72652cb00eb0a02c46bfcd95202deec068ba5e0Yohei Yukawa} // namespace latinime 40