Skip to content

Commit e038aad

Browse files
authored
Decimal sep pkg (#33)
token.Decimal to separate package
1 parent 6860e67 commit e038aad

32 files changed

+1267
-1068
lines changed

examples/erc20_utxo/erc20.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import (
88
"github.com/hyperledger-labs/cckit/examples/erc20_utxo/service/config"
99
"github.com/hyperledger-labs/cckit/extensions/account"
1010
"github.com/hyperledger-labs/cckit/extensions/token"
11+
"github.com/hyperledger-labs/cckit/extensions/token/decimal"
1112
"github.com/hyperledger-labs/cckit/router"
1213
)
1314

@@ -16,7 +17,7 @@ var (
1617
Name: `SomeToken`,
1718
Symbol: `@`,
1819
Decimals: 2,
19-
TotalSupply: token.NewDecimal(big.NewInt(10000000)),
20+
TotalSupply: decimal.New(big.NewInt(10000000)),
2021
}
2122
)
2223

examples/erc20_utxo/erc20_test.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import (
1313
"github.com/hyperledger-labs/cckit/examples/erc20_utxo/service/config"
1414
"github.com/hyperledger-labs/cckit/extensions/account"
1515
"github.com/hyperledger-labs/cckit/extensions/token"
16+
"github.com/hyperledger-labs/cckit/extensions/token/decimal"
1617
"github.com/hyperledger-labs/cckit/identity"
1718
"github.com/hyperledger-labs/cckit/identity/testdata"
1819
testcc "github.com/hyperledger-labs/cckit/testing"
@@ -98,13 +99,13 @@ var _ = Describe(`ERC`, func() {
9899
&token.BalanceId{Address: user1Address, Symbol: erc20_utxo.Token.Symbol}),
99100
&token.Balance{}).(*token.Balance)
100101

101-
Expect(b.Amount).To(Equal(token.NewDecimal(big.NewInt(0))))
102+
Expect(b.Amount).To(Equal(decimal.New(big.NewInt(0))))
102103
})
103104

104105
})
105106

106107
Context(`transfer`, func() {
107-
var transferAmount = token.NewDecimal(big.NewInt(100))
108+
var transferAmount = decimal.New(big.NewInt(100))
108109

109110
It(`Disallow to transfer balance by user with zero balance`, func() {
110111
expectcc.ResponseError(
@@ -150,7 +151,7 @@ var _ = Describe(`ERC`, func() {
150151

151152
Context(`Allowance`, func() {
152153

153-
var allowAmount = token.NewDecimal(big.NewInt(50))
154+
var allowAmount = decimal.New(big.NewInt(50))
154155

155156
It(`Allow to approve amount by owner for spender even if balance is zero`, func() {
156157
a := expectcc.PayloadIs(

examples/erc20_utxo/service/allowance/allowance.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import (
66

77
"github.com/hyperledger-labs/cckit/extensions/account"
88
"github.com/hyperledger-labs/cckit/extensions/token"
9+
"github.com/hyperledger-labs/cckit/extensions/token/decimal"
910
"github.com/hyperledger-labs/cckit/router"
1011
"github.com/hyperledger-labs/cckit/state"
1112
)
@@ -120,7 +121,7 @@ func (s *Service) TransferFrom(ctx router.Context, req *TransferFromRequest) (*T
120121
req.Amount, allowance.Amount, ErrAllowanceInsufficient)
121122
}
122123

123-
allowance.Amount = token.BigIntSubAsDecimal(curAmount, reqAmount)
124+
allowance.Amount = decimal.BigIntSubAsDecimal(curAmount, reqAmount)
124125

125126
// sub from allowance
126127
if err := State(ctx).Put(allowance); err != nil {

examples/erc20_utxo/service/allowance/allowance.pb.cc.go

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

examples/erc20_utxo/service/allowance/allowance.pb.go

Lines changed: 179 additions & 173 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

examples/erc20_utxo/service/allowance/allowance.proto

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import "google/protobuf/empty.proto";
88
import "mwitkow/go-proto-validators/validator.proto";
99

1010
import "token/balance.proto";
11+
import "token/decimal/decimal.proto";
1112

1213
service AllowanceService {
1314
// Returns the remaining number of tokens that spender will be allowed to spend on behalf of owner through transfersender.
@@ -40,23 +41,23 @@ message ApproveRequest {
4041
string spender = 2 [(validator.field) = {string_not_empty : true}];
4142
string symbol = 3 [(validator.field) = {string_not_empty : true}];
4243
repeated string group = 4;
43-
cckit.extensions.token.Decimal amount = 5 [(validator.field) = {string_not_empty : true}];
44+
cckit.extensions.token.decimal.Decimal amount = 5 [(validator.field) = {string_not_empty : true}];
4445
}
4546

4647
message TransferFromRequest {
4748
string owner = 1 [(validator.field) = {string_not_empty : true}];
4849
string recipient = 2 [(validator.field) = {string_not_empty : true}];
4950
string symbol = 3 [(validator.field) = {string_not_empty : true}];
5051
repeated string group = 4;
51-
cckit.extensions.token.Decimal amount = 5 [(validator.field) = {string_not_empty : true}];
52+
cckit.extensions.token.decimal.Decimal amount = 5 [(validator.field) = {string_not_empty : true}];
5253
}
5354

5455
message TransferFromResponse {
5556
string owner = 1;
5657
string recipient = 2;
5758
string symbol = 3 ;
5859
repeated string group = 4;
59-
cckit.extensions.token.Decimal amount = 5;
60+
cckit.extensions.token.decimal.Decimal amount = 5;
6061
}
6162

6263
// Id: Allowance identifier
@@ -73,15 +74,15 @@ message Allowance {
7374
string spender = 2;
7475
string symbol = 3 ;
7576
repeated string group = 4;
76-
cckit.extensions.token.Decimal amount = 5;
77+
cckit.extensions.token.decimal.Decimal amount = 5;
7778
}
7879

7980
message Operation {
8081
string owner = 1;
8182
string spender = 2;
8283
string symbol = 3 ;
8384
repeated string group = 4;
84-
cckit.extensions.token.Decimal amount = 5;
85+
cckit.extensions.token.decimal.Decimal amount = 5;
8586
}
8687

8788
// List:
@@ -95,7 +96,7 @@ message Approved {
9596
string spender = 2;
9697
string symbol = 3 ;
9798
repeated string group = 4;
98-
cckit.extensions.token.Decimal amount = 5;
99+
cckit.extensions.token.decimal.Decimal amount = 5;
99100
}
100101

101102
// Event: TransferredFrom event is emitted when TransferFrom method has been invoked
@@ -105,5 +106,5 @@ message TransferredFrom {
105106
string recipient = 3;
106107
string symbol = 4 ;
107108
repeated string group = 5;
108-
cckit.extensions.token.Decimal amount = 6;
109+
cckit.extensions.token.decimal.Decimal amount = 6;
109110
}

examples/erc20_utxo/service/allowance/allowance.swagger.json

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@
132132
}
133133
},
134134
"amount": {
135-
"$ref": "#/definitions/tokenDecimal"
135+
"$ref": "#/definitions/decimalDecimal"
136136
}
137137
},
138138
"title": "State: Allowance"
@@ -156,7 +156,19 @@
156156
}
157157
},
158158
"amount": {
159-
"$ref": "#/definitions/tokenDecimal"
159+
"$ref": "#/definitions/decimalDecimal"
160+
}
161+
}
162+
},
163+
"decimalDecimal": {
164+
"type": "object",
165+
"properties": {
166+
"scale": {
167+
"type": "integer",
168+
"format": "int32"
169+
},
170+
"value": {
171+
"type": "string"
160172
}
161173
}
162174
},
@@ -192,18 +204,6 @@
192204
}
193205
}
194206
}
195-
},
196-
"tokenDecimal": {
197-
"type": "object",
198-
"properties": {
199-
"scale": {
200-
"type": "integer",
201-
"format": "int32"
202-
},
203-
"value": {
204-
"type": "string"
205-
}
206-
}
207207
}
208208
}
209209
}

examples/erc20_utxo/service/allowance/allowance.validator.pb.go

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

examples/erc20_utxo/service/config/config.pb.cc.go

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

examples/erc20_utxo/service/config/config.pb.go

Lines changed: 20 additions & 19 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)