Add support for joining data with default precision.

PiperOrigin-RevId: 230376960
This commit is contained in:
Yunlu Li 2019-01-22 11:23:10 -08:00 committed by TensorFlower Gardener
parent e1e77eacb9
commit 6da1788b4a
2 changed files with 20 additions and 1 deletions
tensorflow/lite/testing

View File

@ -24,7 +24,21 @@ limitations under the License.
namespace tflite {
namespace testing {
// Join a list of data separated by delimiter.
// Join a list of data with default precision separated by delimiter.
template <typename T>
string JoinDefault(T* data, size_t len, const string& delimiter) {
if (len == 0 || data == nullptr) {
return "";
}
std::stringstream result;
result << data[0];
for (int i = 1; i < len; i++) {
result << delimiter << data[i];
}
return result.str();
}
// Join a list of data with fixed precision separated by delimiter.
template <typename T>
string Join(T* data, size_t len, const string& delimiter) {
if (len == 0 || data == nullptr) {

View File

@ -26,6 +26,11 @@ TEST(JoinTest, JoinInt) {
EXPECT_EQ(Join(data.data(), data.size(), ","), "1,2,3");
}
TEST(JoinDefaultTest, JoinFloat) {
float data[] = {1.0, -3, 2.3, 1e-5};
EXPECT_EQ(JoinDefault(data, 4, " "), "1 -3 2.3 1e-05");
}
TEST(JoinTest, JoinFloat) {
float data[] = {1.0, -3, 2.3, 1e-5};
EXPECT_EQ(Join(data, 4, " "), "1 -3 2.29999995 9.99999975e-06");