github.com/whtcorpsinc/milevadb-prod@v0.0.0-20211104133533-f57f4be3b597/dbs/cmd/importer/db_test.go (about)

     1  // Copyright 2020 WHTCORPS INC, Inc.
     2  //
     3  // Licensed under the Apache License, Version 2.0 (the "License");
     4  // you may not use this file except in compliance with the License.
     5  // You may obtain a copy of the License at
     6  //
     7  //     http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  // Unless required by applicable law or agreed to in writing, software
    10  // distributed under the License is distributed on an "AS IS" BASIS,
    11  // See the License for the specific language governing permissions and
    12  // limitations under the License.
    13  
    14  package main
    15  
    16  import (
    17  	"testing"
    18  )
    19  
    20  func TestIntToDecimalString(t *testing.T) {
    21  	tests := []struct {
    22  		intValue int64
    23  		decimal  int
    24  		expect   string
    25  	}{
    26  		{100, 3, "0.100"},
    27  		{100, 1, "10.0"},
    28  		{100, 0, "100"},
    29  		{1, 3, "0.001"},
    30  		{0, 1, "0.0"},
    31  		{0, 5, "0.00000"},
    32  		{12, 0, "12"},
    33  		{999, 1, "99.9"},
    34  		{1234, 1, "123.4"},
    35  		{12345678, 2, "123456.78"},
    36  	}
    37  	for _, s := range tests {
    38  		if u := intToDecimalString(s.intValue, s.decimal); u != s.expect {
    39  			t.Errorf("test failed on (%d, %d): expected %s, but we got %s\n", s.intValue, s.decimal, s.expect, u)
    40  		}
    41  	}
    42  }