Skip to content

Commit

Permalink
test module
Browse files Browse the repository at this point in the history
Signed-off-by: Hendrik Ebbers <[email protected]>
  • Loading branch information
hendrikebbers committed Feb 3, 2025
1 parent 72c4974 commit 442dbf3
Show file tree
Hide file tree
Showing 21 changed files with 151 additions and 30 deletions.
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
package com.openelements.hiero.base.config;

import com.openelements.hiero.base.config.provider.implementation.NetworkSettingsProviderLoader;
import com.openelements.hiero.base.config.implementation.NetworkSettingsProviderLoader;
import java.util.Optional;
import java.util.Set;
import org.jspecify.annotations.NonNull;

/**
* Interface that provides all needed configuration settings for a network. Operator of a Hiero based network should
* implement this interface to provide the necessary configuration settings. Implementations can be provided via Java
* SPI as defined in {@link com.openelements.hiero.base.config.provider.NetworkSettingsProvider}.
* SPI as defined in {@link NetworkSettingsProvider}.
*
* @see com.openelements.hiero.base.config.provider.NetworkSettingsProvider
* @see NetworkSettingsProvider
* @see java.util.ServiceLoader
*/
public interface NetworkSettings {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package com.openelements.hiero.base.config.provider;
package com.openelements.hiero.base.config;

import com.openelements.hiero.base.config.NetworkSettings;
import java.util.Set;

/**
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.openelements.hiero.base.config.provider;
package com.openelements.hiero.base.config.hedera;

import com.openelements.hiero.base.config.ConsensusNode;
import com.openelements.hiero.base.config.NetworkSettings;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.openelements.hiero.base.config.provider;
package com.openelements.hiero.base.config.hedera;

import com.openelements.hiero.base.config.ConsensusNode;
import com.openelements.hiero.base.config.NetworkSettings;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
package com.openelements.hiero.base.config.provider.implementation;
package com.openelements.hiero.base.config.hedera;

import com.google.auto.service.AutoService;
import com.openelements.hiero.base.config.NetworkSettings;
import com.openelements.hiero.base.config.provider.HederMainnetSettings;
import com.openelements.hiero.base.config.provider.HederTestnetSettings;
import com.openelements.hiero.base.config.provider.NetworkSettingsProvider;
import com.openelements.hiero.base.config.NetworkSettingsProvider;
import java.util.Set;

@AutoService(NetworkSettingsProvider.class)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.openelements.hiero.base.config.provider.implementation;
package com.openelements.hiero.base.config.implementation;

import com.openelements.hiero.base.config.NetworkSettings;
import com.openelements.hiero.base.config.provider.NetworkSettingsProvider;
import com.openelements.hiero.base.config.NetworkSettingsProvider;
import java.util.Collections;
import java.util.HashSet;
import java.util.Objects;
Expand Down
6 changes: 4 additions & 2 deletions hiero-enterprise-base/src/main/java/module-info.java
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,13 @@
exports com.openelements.hiero.base.mirrornode;
exports com.openelements.hiero.base.verification;
exports com.openelements.hiero.base.data;
exports com.openelements.hiero.base.config;
exports com.openelements.hiero.base.implementation to com.openelements.hiero.base.test;
exports com.openelements.hiero.base.implementation.data to com.openelements.hiero.base.test;
exports com.openelements.hiero.base.config.implementation;

uses com.openelements.hiero.base.config.provider.NetworkSettingsProvider;
provides com.openelements.hiero.base.config.provider.NetworkSettingsProvider with com.openelements.hiero.base.config.provider.implementation.HederaNetworkSettingsProvider;
uses com.openelements.hiero.base.config.NetworkSettingsProvider;
provides com.openelements.hiero.base.config.NetworkSettingsProvider with com.openelements.hiero.base.config.hedera.HederaNetworkSettingsProvider;

requires transitive sdk; //Hedera SDK
requires org.slf4j;
Expand Down
5 changes: 5 additions & 0 deletions hiero-enterprise-spring/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,11 @@
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>hiero-enterprise-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.grpc</groupId>
<artifactId>grpc-okhttp</artifactId>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
package com.openelements.hiero.spring.test;

import com.hedera.hashgraph.sdk.AccountId;
import com.openelements.hiero.base.data.Account;
import com.openelements.hiero.base.AccountClient;
import com.openelements.hiero.base.mirrornode.AccountRepository;
import com.openelements.hiero.base.data.Account;
import com.openelements.hiero.base.data.AccountInfo;
import com.openelements.hiero.base.mirrornode.AccountRepository;
import com.openelements.hiero.test.HieroTestUtils;
import java.util.Optional;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
Expand Down Expand Up @@ -36,6 +37,5 @@ void findById() throws Exception {
//then
Assertions.assertNotNull(result);
Assertions.assertTrue(result.isPresent());

}
}
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
import com.openelements.hiero.base.data.Nft;
import com.openelements.hiero.base.data.Page;
import com.openelements.hiero.base.mirrornode.NftRepository;
import com.openelements.hiero.test.HieroTestUtils;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.List;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
import com.openelements.hiero.base.protocol.FileInfoResponse;
import com.openelements.hiero.base.protocol.FileUpdateRequest;
import com.openelements.hiero.base.protocol.ProtocolLayerClient;
import com.openelements.hiero.test.HieroTestUtils;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import com.openelements.hiero.base.mirrornode.MirrorNodeClient;
import com.openelements.hiero.base.protocol.ProtocolLayerClient;
import com.openelements.hiero.spring.EnableHiero;
import com.openelements.hiero.test.HieroTestUtils;
import org.springframework.boot.SpringBootConfiguration;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
import com.openelements.hiero.base.data.Account;
import com.openelements.hiero.base.data.Page;
import com.openelements.hiero.base.mirrornode.TokenRepository;
import com.openelements.hiero.test.HieroTestUtils;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
spring.hiero.network.name:solo
10 changes: 0 additions & 10 deletions hiero-enterprise-spring/src/test/resources/application-solo.yml

This file was deleted.

45 changes: 45 additions & 0 deletions hiero-enterprise-test/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<parent>
<groupId>com.open-elements.hiero</groupId>
<artifactId>hiero-enterprise</artifactId>
<version>0.17.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>

<artifactId>hiero-enterprise-test</artifactId>

<name>Hiero Enterprise Test</name>
<description>Base Library that makes it easier to create tests for Hiero</description>
<url>https://github.com/OpenElements/hiero-enterprise-java</url>

<dependencies>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>hiero-enterprise-base</artifactId>
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.jreleaser</groupId>
<artifactId>jreleaser-maven-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</build>
</project>
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.openelements.hiero.spring.test;
package com.openelements.hiero.test;

import com.hedera.hashgraph.sdk.Status;
import com.hedera.hashgraph.sdk.TransactionId;
Expand Down Expand Up @@ -48,7 +48,7 @@ public void transactionHandled(TransactionType transactionType, TransactionId tr
public void waitForMirrorNodeRecords() throws HieroException {
final TransactionId transactionId = transactionIdRef.get();
if (transactionId != null) {
LocalDateTime start = LocalDateTime.now();
final LocalDateTime start = LocalDateTime.now();
boolean done = false;
while (!done) {
String transactionIdString =
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
package com.openelements.hiero.test;

import com.openelements.hiero.base.config.ConsensusNode;
import com.openelements.hiero.base.config.NetworkSettings;
import java.util.Optional;
import java.util.Set;
import org.jspecify.annotations.NonNull;


public class SoloActionNetworkSettings implements NetworkSettings {

@Override
public @NonNull String getNetworkIdentifier() {
return "hiero-solo-action";
}

@Override
public @NonNull Optional<String> getNetworkName() {
return Optional.of("Hiero Solo Action");
}

@Override
public @NonNull Set<String> getMirrorNodeAddresses() {
return Set.of("http://localhost:8080");
}

@Override
public @NonNull Set<ConsensusNode> getConsensusNodes() {
return Set.of(new ConsensusNode("127.0.0.1", "50211", "0.0.3"));
}

@Override
public @NonNull Optional<Long> chainId() {
return Optional.empty();
}

@Override
public @NonNull Optional<String> relayUrl() {
return Optional.empty();
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
package com.openelements.hiero.test.implementation;

import com.google.auto.service.AutoService;
import com.openelements.hiero.base.config.NetworkSettings;
import com.openelements.hiero.base.config.NetworkSettingsProvider;
import com.openelements.hiero.test.SoloActionNetworkSettings;
import java.util.Set;

@AutoService(NetworkSettingsProvider.class)
public class SoloActionNetworkSettingsProvider implements NetworkSettingsProvider {

@Override
public String getName() {
return "Provider for Hiero Solo Action";
}

@Override
public Set<NetworkSettings> createNetworkSettings() {
return Set.of(new SoloActionNetworkSettings());
}
}
9 changes: 9 additions & 0 deletions hiero-enterprise-test/src/main/java/module-info.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
open module com.openelements.hiero.test {
exports com.openelements.hiero.test;

provides com.openelements.hiero.base.config.NetworkSettingsProvider with com.openelements.hiero.test.implementation.SoloActionNetworkSettingsProvider;

requires transitive com.openelements.hiero.base;
requires org.jspecify;
requires com.google.auto.service;
}
6 changes: 6 additions & 0 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,11 @@
<artifactId>hiero-enterprise-base</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>hiero-enterprise-test</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>hiero-enterprise-spring</artifactId>
Expand Down Expand Up @@ -200,6 +205,7 @@

<modules>
<module>hiero-enterprise-base</module>
<module>hiero-enterprise-test</module>
<module>hiero-enterprise-spring</module>
<module>hiero-enterprise-microprofile</module>
<module>hiero-enterprise-spring-sample</module>
Expand Down

0 comments on commit 442dbf3

Please sign in to comment.