- Total Swift test files: 54
- Missing C++ test files: 13
- Incomplete conversions: 28
- Total test methods in Swift: ~1000+
- Successfully converted: ~60%
-
Crypto Tests
- EC Key Pair tests (enhanced with all Swift test cases)
- Base58 tests
- Base64 tests
- Hash tests
- XEP2 tests
- ScryptParams tests
- Sign tests
- WIF tests
-
Script Tests
- InvocationScript tests
- VerificationScript tests
- ScriptBuilder tests (enhanced with comprehensive tests)
- ScriptReader tests
- OpCode tests
-
Serialization Tests
- BinaryReader tests
- BinaryWriter tests
- VarSize tests
-
Type Tests
- Hash160 tests
- Hash256 tests
- ContractParameter tests
-
Wallet Tests
- Wallet tests
- XEP6Wallet tests
- Account tests
-
Transaction Tests
- Transaction tests
- Signer tests
- Witness tests
- WitnessRule tests
- WitnessScope tests
-
Contract Tests
- ContractManifest tests
- NEF file tests
- SmartContract tests
-
Utils Tests
- Address tests
- Hex tests
- SerializableTransactionTest.swift
- Bip32ECKeyPairTests.swift
- EpicChainURITests.swift
- NNSNameTests.swift
- EnumTypeTests.swift
- JsonRpc2_0RxTests.swift
- XEP6WalletTests.swift (separate from XEP6Wallet)
- MockEpicChainSwift.swift (test utility)
- MockBlocks.swift (test utility)
- JSON.swift (test utility)
- MockURLSession.swift (test utility)
- RIPEMD160Tests.swift
-
TransactionBuilderTests (47 missing tests)
- Most transaction building scenarios not covered
- Signing and witness management tests missing
- Fee calculation tests missing
-
SmartContractTests (23 missing tests)
- Contract invocation tests missing
- Function calling tests missing
- Iterator handling tests missing
-
NeoNameServiceTests (44 missing tests)
- Domain registration tests missing
- Record management tests missing
- Resolution tests missing
-
RequestTests (83 missing tests)
- RPC request formation tests missing
- Parameter validation tests missing
-
ResponseTests (74 missing tests)
- Response parsing tests missing
- Error handling tests missing
- Complete TransactionBuilder tests (foundation for all transactions)
- Complete Request/Response tests (RPC communication)
- Implement missing Bip32ECKeyPair tests (wallet generation)
- Complete SmartContract tests
- Complete EpicChainToken tests
- Complete EpicPulseToken tests
- Complete PolicyContract tests
- Complete NeoNameService tests
- Implement EpicChainURI tests
- Complete remaining NFT tests
- Mock utilities for testing
- Additional edge case coverage
- Performance benchmarks
- Crypto: 80% coverage (missing Bip32, RIPEMD160)
- Script: 95% coverage (comprehensive)
- Transaction: 70% coverage (missing builder tests)
- Contract: 40% coverage (many missing tests)
- Wallet: 75% coverage (missing some XEP6 features)
- Protocol: 20% coverage (request/response largely missing)
- Types: 85% coverage (good coverage)
- Utils: 90% coverage (well tested)
- Many C++ tests exist but don't match Swift test method names exactly
- Some Swift tests may not be applicable due to language differences
- Mock objects and test utilities need different approach in C++
- Some tests require RPC server mocking which needs implementation
- ✅ Implement all placeholder tests (COMPLETE)
- ✅ Enhance ECKeyPair tests to match Swift (COMPLETE)
- ✅ Create comprehensive ScriptBuilder tests (COMPLETE)
- ⏳ Implement TransactionBuilder tests (PENDING)
- ⏳ Implement SmartContract interaction tests (PENDING)
- ⏳ Implement Request/Response tests (PENDING)
- ⏳ Create test utilities and mocks (PENDING)