Skip to content
Open
Prev Previous commit
Next Next commit
setup wiremock test
  • Loading branch information
apuig committed Mar 20, 2025
commit 8d814200660a2dd8ead6005749fc79e988c86045
7 changes: 6 additions & 1 deletion analytics/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,12 @@
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<scope>test</scope>
</dependency>
</dependency>
<dependency>
<groupId>org.wiremock</groupId>
<artifactId>wiremock-standalone</artifactId>
<version>3.2.0</version>
</dependency>
</dependencies>

<build>
Expand Down
40 changes: 40 additions & 0 deletions analytics/src/test/java/com/segment/analytics/SegmentTest.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
package com.segment.analytics;

import static com.github.tomakehurst.wiremock.client.WireMock.okJson;
import static com.github.tomakehurst.wiremock.client.WireMock.post;
import static com.github.tomakehurst.wiremock.client.WireMock.stubFor;
import static com.github.tomakehurst.wiremock.client.WireMock.urlEqualTo;
import static com.github.tomakehurst.wiremock.core.WireMockConfiguration.wireMockConfig;

import com.github.tomakehurst.wiremock.junit.WireMockRule;
import com.segment.analytics.messages.TrackMessage;
import java.util.UUID;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;

public class SegmentTest {

@Rule
public WireMockRule wireMockRule = new WireMockRule(wireMockConfig().dynamicPort(), false);

Analytics analytics;

@Before
public void confWireMock() {
stubFor(post(urlEqualTo("/v1/import/")).willReturn(okJson("{\"success\": \"true\"}")));

analytics = Analytics.builder("write-key")
.endpoint(wireMockRule.baseUrl())
// callback
// http client
.build();
}

@Test
public void test() {
analytics.enqueue(TrackMessage.builder("my-track")
.messageId(UUID.randomUUID().toString())
.userId("userId"));
}
}