mirror of
https://github.com/shopspring/decimal.git
synced 2024-11-22 20:40:48 +01:00
parent
77e6b496f6
commit
4b9150b187
2 changed files with 30 additions and 0 deletions
|
@ -262,6 +262,15 @@ func (d Decimal) Sub(d2 Decimal) Decimal {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Neg returns -d.
|
||||||
|
func (d Decimal) Neg() Decimal {
|
||||||
|
val := new(big.Int).Neg(d.value)
|
||||||
|
return Decimal{
|
||||||
|
value: val,
|
||||||
|
exp: d.exp,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Mul returns d * d2.
|
// Mul returns d * d2.
|
||||||
func (d Decimal) Mul(d2 Decimal) Decimal {
|
func (d Decimal) Mul(d2 Decimal) Decimal {
|
||||||
d.ensureInitialized()
|
d.ensureInitialized()
|
||||||
|
|
|
@ -620,6 +620,27 @@ func TestDecimal_Sub(t *testing.T) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestDecimal_Neg(t *testing.T) {
|
||||||
|
inputs := map[string]string{
|
||||||
|
"0": "0",
|
||||||
|
"10": "-10",
|
||||||
|
"5.56": "-5.56",
|
||||||
|
"-10": "10",
|
||||||
|
"-5.56": "5.56",
|
||||||
|
}
|
||||||
|
|
||||||
|
for inp, res := range inputs {
|
||||||
|
a, err := NewFromString(inp)
|
||||||
|
if err != nil {
|
||||||
|
t.FailNow()
|
||||||
|
}
|
||||||
|
b := a.Neg()
|
||||||
|
if b.String() != res {
|
||||||
|
t.Errorf("expected %s, got %s", res, b.String())
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func TestDecimal_Mul(t *testing.T) {
|
func TestDecimal_Mul(t *testing.T) {
|
||||||
type Inp struct {
|
type Inp struct {
|
||||||
a string
|
a string
|
||||||
|
|
Loading…
Reference in a new issue