From d4252818b916e0bd4a9fb1bd19ab466eef9bb8f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=BF=97=E5=90=8C?= Date: Mon, 24 Jun 2024 11:48:23 +0800 Subject: [PATCH 01/21] update --- .../Neo.Plugins.Storage.Tests.csproj | 6 +++ .../Neo.Plugins.Storage.Tests/libleveldb.dll | Bin 0 -> 263156 bytes .../SmartContract/UT_InteropService.cs | 36 ++++++++++++++++++ 3 files changed, 42 insertions(+) create mode 100644 tests/Neo.Plugins.Storage.Tests/libleveldb.dll diff --git a/tests/Neo.Plugins.Storage.Tests/Neo.Plugins.Storage.Tests.csproj b/tests/Neo.Plugins.Storage.Tests/Neo.Plugins.Storage.Tests.csproj index 3e06cf32ca..aaab526ce6 100644 --- a/tests/Neo.Plugins.Storage.Tests/Neo.Plugins.Storage.Tests.csproj +++ b/tests/Neo.Plugins.Storage.Tests/Neo.Plugins.Storage.Tests.csproj @@ -16,4 +16,10 @@ + + + PreserveNewest + + + \ No newline at end of file diff --git a/tests/Neo.Plugins.Storage.Tests/libleveldb.dll b/tests/Neo.Plugins.Storage.Tests/libleveldb.dll new file mode 100644 index 0000000000000000000000000000000000000000..64132cc31fa1fdec713f92ef6d8395afd4fec17b GIT binary patch literal 263156 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 z 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 p.Id.Should().BeLessThan(0)); + + var snapshot = TestBlockchain.GetTestSnapshot(); + var state = TestUtils.GetContract(); + snapshot.AddContract(state.Hash, state); + engine = ApplicationEngine.Create(TriggerType.Application, null, snapshot); + engine.LoadScript(new byte[] { 0x01 }); + NativeContract.ContractManagement.GetContract(engine.Snapshot, state.Hash).Hash.Should().Be(state.Hash); + + var list2 = NativeContract.ContractManagement.ListContracts(engine.Snapshot); + list2.Count().Should().Be(list.Count() + 1); + } + [TestMethod] public void TestStorage_GetContext() { From fb0af0e446e582756f695f3f0730b58430f8bd08 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=BF=97=E5=90=8C?= Date: Mon, 24 Jun 2024 14:27:45 +0800 Subject: [PATCH 02/21] remove binary file --- .../Neo.Plugins.Storage.Tests.csproj | 6 ------ tests/Neo.Plugins.Storage.Tests/libleveldb.dll | Bin 263156 -> 0 bytes 2 files changed, 6 deletions(-) delete mode 100644 tests/Neo.Plugins.Storage.Tests/libleveldb.dll diff --git a/tests/Neo.Plugins.Storage.Tests/Neo.Plugins.Storage.Tests.csproj b/tests/Neo.Plugins.Storage.Tests/Neo.Plugins.Storage.Tests.csproj index aaab526ce6..3e06cf32ca 100644 --- a/tests/Neo.Plugins.Storage.Tests/Neo.Plugins.Storage.Tests.csproj +++ b/tests/Neo.Plugins.Storage.Tests/Neo.Plugins.Storage.Tests.csproj @@ -16,10 +16,4 @@ - - - PreserveNewest - - - \ No newline at end of file diff --git a/tests/Neo.Plugins.Storage.Tests/libleveldb.dll b/tests/Neo.Plugins.Storage.Tests/libleveldb.dll deleted file mode 100644 index 64132cc31fa1fdec713f92ef6d8395afd4fec17b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 263156 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 z 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 Date: Mon, 24 Jun 2024 17:00:55 +0800 Subject: [PATCH 03/21] Add UT and fixed bug --- .../Manifest/ContractPermissionDescriptor.cs | 3 +- .../SmartContract/UT_InteropService.cs | 82 +++++++++++++++++++ 2 files changed, 84 insertions(+), 1 deletion(-) diff --git a/src/Neo/SmartContract/Manifest/ContractPermissionDescriptor.cs b/src/Neo/SmartContract/Manifest/ContractPermissionDescriptor.cs index f1f22d99d8..d950d25c62 100644 --- a/src/Neo/SmartContract/Manifest/ContractPermissionDescriptor.cs +++ b/src/Neo/SmartContract/Manifest/ContractPermissionDescriptor.cs @@ -114,7 +114,8 @@ public bool Equals(ContractPermissionDescriptor other) if (this == other) return true; if (IsWildcard == other.IsWildcard) return true; if (IsHash) return Hash.Equals(other.Hash); - else return Group.Equals(other.Group); + if (IsGroup) return Group.Equals(other.Group); + return false; } public override int GetHashCode() diff --git a/tests/Neo.UnitTests/SmartContract/UT_InteropService.cs b/tests/Neo.UnitTests/SmartContract/UT_InteropService.cs index e3a899a256..79589eea1a 100644 --- a/tests/Neo.UnitTests/SmartContract/UT_InteropService.cs +++ b/tests/Neo.UnitTests/SmartContract/UT_InteropService.cs @@ -775,5 +775,87 @@ private static ApplicationEngine GetEngine(bool hasContainer = false, bool hasSn if (addScript) engine.LoadScript(new byte[] { 0x01 }); return engine; } + + [TestMethod] + public void TestVerifyWithECDsaV0() + { + var privateKey = new byte[32]; + using var rng = System.Security.Cryptography.RandomNumberGenerator.Create(); + rng.GetBytes(privateKey); + var publicKeyR1 = new KeyPair(privateKey).PublicKey.ToArray(); + var publicKeyK1 = (Neo.Cryptography.ECC.ECCurve.Secp256k1.G * privateKey).ToArray(); + var hexMessage = "Hello, world!"u8.ToArray(); + var signatureR1 = Crypto.Sign(hexMessage, privateKey, Neo.Cryptography.ECC.ECCurve.Secp256r1); + var signatureK1 = Crypto.Sign(hexMessage, privateKey, Neo.Cryptography.ECC.ECCurve.Secp256k1); + + var result = CryptoLib.VerifyWithECDsaV0(hexMessage, publicKeyR1, signatureR1, NamedCurveHash.secp256r1SHA256); + result.Should().BeTrue(); + result = CryptoLib.VerifyWithECDsaV0(hexMessage, publicKeyK1, signatureK1, NamedCurveHash.secp256k1SHA256); + result.Should().BeTrue(); + result = CryptoLib.VerifyWithECDsaV0(hexMessage, publicKeyK1, new byte[0], NamedCurveHash.secp256k1SHA256); + result.Should().BeFalse(); + Assert.ThrowsException(() => CryptoLib.VerifyWithECDsaV0(hexMessage, publicKeyK1, new byte[64], NamedCurveHash.secp256r1Keccak256)); + } + + [TestMethod] + public void TestSha256() + { + var input = "Hello, world!"u8.ToArray(); + var actualHash = CryptoLib.Sha256(input); + var expectedHash = "315f5bdb76d078c43b8ac0064e4a0164612b1fce77c869345bfc94c75894edd3"; + actualHash.ToHexString().Should().Be(expectedHash); + } + + [TestMethod] + public void TestRIPEMD160() + { + var input = "Hello, world!"u8.ToArray(); + var actualHash = CryptoLib.RIPEMD160(input); + var expectedHash = "58262d1fbdbe4530d8865d3518c6d6e41002610f"; + actualHash.ToHexString().Should().Be(expectedHash); + } + + [TestMethod] + public void TestMurmur32() + { + var input = "Hello, world!"u8.ToArray(); + var actualHash = CryptoLib.Murmur32(input, 0); + var expectedHash = "433e36c0"; + actualHash.ToHexString().Should().Be(expectedHash); + } + + [TestMethod] + public void TestGetBlockHash() + { + var snapshot = GetEngine(true, true).Snapshot; + var hash = LedgerContract.Ledger.GetBlockHash(snapshot, 0); + var hash2 = LedgerContract.Ledger.GetBlock(snapshot, 0).Hash; + var hash3 = LedgerContract.Ledger.GetHeader(snapshot, 0).Hash; + hash.ToString().Should().Be(hash2.ToString()); + hash.ToString().Should().Be(hash3.ToString()); + hash.ToString().Should().Be("0x1f4d1defa46faa5e7b9b8d3f79a06bec777d7c26c4aa5f6f5899a291daa87c15"); + LedgerContract.Ledger.ContainsBlock(snapshot, hash).Should().BeTrue(); + } + + [TestMethod] + public void TestGetCandidateVote() + { + var snapshot = GetEngine(true, true).Snapshot; + var vote = LedgerContract.NEO.GetCandidateVote(snapshot, new ECPoint()); + vote.Should().Be(-1); + } + + [TestMethod] + public void TestContractPermissionDescriptorEquals() + { + var descriptor1 = ContractPermissionDescriptor.CreateWildcard(); + descriptor1.Equals(null).Should().BeFalse(); + var descriptor2 = ContractPermissionDescriptor.Create(LedgerContract.NEO.Hash); + descriptor1.Equals(descriptor2).Should().BeFalse(); + var descriptor3 = ContractPermissionDescriptor.Create(hash: null); + descriptor1.Equals(descriptor3).Should().BeTrue(); + var descriptor4 = ContractPermissionDescriptor.Create(group: null); + descriptor1.Equals(descriptor4).Should().BeTrue(); + } } } From 42e6131712571193ed4dada352e8d00475d7e5cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=BF=97=E5=90=8C?= Date: Mon, 24 Jun 2024 17:21:36 +0800 Subject: [PATCH 04/21] Add UT and fixed bug --- src/Neo/SmartContract/Manifest/ContractAbi.cs | 6 ++--- .../Manifest/ContractManifest.cs | 23 +++++++++++-------- .../UT_ContractPermissionDescriptor.cs | 10 +++++++- 3 files changed, 26 insertions(+), 13 deletions(-) diff --git a/src/Neo/SmartContract/Manifest/ContractAbi.cs b/src/Neo/SmartContract/Manifest/ContractAbi.cs index 3660d1a99e..5fc4e737cd 100644 --- a/src/Neo/SmartContract/Manifest/ContractAbi.cs +++ b/src/Neo/SmartContract/Manifest/ContractAbi.cs @@ -62,10 +62,10 @@ public static ContractAbi FromJson(JObject json) { ContractAbi abi = new() { - Methods = ((JArray)json["methods"]).Select(u => ContractMethodDescriptor.FromJson((JObject)u)).ToArray(), - Events = ((JArray)json["events"]).Select(u => ContractEventDescriptor.FromJson((JObject)u)).ToArray() + Methods = ((JArray)json?["methods"])?.Select(u => ContractMethodDescriptor.FromJson((JObject)u)).ToArray(), + Events = ((JArray)json?["events"])?.Select(u => ContractEventDescriptor.FromJson((JObject)u)).ToArray() }; - if (abi.Methods.Length == 0) throw new FormatException(); + if (abi.Methods == null || abi.Methods.Length == 0) throw new FormatException(); return abi; } diff --git a/src/Neo/SmartContract/Manifest/ContractManifest.cs b/src/Neo/SmartContract/Manifest/ContractManifest.cs index 078e8fd35e..ca987c9495 100644 --- a/src/Neo/SmartContract/Manifest/ContractManifest.cs +++ b/src/Neo/SmartContract/Manifest/ContractManifest.cs @@ -110,16 +110,21 @@ public StackItem ToStackItem(ReferenceCounter referenceCounter) /// The converted manifest. public static ContractManifest FromJson(JObject json) { - ContractManifest manifest = new() + ContractManifest manifest = new(); + try { - Name = json["name"].GetString(), - Groups = ((JArray)json["groups"]).Select(u => ContractGroup.FromJson((JObject)u)).ToArray(), - SupportedStandards = ((JArray)json["supportedstandards"]).Select(u => u.GetString()).ToArray(), - Abi = ContractAbi.FromJson((JObject)json["abi"]), - Permissions = ((JArray)json["permissions"]).Select(u => ContractPermission.FromJson((JObject)u)).ToArray(), - Trusts = WildcardContainer.FromJson(json["trusts"], u => ContractPermissionDescriptor.FromJson((JString)u)), - Extra = (JObject)json["extra"] - }; + manifest.Name = json["name"]?.GetString(); + manifest.Groups = ((JArray)json["groups"])?.Select(u => ContractGroup.FromJson((JObject)u)).ToArray(); + manifest.SupportedStandards = ((JArray)json["supportedstandards"])?.Select(u => u.GetString()).ToArray(); + manifest.Abi = ContractAbi.FromJson((JObject)json["abi"]); + manifest.Permissions = ((JArray)json["permissions"])?.Select(u => ContractPermission.FromJson((JObject)u)).ToArray(); + manifest.Trusts = WildcardContainer.FromJson(json["trusts"], u => ContractPermissionDescriptor.FromJson((JString)u)); + manifest.Extra = (JObject)json["extra"]; + } + catch (FormatException) + { + throw; + } if (string.IsNullOrEmpty(manifest.Name)) throw new FormatException(); _ = manifest.Groups.ToDictionary(p => p.PubKey); diff --git a/tests/Neo.UnitTests/SmartContract/Manifest/UT_ContractPermissionDescriptor.cs b/tests/Neo.UnitTests/SmartContract/Manifest/UT_ContractPermissionDescriptor.cs index 0dee8b0f67..2455bd8064 100644 --- a/tests/Neo.UnitTests/SmartContract/Manifest/UT_ContractPermissionDescriptor.cs +++ b/tests/Neo.UnitTests/SmartContract/Manifest/UT_ContractPermissionDescriptor.cs @@ -12,6 +12,7 @@ using Microsoft.VisualStudio.TestTools.UnitTesting; using Neo.SmartContract.Manifest; using Neo.Wallets; +using System; using System.Security.Cryptography; namespace Neo.UnitTests.SmartContract.Manifest @@ -33,7 +34,7 @@ public void TestCreateByECPointAndIsWildcard() } [TestMethod] - public void TestFromAndToJson() + public void TestContractPermissionDescriptorFromAndToJson() { byte[] privateKey = new byte[32]; RandomNumberGenerator rng = RandomNumberGenerator.Create(); @@ -43,6 +44,13 @@ public void TestFromAndToJson() ContractPermissionDescriptor result = ContractPermissionDescriptor.FromJson(temp.ToJson()); Assert.AreEqual(null, result.Hash); Assert.AreEqual(result.Group, result.Group); + Assert.ThrowsException(() => ContractPermissionDescriptor.FromJson(string.Empty)); + } + + [TestMethod] + public void TestContractManifestFromJson() + { + Assert.ThrowsException(() => ContractManifest.FromJson(new Json.JObject())); } } } From d2e2e472423d6db5d83e6b308b978042d617e905 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=BF=97=E5=90=8C?= Date: Mon, 24 Jun 2024 18:03:48 +0800 Subject: [PATCH 05/21] Add UT --- src/Neo/SmartContract/Manifest/ContractManifest.cs | 2 +- tests/Neo.UnitTests/Neo.UnitTests.csproj | 3 +++ .../Manifest/TestFile/SampleContractCall.manifest.json | 1 + .../Manifest/TestFile/SampleEvent.manifest.json | 1 + .../Manifest/TestFile/SampleException.manifest.json | 1 + .../Manifest/TestFile/SampleHelloWorld.manifest.json | 1 + .../Manifest/TestFile/SampleNep17Token.manifest.json | 1 + .../Manifest/TestFile/SampleOracle.manifest.json | 1 + .../Manifest/UT_ContractPermissionDescriptor.cs | 9 +++++++++ tests/Neo.UnitTests/SmartContract/UT_InteropService.cs | 4 ++++ 10 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleContractCall.manifest.json create mode 100644 tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleEvent.manifest.json create mode 100644 tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleException.manifest.json create mode 100644 tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleHelloWorld.manifest.json create mode 100644 tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleNep17Token.manifest.json create mode 100644 tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleOracle.manifest.json diff --git a/src/Neo/SmartContract/Manifest/ContractManifest.cs b/src/Neo/SmartContract/Manifest/ContractManifest.cs index ca987c9495..7bcfaa3c4d 100644 --- a/src/Neo/SmartContract/Manifest/ContractManifest.cs +++ b/src/Neo/SmartContract/Manifest/ContractManifest.cs @@ -130,7 +130,7 @@ public static ContractManifest FromJson(JObject json) _ = manifest.Groups.ToDictionary(p => p.PubKey); if (json["features"] is not JObject features || features.Count != 0) throw new FormatException(); - if (manifest.SupportedStandards.Any(p => string.IsNullOrEmpty(p))) + if (manifest.SupportedStandards.Any(string.IsNullOrEmpty)) throw new FormatException(); _ = manifest.SupportedStandards.ToDictionary(p => p); _ = manifest.Permissions.ToDictionary(p => p.Contract); diff --git a/tests/Neo.UnitTests/Neo.UnitTests.csproj b/tests/Neo.UnitTests/Neo.UnitTests.csproj index fb246cbdc3..ce6d3b41a4 100644 --- a/tests/Neo.UnitTests/Neo.UnitTests.csproj +++ b/tests/Neo.UnitTests/Neo.UnitTests.csproj @@ -12,6 +12,9 @@ + + PreserveNewest + PreserveNewest PreserveNewest diff --git a/tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleContractCall.manifest.json b/tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleContractCall.manifest.json new file mode 100644 index 0000000000..bfbee88473 --- /dev/null +++ b/tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleContractCall.manifest.json @@ -0,0 +1 @@ +{"name":"SampleContractCall","groups":[],"features":{},"supportedstandards":[],"abi":{"methods":[{"name":"onNEP17Payment","parameters":[{"name":"from","type":"Hash160"},{"name":"amount","type":"Integer"},{"name":"data","type":"Integer"}],"returntype":"Void","offset":0,"safe":false},{"name":"_initialize","parameters":[],"returntype":"Void","offset":91,"safe":false}],"events":[]},"permissions":[],"trusts":[],"extra":{"Author":"core-dev","Version":"0.0.1","Description":"A sample contract to demonstrate how to call a contract","Sourcecode":"https://github.com/neo-project/neo-devpack-dotnet/tree/master/examples/"}} \ No newline at end of file diff --git a/tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleEvent.manifest.json b/tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleEvent.manifest.json new file mode 100644 index 0000000000..7e71a2f2a5 --- /dev/null +++ b/tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleEvent.manifest.json @@ -0,0 +1 @@ +{"name":"SampleEvent","groups":[],"features":{},"supportedstandards":[],"abi":{"methods":[{"name":"main","parameters":[],"returntype":"Boolean","offset":0,"safe":false}],"events":[{"name":"new_event_name","parameters":[{"name":"arg1","type":"ByteArray"},{"name":"arg2","type":"String"},{"name":"arg3","type":"Integer"}]},{"name":"event2","parameters":[{"name":"arg1","type":"ByteArray"},{"name":"arg2","type":"Integer"}]}]},"permissions":[{"contract":"*","methods":"*"}],"trusts":[],"extra":{"Author":"code-dev","Description":"A sample contract that demonstrates how to use Events","Version":"0.0.1","Sourcecode":"https://github.com/neo-project/neo-devpack-dotnet/tree/master/examples/"}} \ No newline at end of file diff --git a/tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleException.manifest.json b/tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleException.manifest.json new file mode 100644 index 0000000000..5d916af0f3 --- /dev/null +++ b/tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleException.manifest.json @@ -0,0 +1 @@ +{"name":"SampleException","groups":[],"features":{},"supportedstandards":[],"abi":{"methods":[{"name":"try01","parameters":[],"returntype":"Any","offset":0,"safe":false},{"name":"try02","parameters":[],"returntype":"Any","offset":77,"safe":false},{"name":"try03","parameters":[],"returntype":"Any","offset":166,"safe":false},{"name":"tryNest","parameters":[],"returntype":"Any","offset":259,"safe":false},{"name":"tryFinally","parameters":[],"returntype":"Any","offset":404,"safe":false},{"name":"tryFinallyAndRethrow","parameters":[],"returntype":"Any","offset":474,"safe":false},{"name":"tryCatch","parameters":[],"returntype":"Any","offset":550,"safe":false},{"name":"tryWithTwoFinally","parameters":[],"returntype":"Any","offset":628,"safe":false},{"name":"tryecpointCast","parameters":[],"returntype":"Any","offset":920,"safe":false},{"name":"tryvalidByteString2Ecpoint","parameters":[],"returntype":"Any","offset":1010,"safe":false},{"name":"tryinvalidByteArray2UInt160","parameters":[],"returntype":"Any","offset":1100,"safe":false},{"name":"tryvalidByteArray2UInt160","parameters":[],"returntype":"Any","offset":1190,"safe":false},{"name":"tryinvalidByteArray2UInt256","parameters":[],"returntype":"Any","offset":1280,"safe":false},{"name":"tryvalidByteArray2UInt256","parameters":[],"returntype":"Any","offset":1370,"safe":false},{"name":"tryNULL2Ecpoint_1","parameters":[],"returntype":"Array","offset":1476,"safe":false},{"name":"tryNULL2Uint160_1","parameters":[],"returntype":"Array","offset":1652,"safe":false},{"name":"tryNULL2Uint256_1","parameters":[],"returntype":"Array","offset":1828,"safe":false},{"name":"tryNULL2Bytestring_1","parameters":[],"returntype":"Array","offset":1990,"safe":false},{"name":"tryUncatchableException","parameters":[],"returntype":"Any","offset":2141,"safe":false},{"name":"_initialize","parameters":[],"returntype":"Void","offset":2219,"safe":false}],"events":[]},"permissions":[{"contract":"*","methods":"*"}],"trusts":[],"extra":{"Author":"core-dev","Description":"A sample contract to demonstrate how to handle exception","Version":"0.0.1","Sourcecode":"https://github.com/neo-project/neo-devpack-dotnet/tree/master/examples/"}} \ No newline at end of file diff --git a/tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleHelloWorld.manifest.json b/tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleHelloWorld.manifest.json new file mode 100644 index 0000000000..4c7c4b9605 --- /dev/null +++ b/tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleHelloWorld.manifest.json @@ -0,0 +1 @@ +{"name":"SampleHelloWorld","groups":[],"features":{},"supportedstandards":[],"abi":{"methods":[{"name":"sayHello","parameters":[],"returntype":"String","offset":0,"safe":true}],"events":[]},"permissions":[{"contract":"*","methods":"*"}],"trusts":[],"extra":{"Description":"A simple \u0060hello world\u0060 contract","E-mail":"dev@neo.org","Version":"0.0.1","Sourcecode":"https://github.com/neo-project/neo-devpack-dotnet/tree/master/examples/"}} \ No newline at end of file diff --git a/tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleNep17Token.manifest.json b/tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleNep17Token.manifest.json new file mode 100644 index 0000000000..bb9cf1682f --- /dev/null +++ b/tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleNep17Token.manifest.json @@ -0,0 +1 @@ +{"name":"SampleNep17Token","groups":[],"features":{},"supportedstandards":["NEP-17"],"abi":{"methods":[{"name":"symbol","parameters":[],"returntype":"String","offset":1333,"safe":true},{"name":"decimals","parameters":[],"returntype":"Integer","offset":1348,"safe":true},{"name":"totalSupply","parameters":[],"returntype":"Integer","offset":52,"safe":true},{"name":"balanceOf","parameters":[{"name":"owner","type":"Hash160"}],"returntype":"Integer","offset":98,"safe":true},{"name":"transfer","parameters":[{"name":"from","type":"Hash160"},{"name":"to","type":"Hash160"},{"name":"amount","type":"Integer"},{"name":"data","type":"Any"}],"returntype":"Boolean","offset":362,"safe":false},{"name":"getOwner","parameters":[],"returntype":"Hash160","offset":808,"safe":true},{"name":"setOwner","parameters":[{"name":"newOwner","type":"Any"}],"returntype":"Void","offset":877,"safe":false},{"name":"getMinter","parameters":[],"returntype":"Hash160","offset":980,"safe":true},{"name":"setMinter","parameters":[{"name":"newMinter","type":"Hash160"}],"returntype":"Void","offset":1025,"safe":false},{"name":"mint","parameters":[{"name":"to","type":"Hash160"},{"name":"amount","type":"Integer"}],"returntype":"Void","offset":1103,"safe":false},{"name":"burn","parameters":[{"name":"account","type":"Hash160"},{"name":"amount","type":"Integer"}],"returntype":"Void","offset":1158,"safe":false},{"name":"verify","parameters":[],"returntype":"Boolean","offset":1216,"safe":true},{"name":"update","parameters":[{"name":"nefFile","type":"ByteArray"},{"name":"manifest","type":"String"}],"returntype":"Boolean","offset":1222,"safe":false},{"name":"_initialize","parameters":[],"returntype":"Void","offset":1271,"safe":false}],"events":[{"name":"Transfer","parameters":[{"name":"from","type":"Hash160"},{"name":"to","type":"Hash160"},{"name":"amount","type":"Integer"}]},{"name":"SetOwner","parameters":[{"name":"newOwner","type":"Hash160"}]},{"name":"SetMinter","parameters":[{"name":"newMinter","type":"Hash160"}]}]},"permissions":[{"contract":"*","methods":"*"}],"trusts":[],"extra":{"Author":"core-dev","Version":"0.0.1","Description":"A sample NEP-17 token","Sourcecode":"https://github.com/neo-project/neo-devpack-dotnet/tree/master/examples/"}} \ No newline at end of file diff --git a/tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleOracle.manifest.json b/tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleOracle.manifest.json new file mode 100644 index 0000000000..8570ccb3fb --- /dev/null +++ b/tests/Neo.UnitTests/SmartContract/Manifest/TestFile/SampleOracle.manifest.json @@ -0,0 +1 @@ +{"name":"SampleOracle","groups":[],"features":{},"supportedstandards":[],"abi":{"methods":[{"name":"getResponse","parameters":[],"returntype":"String","offset":0,"safe":true},{"name":"doRequest","parameters":[],"returntype":"Void","offset":35,"safe":false},{"name":"onOracleResponse","parameters":[{"name":"requestedUrl","type":"String"},{"name":"userData","type":"Any"},{"name":"oracleResponse","type":"Integer"},{"name":"jsonString","type":"String"}],"returntype":"Void","offset":333,"safe":false}],"events":[]},"permissions":[{"contract":"*","methods":"*"}],"trusts":[],"extra":{"Author":"code-dev","Description":"A sample contract to demonstrate how to use Example.SmartContract.Oracle Service","Version":"0.0.1","Sourcecode":"https://github.com/neo-project/neo-devpack-dotnet/tree/master/examples/"}} \ No newline at end of file diff --git a/tests/Neo.UnitTests/SmartContract/Manifest/UT_ContractPermissionDescriptor.cs b/tests/Neo.UnitTests/SmartContract/Manifest/UT_ContractPermissionDescriptor.cs index 2455bd8064..bb8bdc91c6 100644 --- a/tests/Neo.UnitTests/SmartContract/Manifest/UT_ContractPermissionDescriptor.cs +++ b/tests/Neo.UnitTests/SmartContract/Manifest/UT_ContractPermissionDescriptor.cs @@ -9,7 +9,9 @@ // Redistribution and use in source and binary forms with or without // modifications are permitted. +using FluentAssertions; using Microsoft.VisualStudio.TestTools.UnitTesting; +using Neo.Json; using Neo.SmartContract.Manifest; using Neo.Wallets; using System; @@ -51,6 +53,13 @@ public void TestContractPermissionDescriptorFromAndToJson() public void TestContractManifestFromJson() { Assert.ThrowsException(() => ContractManifest.FromJson(new Json.JObject())); + var jsonFiles = System.IO.Directory.GetFiles(System.IO.Path.Combine("SmartContract", "Manifest", "TestFile")); + foreach (var item in jsonFiles) + { + var json = JObject.Parse(System.IO.File.ReadAllText(item)) as JObject; + var manifest = ContractManifest.FromJson(json); + manifest.ToJson().ToString().Should().Be(json.ToString()); + } } } } diff --git a/tests/Neo.UnitTests/SmartContract/UT_InteropService.cs b/tests/Neo.UnitTests/SmartContract/UT_InteropService.cs index 79589eea1a..1cdb2cb497 100644 --- a/tests/Neo.UnitTests/SmartContract/UT_InteropService.cs +++ b/tests/Neo.UnitTests/SmartContract/UT_InteropService.cs @@ -855,7 +855,11 @@ public void TestContractPermissionDescriptorEquals() var descriptor3 = ContractPermissionDescriptor.Create(hash: null); descriptor1.Equals(descriptor3).Should().BeTrue(); var descriptor4 = ContractPermissionDescriptor.Create(group: null); + var descriptor5 = ContractPermissionDescriptor.Create(group: new ECPoint()); descriptor1.Equals(descriptor4).Should().BeTrue(); + descriptor2.Equals(descriptor3).Should().BeFalse(); + descriptor5.Equals(descriptor3).Should().BeFalse(); + descriptor5.Equals(descriptor5).Should().BeTrue(); } } } From ebf0289092ba41ab705ebe023faf031ee8b22ea3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=BF=97=E5=90=8C?= Date: Tue, 25 Jun 2024 15:14:02 +0800 Subject: [PATCH 06/21] Add UT --- src/Neo/Cryptography/Base58.cs | 2 +- .../Cryptography/UT_BloomFilter.cs | 2 ++ .../Cryptography/UT_Cryptography_Helper.cs | 25 +++++++++++++++++++ .../Network/P2P/Payloads/UT_Block.cs | 21 ++++++++++++++++ .../SmartContract/Native/UT_StdLib.cs | 4 +++ .../SmartContract/UT_InteropService.cs | 2 ++ 6 files changed, 55 insertions(+), 1 deletion(-) diff --git a/src/Neo/Cryptography/Base58.cs b/src/Neo/Cryptography/Base58.cs index adecc8b631..ae01ed59df 100644 --- a/src/Neo/Cryptography/Base58.cs +++ b/src/Neo/Cryptography/Base58.cs @@ -34,7 +34,7 @@ public static class Base58 /// A byte array that is equivalent to . public static byte[] Base58CheckDecode(this string input) { - if (input is null) throw new ArgumentNullException(nameof(input)); + if (string.IsNullOrEmpty(input)) throw new ArgumentException(nameof(input)); byte[] buffer = Decode(input); if (buffer.Length < 4) throw new FormatException(); byte[] checksum = buffer.Sha256(0, buffer.Length - 4).Sha256(); diff --git a/tests/Neo.UnitTests/Cryptography/UT_BloomFilter.cs b/tests/Neo.UnitTests/Cryptography/UT_BloomFilter.cs index 907a5df2b9..f7bc1789dd 100644 --- a/tests/Neo.UnitTests/Cryptography/UT_BloomFilter.cs +++ b/tests/Neo.UnitTests/Cryptography/UT_BloomFilter.cs @@ -39,6 +39,8 @@ public void TestBloomFIlterConstructorGetKMTweak() uint nTweak = 123456; Action action = () => new BloomFilter(m, n, nTweak); action.Should().Throw(); + action = () => new BloomFilter(m, n, nTweak, new byte[] { 0, 1, 2, 3, 4 }); + action.Should().Throw(); m = 7; n = -10; diff --git a/tests/Neo.UnitTests/Cryptography/UT_Cryptography_Helper.cs b/tests/Neo.UnitTests/Cryptography/UT_Cryptography_Helper.cs index 01022baab9..cc652f2fd4 100644 --- a/tests/Neo.UnitTests/Cryptography/UT_Cryptography_Helper.cs +++ b/tests/Neo.UnitTests/Cryptography/UT_Cryptography_Helper.cs @@ -17,6 +17,7 @@ using Neo.SmartContract; using Neo.Wallets; using Neo.Wallets.NEP6; +using Newtonsoft.Json.Linq; using System; using System.Linq; using System.Text; @@ -41,6 +42,17 @@ public void TestBase58CheckDecode() input = "3vQB7B6MrGQZaxCuFg4og"; action = () => input.Base58CheckDecode(); action.Should().Throw(); + + Assert.ThrowsException(() => string.Empty.Base58CheckDecode()); + } + + [TestMethod] + public void TestMurmurReadOnlySpan() + { + ReadOnlySpan input = "Hello, world!"u8; + byte[] input2 = input.ToArray(); + input.Murmur32(0).Should().Be(input2.Murmur32(0)); + input.Murmur128(0).Should().Equal(input2.Murmur128(0)); } [TestMethod] @@ -50,6 +62,19 @@ public void TestSha256() byte[] result = value.Sha256(0, value.Length); string resultStr = result.ToHexString(); resultStr.Should().Be("b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9"); + value.Sha256().Should().Equal(result); + ((Span)value).Sha256().Should().Equal(result); + ((ReadOnlySpan)value).Sha256().Should().Equal(result); + } + + [TestMethod] + public void TestKeccak256() + { + var input = "Hello, world!"u8.ToArray(); + var result = input.Keccak256(); + result.ToHexString().Should().Be("b6e16d27ac5ab427a7f68900ac5559ce272dc6c37c82b3e052246c82244c50e4"); + ((Span)input).Keccak256().Should().Equal(result); + ((ReadOnlySpan)input).Keccak256().Should().Equal(result); } [TestMethod] diff --git a/tests/Neo.UnitTests/Network/P2P/Payloads/UT_Block.cs b/tests/Neo.UnitTests/Network/P2P/Payloads/UT_Block.cs index 2021e5a187..075c083df2 100644 --- a/tests/Neo.UnitTests/Network/P2P/Payloads/UT_Block.cs +++ b/tests/Neo.UnitTests/Network/P2P/Payloads/UT_Block.cs @@ -13,7 +13,10 @@ using Microsoft.VisualStudio.TestTools.UnitTesting; using Neo.IO; using Neo.Json; +using Neo.Ledger; using Neo.Network.P2P.Payloads; +using Neo.SmartContract; +using Neo.SmartContract.Native; namespace Neo.UnitTests.Network.P2P.Payloads { @@ -21,6 +24,15 @@ namespace Neo.UnitTests.Network.P2P.Payloads public class UT_Block { Block uut; + private static ApplicationEngine GetEngine(bool hasContainer = false, bool hasSnapshot = false, bool hasBlock = false, bool addScript = true, long gas = 20_00000000) + { + var tx = hasContainer ? TestUtils.GetTransaction(UInt160.Zero) : null; + var snapshot = hasSnapshot ? TestBlockchain.GetTestSnapshot() : null; + var block = hasBlock ? new Block { Header = new Header() } : null; + var engine = ApplicationEngine.Create(TriggerType.Application, tx, snapshot, block, TestBlockchain.TheNeoSystem.Settings, gas: gas); + if (addScript) engine.LoadScript(new byte[] { 0x01 }); + return engine; + } [TestInitialize] public void TestSetup() @@ -136,6 +148,15 @@ private void AssertStandardBlockTestVals(UInt256 val256, UInt256 merkRoot, UInt1 public void Equals_SameObj() { uut.Equals(uut).Should().BeTrue(); + var obj = uut as object; + uut.Equals(obj).Should().BeTrue(); + } + + [TestMethod] + public void TestGetHashCode() + { + var snapshot = GetEngine(true, true).Snapshot; + NativeContract.Ledger.GetBlock(snapshot, 0).GetHashCode().Should().Be(-626492395); } [TestMethod] diff --git a/tests/Neo.UnitTests/SmartContract/Native/UT_StdLib.cs b/tests/Neo.UnitTests/SmartContract/Native/UT_StdLib.cs index f36fa2cfa4..b5c9c198ec 100644 --- a/tests/Neo.UnitTests/SmartContract/Native/UT_StdLib.cs +++ b/tests/Neo.UnitTests/SmartContract/Native/UT_StdLib.cs @@ -9,6 +9,7 @@ // Redistribution and use in source and binary forms with or without // modifications are permitted. +using FluentAssertions; using Microsoft.VisualStudio.TestTools.UnitTesting; using Neo.SmartContract; using Neo.SmartContract.Native; @@ -53,6 +54,9 @@ public void TestItoaAtoi() Assert.ThrowsException(() => StdLib.Atoi("a", 10)); Assert.ThrowsException(() => StdLib.Atoi("g", 16)); Assert.ThrowsException(() => StdLib.Atoi("a", 11)); + + StdLib.Atoi(StdLib.Itoa(BigInteger.One, 10)).Should().Be(BigInteger.One); + StdLib.Atoi(StdLib.Itoa(BigInteger.MinusOne, 10)).Should().Be(BigInteger.MinusOne); } [TestMethod] diff --git a/tests/Neo.UnitTests/SmartContract/UT_InteropService.cs b/tests/Neo.UnitTests/SmartContract/UT_InteropService.cs index 1cdb2cb497..6348048f20 100644 --- a/tests/Neo.UnitTests/SmartContract/UT_InteropService.cs +++ b/tests/Neo.UnitTests/SmartContract/UT_InteropService.cs @@ -850,10 +850,12 @@ public void TestContractPermissionDescriptorEquals() { var descriptor1 = ContractPermissionDescriptor.CreateWildcard(); descriptor1.Equals(null).Should().BeFalse(); + descriptor1.Equals(null as object).Should().BeFalse(); var descriptor2 = ContractPermissionDescriptor.Create(LedgerContract.NEO.Hash); descriptor1.Equals(descriptor2).Should().BeFalse(); var descriptor3 = ContractPermissionDescriptor.Create(hash: null); descriptor1.Equals(descriptor3).Should().BeTrue(); + descriptor1.Equals(descriptor3 as object).Should().BeTrue(); var descriptor4 = ContractPermissionDescriptor.Create(group: null); var descriptor5 = ContractPermissionDescriptor.Create(group: new ECPoint()); descriptor1.Equals(descriptor4).Should().BeTrue(); From 552c257cd6fa31e841ba325a16821d112336a1f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=BF=97=E5=90=8C?= Date: Wed, 26 Jun 2024 11:28:25 +0800 Subject: [PATCH 07/21] Add UT --- tests/Neo.Json.UnitTests/UT_JArray.cs | 13 +++++++++++++ tests/Neo.Json.UnitTests/UT_JBoolean.cs | 2 ++ tests/Neo.Json.UnitTests/UT_JNumber.cs | 23 +++++++++++++++++++++++ tests/Neo.Json.UnitTests/UT_JString.cs | 16 ++++++++++++++-- 4 files changed, 52 insertions(+), 2 deletions(-) diff --git a/tests/Neo.Json.UnitTests/UT_JArray.cs b/tests/Neo.Json.UnitTests/UT_JArray.cs index 40388d11fc..b6c603ca2a 100644 --- a/tests/Neo.Json.UnitTests/UT_JArray.cs +++ b/tests/Neo.Json.UnitTests/UT_JArray.cs @@ -254,5 +254,18 @@ public void TestAsString() var s = jArray.AsString(); Assert.AreEqual(s, "{\"name\":\"alice\",\"age\":30,\"score\":100.001,\"gender\":\"female\",\"isMarried\":true,\"pet\":{\"name\":\"Tom\",\"type\":\"cat\"}},{\"name\":\"bob\",\"age\":100000,\"score\":0.001,\"gender\":\"male\",\"isMarried\":false,\"pet\":{\"name\":\"Paul\",\"type\":\"dog\"}}"); } + + [TestMethod] + public void TestClone() + { + var jArray = new JArray + { + alice, + bob, + }; + var a = jArray.AsString(); + var b = jArray.Clone().AsString(); + a.Should().Be(b); + } } } diff --git a/tests/Neo.Json.UnitTests/UT_JBoolean.cs b/tests/Neo.Json.UnitTests/UT_JBoolean.cs index 3ab19bd1b3..0e81e99c35 100644 --- a/tests/Neo.Json.UnitTests/UT_JBoolean.cs +++ b/tests/Neo.Json.UnitTests/UT_JBoolean.cs @@ -36,8 +36,10 @@ public void TestEqual() { Assert.IsTrue(jTrue.Equals(new JBoolean(true))); Assert.IsTrue(jTrue == new JBoolean(true)); + Assert.IsTrue(jTrue != new JBoolean(false)); Assert.IsTrue(jFalse.Equals(new JBoolean())); Assert.IsTrue(jFalse == new JBoolean()); + Assert.IsTrue(jFalse.GetBoolean().ToString().ToLowerInvariant() == jFalse.ToString()); } } } diff --git a/tests/Neo.Json.UnitTests/UT_JNumber.cs b/tests/Neo.Json.UnitTests/UT_JNumber.cs index 6eb0598fd3..df8bdca619 100644 --- a/tests/Neo.Json.UnitTests/UT_JNumber.cs +++ b/tests/Neo.Json.UnitTests/UT_JNumber.cs @@ -9,6 +9,8 @@ // Redistribution and use in source and binary forms with or without // modifications are permitted. +using System.Numerics; + namespace Neo.Json.UnitTests { enum Woo @@ -72,6 +74,27 @@ public void TestEqual() Assert.IsTrue(minInt.Equals(JNumber.MIN_SAFE_INTEGER)); Assert.IsTrue(minInt == JNumber.MIN_SAFE_INTEGER); Assert.IsTrue(zero == new JNumber()); + Assert.IsFalse(zero != new JNumber()); + Assert.IsTrue(zero.AsNumber() == zero.GetNumber()); + Assert.IsFalse(zero == null); + + var jnum = new JNumber(1); + jnum.Equals(new JNumber(1)).Should().BeTrue(); + jnum.Equals((uint)1).Should().BeTrue(); + jnum.Equals((int)1).Should().BeTrue(); + jnum.Equals((ulong)1).Should().BeTrue(); + jnum.Equals((long)1).Should().BeTrue(); + jnum.Equals((byte)1).Should().BeTrue(); + jnum.Equals((sbyte)1).Should().BeTrue(); + jnum.Equals((short)1).Should().BeTrue(); + jnum.Equals((ushort)1).Should().BeTrue(); + jnum.Equals((decimal)1).Should().BeTrue(); + jnum.Equals((float)1).Should().BeTrue(); + jnum.Equals((double)1).Should().BeTrue(); + jnum.Equals(null).Should().BeFalse(); + var x = jnum; + jnum.Equals(x).Should().BeTrue(); + Assert.ThrowsException(() => jnum.Equals(new BigInteger(1))); } } } diff --git a/tests/Neo.Json.UnitTests/UT_JString.cs b/tests/Neo.Json.UnitTests/UT_JString.cs index 7e2bec9834..3f0ca159ab 100644 --- a/tests/Neo.Json.UnitTests/UT_JString.cs +++ b/tests/Neo.Json.UnitTests/UT_JString.cs @@ -63,10 +63,22 @@ public void TestGetEnum() public void TestEqual() { var str = "hello world"; + var str2 = "hello world2"; var jString = new JString(str); - Assert.IsTrue(jString.Equals(str)); + var jString2 = new JString(str2); + Assert.IsTrue(jString == str); - Assert.IsTrue(jString != "hello world2"); + Assert.IsFalse(jString == null); + Assert.IsTrue(jString != str2); + Assert.IsFalse(jString == str2); + + Assert.AreEqual(str, jString.GetString()); + Assert.IsTrue(jString.Equals(str)); + Assert.IsFalse(jString.Equals(jString2)); + Assert.IsFalse(jString.Equals(null)); + Assert.IsFalse(jString.Equals(123)); + var reference = jString; + Assert.IsTrue(jString.Equals(reference)); } } } From 19505bf8d9bf2f6edb0801a38fb5fb68362063b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=BF=97=E5=90=8C?= Date: Tue, 2 Jul 2024 16:33:12 +0800 Subject: [PATCH 08/21] Update src/Neo/SmartContract/Manifest/ContractManifest.cs Co-authored-by: Christopher Schuchardt --- src/Neo/SmartContract/Manifest/ContractManifest.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Neo/SmartContract/Manifest/ContractManifest.cs b/src/Neo/SmartContract/Manifest/ContractManifest.cs index 7bcfaa3c4d..b89eb9be1f 100644 --- a/src/Neo/SmartContract/Manifest/ContractManifest.cs +++ b/src/Neo/SmartContract/Manifest/ContractManifest.cs @@ -114,7 +114,7 @@ public static ContractManifest FromJson(JObject json) try { manifest.Name = json["name"]?.GetString(); - manifest.Groups = ((JArray)json["groups"])?.Select(u => ContractGroup.FromJson((JObject)u)).ToArray(); + manifest.Groups = ((JArray)json["groups"])?.Select(u => ContractGroup.FromJson((JObject)u)).ToArray() ?? []; manifest.SupportedStandards = ((JArray)json["supportedstandards"])?.Select(u => u.GetString()).ToArray(); manifest.Abi = ContractAbi.FromJson((JObject)json["abi"]); manifest.Permissions = ((JArray)json["permissions"])?.Select(u => ContractPermission.FromJson((JObject)u)).ToArray(); From b2db47384619e3069d19a565d96799029e92b549 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=BF=97=E5=90=8C?= Date: Tue, 2 Jul 2024 16:33:18 +0800 Subject: [PATCH 09/21] Update src/Neo/SmartContract/Manifest/ContractManifest.cs Co-authored-by: Christopher Schuchardt --- src/Neo/SmartContract/Manifest/ContractManifest.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Neo/SmartContract/Manifest/ContractManifest.cs b/src/Neo/SmartContract/Manifest/ContractManifest.cs index b89eb9be1f..acdfd5138d 100644 --- a/src/Neo/SmartContract/Manifest/ContractManifest.cs +++ b/src/Neo/SmartContract/Manifest/ContractManifest.cs @@ -117,7 +117,7 @@ public static ContractManifest FromJson(JObject json) manifest.Groups = ((JArray)json["groups"])?.Select(u => ContractGroup.FromJson((JObject)u)).ToArray() ?? []; manifest.SupportedStandards = ((JArray)json["supportedstandards"])?.Select(u => u.GetString()).ToArray(); manifest.Abi = ContractAbi.FromJson((JObject)json["abi"]); - manifest.Permissions = ((JArray)json["permissions"])?.Select(u => ContractPermission.FromJson((JObject)u)).ToArray(); + manifest.Permissions = ((JArray)json["permissions"])?.Select(u => ContractPermission.FromJson((JObject)u)).ToArray() ?? []; manifest.Trusts = WildcardContainer.FromJson(json["trusts"], u => ContractPermissionDescriptor.FromJson((JString)u)); manifest.Extra = (JObject)json["extra"]; } From d1bb5445d707036ea67af9064bad591f6e245d3a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=BF=97=E5=90=8C?= Date: Tue, 2 Jul 2024 16:33:24 +0800 Subject: [PATCH 10/21] Update src/Neo/SmartContract/Manifest/ContractManifest.cs Co-authored-by: Christopher Schuchardt --- src/Neo/SmartContract/Manifest/ContractManifest.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Neo/SmartContract/Manifest/ContractManifest.cs b/src/Neo/SmartContract/Manifest/ContractManifest.cs index acdfd5138d..f9d0ace1e0 100644 --- a/src/Neo/SmartContract/Manifest/ContractManifest.cs +++ b/src/Neo/SmartContract/Manifest/ContractManifest.cs @@ -115,7 +115,7 @@ public static ContractManifest FromJson(JObject json) { manifest.Name = json["name"]?.GetString(); manifest.Groups = ((JArray)json["groups"])?.Select(u => ContractGroup.FromJson((JObject)u)).ToArray() ?? []; - manifest.SupportedStandards = ((JArray)json["supportedstandards"])?.Select(u => u.GetString()).ToArray(); + manifest.SupportedStandards = ((JArray)json["supportedstandards"])?.Select(u => u.GetString()).ToArray() ?? []; manifest.Abi = ContractAbi.FromJson((JObject)json["abi"]); manifest.Permissions = ((JArray)json["permissions"])?.Select(u => ContractPermission.FromJson((JObject)u)).ToArray() ?? []; manifest.Trusts = WildcardContainer.FromJson(json["trusts"], u => ContractPermissionDescriptor.FromJson((JString)u)); From 9f3db1a7201e6b20bab1ba38c8495766d6b2626f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=BF=97=E5=90=8C?= Date: Wed, 3 Jul 2024 13:50:25 +0800 Subject: [PATCH 11/21] Update Base58.cs --- src/Neo/Cryptography/Base58.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Neo/Cryptography/Base58.cs b/src/Neo/Cryptography/Base58.cs index ae01ed59df..77c5a08e73 100644 --- a/src/Neo/Cryptography/Base58.cs +++ b/src/Neo/Cryptography/Base58.cs @@ -34,7 +34,7 @@ public static class Base58 /// A byte array that is equivalent to . public static byte[] Base58CheckDecode(this string input) { - if (string.IsNullOrEmpty(input)) throw new ArgumentException(nameof(input)); + if (string.IsNullOrEmpty(input)) throw new FormatException(nameof(input)); byte[] buffer = Decode(input); if (buffer.Length < 4) throw new FormatException(); byte[] checksum = buffer.Sha256(0, buffer.Length - 4).Sha256(); From 90124cd89c2c70bce79386f41725b02f5867a56f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=BF=97=E5=90=8C?= Date: Wed, 3 Jul 2024 13:51:49 +0800 Subject: [PATCH 12/21] Update UT_Cryptography_Helper.cs --- tests/Neo.UnitTests/Cryptography/UT_Cryptography_Helper.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/Neo.UnitTests/Cryptography/UT_Cryptography_Helper.cs b/tests/Neo.UnitTests/Cryptography/UT_Cryptography_Helper.cs index cc652f2fd4..7dd6eed90b 100644 --- a/tests/Neo.UnitTests/Cryptography/UT_Cryptography_Helper.cs +++ b/tests/Neo.UnitTests/Cryptography/UT_Cryptography_Helper.cs @@ -43,7 +43,7 @@ public void TestBase58CheckDecode() action = () => input.Base58CheckDecode(); action.Should().Throw(); - Assert.ThrowsException(() => string.Empty.Base58CheckDecode()); + Assert.ThrowsException(() => string.Empty.Base58CheckDecode()); } [TestMethod] From 2b1c197978756fca3281be0a425b5b2beeb110b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=BF=97=E5=90=8C?= Date: Wed, 3 Jul 2024 17:14:19 +0800 Subject: [PATCH 13/21] Update Base58.cs --- src/Neo/Cryptography/Base58.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Neo/Cryptography/Base58.cs b/src/Neo/Cryptography/Base58.cs index 77c5a08e73..0b69cffbc7 100644 --- a/src/Neo/Cryptography/Base58.cs +++ b/src/Neo/Cryptography/Base58.cs @@ -34,7 +34,6 @@ public static class Base58 /// A byte array that is equivalent to . public static byte[] Base58CheckDecode(this string input) { - if (string.IsNullOrEmpty(input)) throw new FormatException(nameof(input)); byte[] buffer = Decode(input); if (buffer.Length < 4) throw new FormatException(); byte[] checksum = buffer.Sha256(0, buffer.Length - 4).Sha256(); From 162cbd5654749986b722ede544433acf7c6c7b43 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=BF=97=E5=90=8C?= Date: Thu, 4 Jul 2024 14:54:04 +0800 Subject: [PATCH 14/21] update --- src/Neo/SmartContract/Manifest/ContractAbi.cs | 6 +++--- src/Neo/SmartContract/Manifest/ContractManifest.cs | 8 ++++---- .../Manifest/ContractPermissionDescriptor.cs | 3 +-- .../Manifest/UT_ContractPermissionDescriptor.cs | 2 +- tests/Neo.UnitTests/SmartContract/UT_InteropService.cs | 1 - 5 files changed, 9 insertions(+), 11 deletions(-) diff --git a/src/Neo/SmartContract/Manifest/ContractAbi.cs b/src/Neo/SmartContract/Manifest/ContractAbi.cs index 5fc4e737cd..0845d28e69 100644 --- a/src/Neo/SmartContract/Manifest/ContractAbi.cs +++ b/src/Neo/SmartContract/Manifest/ContractAbi.cs @@ -62,10 +62,10 @@ public static ContractAbi FromJson(JObject json) { ContractAbi abi = new() { - Methods = ((JArray)json?["methods"])?.Select(u => ContractMethodDescriptor.FromJson((JObject)u)).ToArray(), - Events = ((JArray)json?["events"])?.Select(u => ContractEventDescriptor.FromJson((JObject)u)).ToArray() + Methods = ((JArray)json!["methods"])!.Select(u => ContractMethodDescriptor.FromJson((JObject)u)).ToArray(), + Events = ((JArray)json!["events"])!.Select(u => ContractEventDescriptor.FromJson((JObject)u)).ToArray() }; - if (abi.Methods == null || abi.Methods.Length == 0) throw new FormatException(); + if (abi.Methods.Length == 0) throw new FormatException(); return abi; } diff --git a/src/Neo/SmartContract/Manifest/ContractManifest.cs b/src/Neo/SmartContract/Manifest/ContractManifest.cs index f9d0ace1e0..eb240071a9 100644 --- a/src/Neo/SmartContract/Manifest/ContractManifest.cs +++ b/src/Neo/SmartContract/Manifest/ContractManifest.cs @@ -113,11 +113,11 @@ public static ContractManifest FromJson(JObject json) ContractManifest manifest = new(); try { - manifest.Name = json["name"]?.GetString(); - manifest.Groups = ((JArray)json["groups"])?.Select(u => ContractGroup.FromJson((JObject)u)).ToArray() ?? []; - manifest.SupportedStandards = ((JArray)json["supportedstandards"])?.Select(u => u.GetString()).ToArray() ?? []; + manifest.Name = json["name"]!.GetString(); + manifest.Groups = ((JArray)json["groups"])!.Select(u => ContractGroup.FromJson((JObject)u)).ToArray() ?? []; + manifest.SupportedStandards = ((JArray)json["supportedstandards"])!.Select(u => u.GetString()).ToArray() ?? []; manifest.Abi = ContractAbi.FromJson((JObject)json["abi"]); - manifest.Permissions = ((JArray)json["permissions"])?.Select(u => ContractPermission.FromJson((JObject)u)).ToArray() ?? []; + manifest.Permissions = ((JArray)json["permissions"])!.Select(u => ContractPermission.FromJson((JObject)u)).ToArray() ?? []; manifest.Trusts = WildcardContainer.FromJson(json["trusts"], u => ContractPermissionDescriptor.FromJson((JString)u)); manifest.Extra = (JObject)json["extra"]; } diff --git a/src/Neo/SmartContract/Manifest/ContractPermissionDescriptor.cs b/src/Neo/SmartContract/Manifest/ContractPermissionDescriptor.cs index d950d25c62..f1f22d99d8 100644 --- a/src/Neo/SmartContract/Manifest/ContractPermissionDescriptor.cs +++ b/src/Neo/SmartContract/Manifest/ContractPermissionDescriptor.cs @@ -114,8 +114,7 @@ public bool Equals(ContractPermissionDescriptor other) if (this == other) return true; if (IsWildcard == other.IsWildcard) return true; if (IsHash) return Hash.Equals(other.Hash); - if (IsGroup) return Group.Equals(other.Group); - return false; + else return Group.Equals(other.Group); } public override int GetHashCode() diff --git a/tests/Neo.UnitTests/SmartContract/Manifest/UT_ContractPermissionDescriptor.cs b/tests/Neo.UnitTests/SmartContract/Manifest/UT_ContractPermissionDescriptor.cs index bb8bdc91c6..973e7b7ccf 100644 --- a/tests/Neo.UnitTests/SmartContract/Manifest/UT_ContractPermissionDescriptor.cs +++ b/tests/Neo.UnitTests/SmartContract/Manifest/UT_ContractPermissionDescriptor.cs @@ -52,7 +52,7 @@ public void TestContractPermissionDescriptorFromAndToJson() [TestMethod] public void TestContractManifestFromJson() { - Assert.ThrowsException(() => ContractManifest.FromJson(new Json.JObject())); + Assert.ThrowsException(() => ContractManifest.FromJson(new Json.JObject())); var jsonFiles = System.IO.Directory.GetFiles(System.IO.Path.Combine("SmartContract", "Manifest", "TestFile")); foreach (var item in jsonFiles) { diff --git a/tests/Neo.UnitTests/SmartContract/UT_InteropService.cs b/tests/Neo.UnitTests/SmartContract/UT_InteropService.cs index 71308c6ddc..1edcfbd9ca 100644 --- a/tests/Neo.UnitTests/SmartContract/UT_InteropService.cs +++ b/tests/Neo.UnitTests/SmartContract/UT_InteropService.cs @@ -852,7 +852,6 @@ public void TestContractPermissionDescriptorEquals() descriptor1.Equals(null).Should().BeFalse(); descriptor1.Equals(null as object).Should().BeFalse(); var descriptor2 = ContractPermissionDescriptor.Create(LedgerContract.NEO.Hash); - descriptor1.Equals(descriptor2).Should().BeFalse(); var descriptor3 = ContractPermissionDescriptor.Create(hash: null); descriptor1.Equals(descriptor3).Should().BeTrue(); descriptor1.Equals(descriptor3 as object).Should().BeTrue(); From 77d7ba75a62751126b0885ba37d5f38dbe343b01 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=BF=97=E5=90=8C?= Date: Thu, 4 Jul 2024 14:56:10 +0800 Subject: [PATCH 15/21] Update ContractManifest.cs --- src/Neo/SmartContract/Manifest/ContractManifest.cs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Neo/SmartContract/Manifest/ContractManifest.cs b/src/Neo/SmartContract/Manifest/ContractManifest.cs index eb240071a9..eb3a635bbd 100644 --- a/src/Neo/SmartContract/Manifest/ContractManifest.cs +++ b/src/Neo/SmartContract/Manifest/ContractManifest.cs @@ -114,10 +114,10 @@ public static ContractManifest FromJson(JObject json) try { manifest.Name = json["name"]!.GetString(); - manifest.Groups = ((JArray)json["groups"])!.Select(u => ContractGroup.FromJson((JObject)u)).ToArray() ?? []; - manifest.SupportedStandards = ((JArray)json["supportedstandards"])!.Select(u => u.GetString()).ToArray() ?? []; + manifest.Groups = ((JArray)json["groups"])!.Select(u => ContractGroup.FromJson((JObject)u)).ToArray(); + manifest.SupportedStandards = ((JArray)json["supportedstandards"])!.Select(u => u.GetString()).ToArray(); manifest.Abi = ContractAbi.FromJson((JObject)json["abi"]); - manifest.Permissions = ((JArray)json["permissions"])!.Select(u => ContractPermission.FromJson((JObject)u)).ToArray() ?? []; + manifest.Permissions = ((JArray)json["permissions"])!.Select(u => ContractPermission.FromJson((JObject)u)).ToArray(); manifest.Trusts = WildcardContainer.FromJson(json["trusts"], u => ContractPermissionDescriptor.FromJson((JString)u)); manifest.Extra = (JObject)json["extra"]; } From becb1ac4fdc0e43b8ef21e745a6b7f0c82f033c4 Mon Sep 17 00:00:00 2001 From: Fernando Diaz Toledano Date: Thu, 4 Jul 2024 09:51:02 +0200 Subject: [PATCH 16/21] Revert change that affect a syscall --- src/Neo/Cryptography/Base58.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Neo/Cryptography/Base58.cs b/src/Neo/Cryptography/Base58.cs index 0b69cffbc7..adecc8b631 100644 --- a/src/Neo/Cryptography/Base58.cs +++ b/src/Neo/Cryptography/Base58.cs @@ -34,6 +34,7 @@ public static class Base58 /// A byte array that is equivalent to . public static byte[] Base58CheckDecode(this string input) { + if (input is null) throw new ArgumentNullException(nameof(input)); byte[] buffer = Decode(input); if (buffer.Length < 4) throw new FormatException(); byte[] checksum = buffer.Sha256(0, buffer.Length - 4).Sha256(); From 1b1fc30948efd4ece192648c88aed53fba35b097 Mon Sep 17 00:00:00 2001 From: Fernando Diaz Toledano Date: Thu, 4 Jul 2024 09:51:28 +0200 Subject: [PATCH 17/21] Revert try --- .../Manifest/ContractManifest.cs | 24 ++++++++----------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/src/Neo/SmartContract/Manifest/ContractManifest.cs b/src/Neo/SmartContract/Manifest/ContractManifest.cs index eb3a635bbd..0bb68c310b 100644 --- a/src/Neo/SmartContract/Manifest/ContractManifest.cs +++ b/src/Neo/SmartContract/Manifest/ContractManifest.cs @@ -110,21 +110,17 @@ public StackItem ToStackItem(ReferenceCounter referenceCounter) /// The converted manifest. public static ContractManifest FromJson(JObject json) { - ContractManifest manifest = new(); - try - { - manifest.Name = json["name"]!.GetString(); - manifest.Groups = ((JArray)json["groups"])!.Select(u => ContractGroup.FromJson((JObject)u)).ToArray(); - manifest.SupportedStandards = ((JArray)json["supportedstandards"])!.Select(u => u.GetString()).ToArray(); - manifest.Abi = ContractAbi.FromJson((JObject)json["abi"]); - manifest.Permissions = ((JArray)json["permissions"])!.Select(u => ContractPermission.FromJson((JObject)u)).ToArray(); - manifest.Trusts = WildcardContainer.FromJson(json["trusts"], u => ContractPermissionDescriptor.FromJson((JString)u)); - manifest.Extra = (JObject)json["extra"]; - } - catch (FormatException) + ContractManifest manifest = new() { - throw; - } + Name = json["name"]!.GetString(), + Groups = ((JArray)json["groups"])!.Select(u => ContractGroup.FromJson((JObject)u)).ToArray(), + SupportedStandards = ((JArray)json["supportedstandards"])!.Select(u => u.GetString()).ToArray(), + Abi = ContractAbi.FromJson((JObject)json["abi"]), + Permissions = ((JArray)json["permissions"])!.Select(u => ContractPermission.FromJson((JObject)u)).ToArray(), + Trusts = WildcardContainer.FromJson(json["trusts"], u => ContractPermissionDescriptor.FromJson((JString)u)), + Extra = (JObject)json["extra"] + }; + if (string.IsNullOrEmpty(manifest.Name)) throw new FormatException(); _ = manifest.Groups.ToDictionary(p => p.PubKey); From c861b84202a5ac2ad17a799fe3a8b01f4d1bbd6f Mon Sep 17 00:00:00 2001 From: Fernando Diaz Toledano Date: Thu, 4 Jul 2024 09:51:41 +0200 Subject: [PATCH 18/21] Remove using --- tests/Neo.UnitTests/Cryptography/UT_Cryptography_Helper.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/tests/Neo.UnitTests/Cryptography/UT_Cryptography_Helper.cs b/tests/Neo.UnitTests/Cryptography/UT_Cryptography_Helper.cs index 7dd6eed90b..4bfde89ba2 100644 --- a/tests/Neo.UnitTests/Cryptography/UT_Cryptography_Helper.cs +++ b/tests/Neo.UnitTests/Cryptography/UT_Cryptography_Helper.cs @@ -17,7 +17,6 @@ using Neo.SmartContract; using Neo.Wallets; using Neo.Wallets.NEP6; -using Newtonsoft.Json.Linq; using System; using System.Linq; using System.Text; From bc2726e776366c995045f4d235ce48cfa0c58ef9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=BF=97=E5=90=8C?= Date: Fri, 5 Jul 2024 08:24:22 +0800 Subject: [PATCH 19/21] Update src/Neo/SmartContract/Manifest/ContractManifest.cs Co-authored-by: Christopher Schuchardt --- src/Neo/SmartContract/Manifest/ContractManifest.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Neo/SmartContract/Manifest/ContractManifest.cs b/src/Neo/SmartContract/Manifest/ContractManifest.cs index 0bb68c310b..b45ee531c2 100644 --- a/src/Neo/SmartContract/Manifest/ContractManifest.cs +++ b/src/Neo/SmartContract/Manifest/ContractManifest.cs @@ -113,8 +113,8 @@ public static ContractManifest FromJson(JObject json) ContractManifest manifest = new() { Name = json["name"]!.GetString(), - Groups = ((JArray)json["groups"])!.Select(u => ContractGroup.FromJson((JObject)u)).ToArray(), - SupportedStandards = ((JArray)json["supportedstandards"])!.Select(u => u.GetString()).ToArray(), + Groups = ((JArray)json["groups"])?.Select(u => ContractGroup.FromJson((JObject)u)).ToArray() ?? [], + SupportedStandards = ((JArray)json["supportedstandards"])?.Select(u => u.GetString()).ToArray() ?? [], Abi = ContractAbi.FromJson((JObject)json["abi"]), Permissions = ((JArray)json["permissions"])!.Select(u => ContractPermission.FromJson((JObject)u)).ToArray(), Trusts = WildcardContainer.FromJson(json["trusts"], u => ContractPermissionDescriptor.FromJson((JString)u)), From d6cb9cd3f7f764f3d6d020e70b1e2f5b4d84dbc4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=BF=97=E5=90=8C?= Date: Fri, 5 Jul 2024 08:24:32 +0800 Subject: [PATCH 20/21] Update src/Neo/SmartContract/Manifest/ContractAbi.cs Co-authored-by: Christopher Schuchardt --- src/Neo/SmartContract/Manifest/ContractAbi.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Neo/SmartContract/Manifest/ContractAbi.cs b/src/Neo/SmartContract/Manifest/ContractAbi.cs index 0845d28e69..cedd431d62 100644 --- a/src/Neo/SmartContract/Manifest/ContractAbi.cs +++ b/src/Neo/SmartContract/Manifest/ContractAbi.cs @@ -62,8 +62,8 @@ public static ContractAbi FromJson(JObject json) { ContractAbi abi = new() { - Methods = ((JArray)json!["methods"])!.Select(u => ContractMethodDescriptor.FromJson((JObject)u)).ToArray(), - Events = ((JArray)json!["events"])!.Select(u => ContractEventDescriptor.FromJson((JObject)u)).ToArray() + Methods = ((JArray)json!["methods"])?.Select(u => ContractMethodDescriptor.FromJson((JObject)u)).ToArray() ?? [], + Events = ((JArray)json!["events"])?.Select(u => ContractEventDescriptor.FromJson((JObject)u)).ToArray() ?? [] }; if (abi.Methods.Length == 0) throw new FormatException(); return abi; From 34a868026101e6fef6d246402c831db63d30395b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=BF=97=E5=90=8C?= Date: Fri, 5 Jul 2024 08:24:43 +0800 Subject: [PATCH 21/21] Update src/Neo/SmartContract/Manifest/ContractManifest.cs Co-authored-by: Christopher Schuchardt --- src/Neo/SmartContract/Manifest/ContractManifest.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Neo/SmartContract/Manifest/ContractManifest.cs b/src/Neo/SmartContract/Manifest/ContractManifest.cs index b45ee531c2..b1bd317e41 100644 --- a/src/Neo/SmartContract/Manifest/ContractManifest.cs +++ b/src/Neo/SmartContract/Manifest/ContractManifest.cs @@ -116,7 +116,7 @@ public static ContractManifest FromJson(JObject json) Groups = ((JArray)json["groups"])?.Select(u => ContractGroup.FromJson((JObject)u)).ToArray() ?? [], SupportedStandards = ((JArray)json["supportedstandards"])?.Select(u => u.GetString()).ToArray() ?? [], Abi = ContractAbi.FromJson((JObject)json["abi"]), - Permissions = ((JArray)json["permissions"])!.Select(u => ContractPermission.FromJson((JObject)u)).ToArray(), + Permissions = ((JArray)json["permissions"])?.Select(u => ContractPermission.FromJson((JObject)u)).ToArray() ?? [], Trusts = WildcardContainer.FromJson(json["trusts"], u => ContractPermissionDescriptor.FromJson((JString)u)), Extra = (JObject)json["extra"] };