use of io.nem.symbol.sdk.model.namespace.NamespaceInfo in project nem2-sdk-java by nemtech.
the class NamespaceRegistrationIntegrationTest method standaloneRootRegisterNamespaceTransaction.
@ParameterizedTest
@EnumSource(RepositoryType.class)
void standaloneRootRegisterNamespaceTransaction(RepositoryType type) {
String namespaceName = "test-root-namespace-" + Double.valueOf(Math.floor(Math.random() * 10000)).intValue();
NamespaceRegistrationTransaction namespaceRegistrationTransaction = NamespaceRegistrationTransactionFactory.createRootNamespace(getNetworkType(), getDeadline(), namespaceName, helper().getDuration()).maxFee(maxFee).build();
announceAndValidate(type, this.account, namespaceRegistrationTransaction);
rootNamespaceId = namespaceRegistrationTransaction.getNamespaceId();
sleep(1000);
NamespaceInfo namespaceInfo = get(getRepositoryFactory(type).createNamespaceRepository().getNamespace(namespaceRegistrationTransaction.getNamespaceId()));
Assertions.assertEquals(this.account.getAddress(), namespaceInfo.getOwnerAddress());
Assertions.assertEquals(namespaceRegistrationTransaction.getNamespaceId(), namespaceInfo.getId());
}
use of io.nem.symbol.sdk.model.namespace.NamespaceInfo in project nem2-sdk-java by nemtech.
the class StateProofServiceTest method namespace.
@Test
void namespace() throws Exception {
NamespaceRepository repository = mock(NamespaceRepository.class);
when(factory.createNamespaceRepository()).thenReturn(repository);
NamespaceId id = NamespaceId.createFromId(BigInteger.ONE);
NamespaceInfo state = Mockito.mock(NamespaceInfo.class);
when(state.getId()).thenReturn(id);
when(state.serialize(any())).thenReturn(ConvertUtils.fromHexToBytes(serialized));
when(repository.streamer()).thenReturn(new PaginationStreamer<>(repository));
when(repository.search(any())).thenReturn(Observable.just(new Page<>(new ArrayList<>())));
when(repository.getNamespace(eq(id))).thenReturn(Observable.just(state));
when(repository.getNamespaceMerkle(eq(id))).thenReturn(Observable.just(tree));
StateMerkleProof<NamespaceInfo> proof = service.namespace(id).toFuture().get();
Assertions.assertTrue(proof.isValid());
Assertions.assertEquals(state, proof.getState());
}
use of io.nem.symbol.sdk.model.namespace.NamespaceInfo in project nem2-sdk-java by nemtech.
the class NamespaceRepositoryOkHttpImpl method search.
@Override
public Observable<Page<NamespaceInfo>> search(NamespaceSearchCriteria criteria) {
String ownerAddress = toDto(criteria.getOwnerAddress());
NamespaceRegistrationTypeEnum registrationType = criteria.getRegistrationType() == null ? null : NamespaceRegistrationTypeEnum.fromValue(criteria.getRegistrationType().getValue());
String level0 = criteria.getLevel0();
AliasTypeEnum aliasType = criteria.getAliasType() == null ? null : AliasTypeEnum.fromValue(criteria.getAliasType().getValue());
Integer pageSize = criteria.getPageSize();
Integer pageNumber = criteria.getPageNumber();
String offset = criteria.getOffset();
Order order = toDto(criteria.getOrder());
Callable<NamespacePage> callback = () -> getClient().searchNamespaces(ownerAddress, registrationType, level0, aliasType, pageSize, pageNumber, offset, order);
return exceptionHandling(call(callback).map(page -> this.toPage(page.getPagination(), page.getData().stream().map(this::toNamespaceInfo).collect(Collectors.toList()))));
}
use of io.nem.symbol.sdk.model.namespace.NamespaceInfo in project nem2-sdk-java by nemtech.
the class NamespaceRepositoryVertxImplTest method search.
@Test
public void search() throws Exception {
Address address = Address.generateRandom(networkType);
Address ownerAccount = Account.generateNewAccount(NetworkType.MIJIN_TEST).getAddress();
NamespaceInfoDTO dto = new NamespaceInfoDTO();
NamespaceMetaDTO meta = new NamespaceMetaDTO();
meta.setActive(true);
dto.setId("SomeId");
meta.setIndex(123);
dto.setMeta(meta);
NamespaceDTO namespace = new NamespaceDTO();
namespace.setDepth(111);
namespace.setVersion(1);
namespace.setStartHeight(BigInteger.valueOf(4));
namespace.setEndHeight(BigInteger.valueOf(5));
namespace.setRegistrationType(NamespaceRegistrationTypeEnum.NUMBER_1);
namespace.setOwnerAddress(ownerAccount.encoded());
AliasDTO alias = new AliasDTO();
alias.setType(AliasTypeEnum.NUMBER_2);
alias.setAddress(address.encoded());
namespace.setAlias(alias);
dto.setNamespace(namespace);
mockRemoteCall(toPage(dto));
NamespaceInfo info = repository.search(new NamespaceSearchCriteria().ownerAddress(address)).toFuture().get().getData().get(0);
Assertions.assertNotNull(info);
Assertions.assertEquals(NamespaceRegistrationType.SUB_NAMESPACE, info.getRegistrationType());
Assertions.assertEquals(dto.getId(), info.getRecordId().get());
Assertions.assertEquals(meta.getIndex(), info.getIndex());
Assertions.assertEquals(meta.getActive(), info.isActive());
Assertions.assertEquals(BigInteger.valueOf(4), info.getStartHeight());
Assertions.assertEquals(BigInteger.valueOf(5), info.getEndHeight());
}
use of io.nem.symbol.sdk.model.namespace.NamespaceInfo in project nem2-sdk-java by nemtech.
the class NamespaceRepositoryVertxImplTest method shouldGetNamespace.
@Test
public void shouldGetNamespace() throws Exception {
Address ownerAddress = Account.generateNewAccount(networkType).getAddress();
NamespaceId namespaceId = NamespaceId.createFromName("accountalias");
NamespaceInfoDTO dto = new NamespaceInfoDTO();
dto.setId("SomeId");
NamespaceMetaDTO meta = new NamespaceMetaDTO();
meta.setActive(true);
meta.setIndex(123);
dto.setMeta(meta);
NamespaceDTO namespace = new NamespaceDTO();
namespace.setDepth(111);
namespace.setVersion(1);
namespace.setStartHeight(BigInteger.valueOf(4));
namespace.setEndHeight(BigInteger.valueOf(5));
namespace.setRegistrationType(NamespaceRegistrationTypeEnum.NUMBER_1);
namespace.setOwnerAddress(ownerAddress.encoded());
AliasDTO alias = new AliasDTO();
alias.setType(AliasTypeEnum.NUMBER_1);
alias.setMosaicId("123");
namespace.setAlias(alias);
dto.setNamespace(namespace);
mockRemoteCall(dto);
NamespaceInfo info = repository.getNamespace(namespaceId).toFuture().get();
Assertions.assertNotNull(info);
Assertions.assertEquals(NamespaceRegistrationType.SUB_NAMESPACE, info.getRegistrationType());
Assertions.assertEquals(dto.getId(), info.getRecordId().get());
Assertions.assertEquals(meta.getIndex(), info.getIndex());
Assertions.assertEquals(meta.getActive(), info.isActive());
Assertions.assertEquals(BigInteger.valueOf(4), info.getStartHeight());
Assertions.assertEquals(BigInteger.valueOf(5), info.getEndHeight());
}
Aggregations