Skip to content

Commit 50b3ede

Browse files
committed
+ Queries
1 parent c15efb8 commit 50b3ede

File tree

19 files changed

+478
-0
lines changed

19 files changed

+478
-0
lines changed
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
using TonLibDotNet.Types;
2+
using TonLibDotNet.Types.Wallet;
3+
4+
namespace TonLibDotNet.Requests
5+
{
6+
public class CreateQueryTests
7+
{
8+
[Fact]
9+
public void DeserializeOk()
10+
{
11+
var baseObj = new TonJsonSerializer().Deserialize(SampleValues.CreateQuery);
12+
13+
Assert.NotNull(baseObj);
14+
15+
var obj = Assert.IsType<CreateQuery>(baseObj);
16+
17+
var ikr = Assert.IsType<InputKeyRegular>(obj.PrivateKey);
18+
Assert.Equal("PuZ...pU9", ikr.Key.PublicKey);
19+
Assert.Equal("zB...WY=", ikr.Key.Secret);
20+
21+
Assert.NotNull(obj.Address);
22+
Assert.Equal("EQA...dT0", obj.Address.Value);
23+
24+
Assert.Equal(60, obj.Timeout);
25+
26+
_ = Assert.IsType<ActionMsg>(obj.Action);
27+
_ = Assert.IsType<V3InitialAccountState>(obj.InitialAccountState);
28+
}
29+
}
30+
}
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
namespace TonLibDotNet.Requests.Query
2+
{
3+
public class EstimateFeesTests
4+
{
5+
[Fact]
6+
public void DeserializeOk()
7+
{
8+
var baseObj = new TonJsonSerializer().Deserialize(SampleValues.Query_EstimateFees);
9+
10+
Assert.NotNull(baseObj);
11+
12+
var obj = Assert.IsType<EstimateFees>(baseObj);
13+
14+
Assert.Equal(1, obj.Id);
15+
Assert.True(obj.IgnoreChksig);
16+
}
17+
}
18+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
namespace TonLibDotNet.Requests.Query
2+
{
3+
public class ForgetTests
4+
{
5+
[Fact]
6+
public void DeserializeOk()
7+
{
8+
var baseObj = new TonJsonSerializer().Deserialize(SampleValues.Query_Forget);
9+
10+
Assert.NotNull(baseObj);
11+
12+
var obj = Assert.IsType<Forget>(baseObj);
13+
14+
Assert.Equal(1, obj.Id);
15+
}
16+
}
17+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
namespace TonLibDotNet.Requests.Query
2+
{
3+
public class GetInfoTests
4+
{
5+
[Fact]
6+
public void DeserializeOk()
7+
{
8+
var baseObj = new TonJsonSerializer().Deserialize(SampleValues.Query_GetInfo);
9+
10+
Assert.NotNull(baseObj);
11+
12+
var obj = Assert.IsType<GetInfo>(baseObj);
13+
14+
Assert.Equal(1, obj.Id);
15+
}
16+
}
17+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
namespace TonLibDotNet.Requests.Query
2+
{
3+
public class SendTests
4+
{
5+
[Fact]
6+
public void DeserializeOk()
7+
{
8+
var baseObj = new TonJsonSerializer().Deserialize(SampleValues.Query_Send);
9+
10+
Assert.NotNull(baseObj);
11+
12+
var obj = Assert.IsType<Send>(baseObj);
13+
14+
Assert.Equal(1, obj.Id);
15+
}
16+
}
17+
}

TonLibDotNet.Tests/SampleValues.Designer.cs

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

TonLibDotNet.Tests/SampleValues.resx

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,9 @@
157157
<data name="CreateNewKey" xml:space="preserve">
158158
<value>{"@type":"createNewKey","local_password":"111","mnemonic_password":"222","random_extra_seed":"333"}</value>
159159
</data>
160+
<data name="CreateQuery" xml:space="preserve">
161+
<value>{"@type":"createQuery","private_key":{"@type":"inputKeyRegular","key":{"@type":"key","public_key":"PuZ...pU9","secret":"zB...WY="}},"address":{"@type":"accountAddress","account_address":"EQA...dT0"},"timeout":60,"action":{"@type":"actionMsg","messages":[{"@type":"msg.message","destination":{"@type":"accountAddress","account_address":"EQA...dT0"},"amount":10000000,"data":{"@type":"msg.dataText","text":"U2Vu...kVU"},"send_mode":1}],"allow_send_to_uninited":true},"initial_account_state":{"@type":"wallet.v3.initialAccountState","public_key":"PuZ...pU9","wallet_id":698983191}}</value>
162+
</data>
160163
<data name="DeleteAllKeys" xml:space="preserve">
161164
<value>{"@type":"deleteAllKeys"}</value>
162165
</data>
@@ -190,6 +193,9 @@
190193
<data name="ExportUnencryptedKey" xml:space="preserve">
191194
<value>{"@type":"exportUnencryptedKey","input_key":{"@type":"inputKeyRegular","key":{"@type":"key","public_key":"PuYJ...gEIP","secret":"B6Ya...Aorg="},"local_password":"AQIDBAU="}}</value>
192195
</data>
196+
<data name="Fees" xml:space="preserve">
197+
<value>{"@type":"fees","in_fwd_fee":2048000,"storage_fee":1575,"gas_fee":2994000,"fwd_fee":1228000}</value>
198+
</data>
193199
<data name="FullAccountState" xml:space="preserve">
194200
<value>{"@type":"fullAccountState","address":{"@type":"accountAddress","account_address":"EQCJTkhd1W2wztkVNp_dsKBpv2SIoUWoIyzI7mQrbSrj_NSh"},"balance":"136217239329079","last_transaction_id":{"@type":"internal.transactionId","lt":"34942442000005","hash":"vhl79O/OZ4LCC7cdkKj22uNv5diIrIltOLujpFOLwTk="},"block_id":{"@type":"ton.blockIdExt","workchain":-1,"shard":"-9223372036854775808","seqno":27011756,"root_hash":"AhS55h8lmOyxtw29gWux0XZzXgiAbE69UsP44xIWdXM=","file_hash":"TwDj86Fbvgvxte2UXpYtm2CpMSC/wIyxZph6mPDn99A="},"sync_utime":1675249913,"account_state":{"@type":"wallet.v3.accountState","wallet_id":"698983191","seqno":35},"revision":2}</value>
195201
</data>
@@ -253,6 +259,24 @@
253259
<data name="PackAccountAddress" xml:space="preserve">
254260
<value>{"@type":"packAccountAddress","account_address":{"@type":"unpackedAccountAddress","workchain_id":0,"bounceable":true,"testnet":false,"addr":"iU5IXdVtsM7ZFTaf3bCgab9kiKFFqCMsyO5kK20q4/w="}}</value>
255261
</data>
262+
<data name="Query_EstimateFees" xml:space="preserve">
263+
<value>{"@type":"query.estimateFees","id":1,"ignore_chksig":true}</value>
264+
</data>
265+
<data name="Query_Fees" xml:space="preserve">
266+
<value>{"@type":"query.fees","source_fees":{"@type":"fees","in_fwd_fee":2048000,"storage_fee":1575,"gas_fee":2994000,"fwd_fee":1228000},"destination_fees":[{"@type":"fees","in_fwd_fee":0,"storage_fee":1575,"gas_fee":100000,"fwd_fee":0}]}</value>
267+
</data>
268+
<data name="Query_Forget" xml:space="preserve">
269+
<value>{"@type":"query.forget","id":1}</value>
270+
</data>
271+
<data name="Query_GetInfo" xml:space="preserve">
272+
<value>{"@type":"query.getInfo","id":1}</value>
273+
</data>
274+
<data name="Query_Info" xml:space="preserve">
275+
<value>{"@type":"query.info","id":1,"valid_until":1678173619,"body_hash":"XWY...NdE=","body":"te6...BL1U=","init_state":"???"}</value>
276+
</data>
277+
<data name="Query_Send" xml:space="preserve">
278+
<value>{"@type":"query.send","id":1}</value>
279+
</data>
256280
<data name="Raw_FullAccountState" xml:space="preserve">
257281
<value>{"@type":"raw.fullAccountState","balance":"136219372128177","code":"te6cckEBAQEAcQAA3v8AIN0gggFMl7ohggEznLqxn3Gw7UTQ0x/THzHXC//jBOCk8mCDCNcYINMf0x/TH/gjE7vyY+1E0NMf0x/T/9FRMrryoVFEuvKiBPkBVBBV+RDyo/gAkyDXSpbTB9QC+wDo0QGkyMsfyx/L/8ntVBC9ba0=","data":"te6cckEBAQEAKgAAUAAAACMpqaMXb7DhKt9TV4heY445fd1j4cnc24PkHSaiiBxRdV3sZK6FBhF3","last_transaction_id":{"@type":"internal.transactionId","lt":"34948872000007","hash":"j2fRsAIg2Abex+P+GCRu9dNcmGs36Wd9U0gedEGX8oA="},"block_id":{"@type":"ton.blockIdExt","workchain":-1,"shard":"-9223372036854775808","seqno":27016796,"root_hash":"ld4MbnHygFd/z7oG3LCnBZtH+2iIDu5N7tRnjeSGwJE=","file_hash":"N6CepThwpP7E0EIxEWCHks/VLuUT+ZuEwLHZpWyfO54="},"frozen_hash":"---","sync_utime":1675267268}</value>
258282
</data>

TonLibDotNet.Tests/Types/FeesTests.cs

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
namespace TonLibDotNet.Types
2+
{
3+
public class FeesTests
4+
{
5+
[Fact]
6+
public void DeserializeOk()
7+
{
8+
var baseObj = new TonJsonSerializer().Deserialize(SampleValues.Fees);
9+
10+
Assert.NotNull(baseObj);
11+
12+
var obj = Assert.IsType<Fees>(baseObj);
13+
14+
Assert.Equal(2048000, obj.InFwdFee);
15+
Assert.Equal(1575, obj.StorageFee);
16+
Assert.Equal(2994000, obj.GasFee);
17+
Assert.Equal(1228000, obj.FwdFee);
18+
}
19+
}
20+
}
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
namespace TonLibDotNet.Types.Query
2+
{
3+
public class FeesTests
4+
{
5+
[Fact]
6+
public void DeserializeOk()
7+
{
8+
var baseObj = new TonJsonSerializer().Deserialize(SampleValues.Query_Fees);
9+
10+
Assert.NotNull(baseObj);
11+
12+
var obj = Assert.IsType<Fees>(baseObj);
13+
14+
Assert.NotNull(obj.SourceFees);
15+
Assert.Equal(2048000, obj.SourceFees.InFwdFee);
16+
Assert.Equal(1575, obj.SourceFees.StorageFee);
17+
Assert.Equal(2994000, obj.SourceFees.GasFee);
18+
Assert.Equal(1228000, obj.SourceFees.FwdFee);
19+
20+
Assert.NotNull(obj.DestinationFees);
21+
Assert.Single(obj.DestinationFees);
22+
Assert.NotNull(obj.DestinationFees[0]);
23+
24+
Assert.Equal(0, obj.DestinationFees[0].InFwdFee);
25+
Assert.Equal(1575, obj.DestinationFees[0].StorageFee);
26+
Assert.Equal(100000, obj.DestinationFees[0].GasFee);
27+
Assert.Equal(0, obj.DestinationFees[0].FwdFee);
28+
}
29+
}
30+
}
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
namespace TonLibDotNet.Types.Query
2+
{
3+
public class InfoTests
4+
{
5+
[Fact]
6+
public void DeserializeOk()
7+
{
8+
var baseObj = new TonJsonSerializer().Deserialize(SampleValues.Query_Info);
9+
10+
Assert.NotNull(baseObj);
11+
12+
var obj = Assert.IsType<Info>(baseObj);
13+
14+
Assert.Equal(1, obj.Id);
15+
Assert.Equal(1678173619, obj.ValidUntil);
16+
Assert.Equal("XWY...NdE=", obj.BodyHash);
17+
Assert.Equal("te6...BL1U=", obj.Body);
18+
Assert.Equal("???", obj.InitState);
19+
}
20+
}
21+
}

0 commit comments

Comments
 (0)