-
Notifications
You must be signed in to change notification settings - Fork 82
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
b54007c
commit 40dd04a
Showing
7 changed files
with
482 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
4 changes: 3 additions & 1 deletion
4
...e/PrebidMobile-core/src/main/java/org/prebid/mobile/api/original/OnFetchDemandResult.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,9 +1,11 @@ | ||
package org.prebid.mobile.api.original; | ||
|
||
import androidx.annotation.NonNull; | ||
|
||
import org.prebid.mobile.api.data.BidInfo; | ||
|
||
public interface OnFetchDemandResult { | ||
|
||
void onComplete(BidInfo bidInfo); | ||
void onComplete(@NonNull BidInfo bidInfo); | ||
|
||
} |
298 changes: 298 additions & 0 deletions
298
...Mobile-core/src/test/java/org/prebid/mobile/api/original/MultiformatAdUnitFacadeTest.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,298 @@ | ||
package org.prebid.mobile.api.original; | ||
|
||
import static org.hamcrest.MatcherAssert.assertThat; | ||
import static org.junit.Assert.assertArrayEquals; | ||
import static org.junit.Assert.assertEquals; | ||
import static org.junit.Assert.assertTrue; | ||
|
||
import org.assertj.core.util.Lists; | ||
import org.hamcrest.Matchers; | ||
import org.junit.Test; | ||
import org.prebid.mobile.AdSize; | ||
import org.prebid.mobile.BannerParameters; | ||
import org.prebid.mobile.ContentObject; | ||
import org.prebid.mobile.DataObject; | ||
import org.prebid.mobile.NativeAsset; | ||
import org.prebid.mobile.NativeParameters; | ||
import org.prebid.mobile.NativeTitleAsset; | ||
import org.prebid.mobile.VideoParameters; | ||
import org.prebid.mobile.api.data.AdFormat; | ||
import org.prebid.mobile.configuration.AdUnitConfiguration; | ||
import org.prebid.mobile.rendering.models.AdPosition; | ||
import org.prebid.mobile.rendering.models.PlacementType; | ||
|
||
import java.util.ArrayList; | ||
import java.util.Arrays; | ||
import java.util.EnumSet; | ||
import java.util.HashMap; | ||
import java.util.HashSet; | ||
import java.util.Set; | ||
|
||
public class MultiformatAdUnitFacadeTest { | ||
|
||
private MultiformatAdUnitFacade subject; | ||
|
||
private static final String configId = "testConfigId"; | ||
|
||
@Test | ||
public void configuration_configId() { | ||
PrebidRequest request = new PrebidRequest(); | ||
|
||
subject = new MultiformatAdUnitFacade(configId, request); | ||
AdUnitConfiguration configuration = subject.getConfiguration(); | ||
|
||
assertEquals(configId, configuration.getConfigId()); | ||
} | ||
|
||
@Test | ||
public void configuration_bannerParameters() { | ||
PrebidRequest request = new PrebidRequest(); | ||
|
||
BannerParameters bannerParameters = new BannerParameters(); | ||
HashSet<AdSize> adSizes = new HashSet<>(Arrays.asList(new AdSize(300, 250), new AdSize(320, 50))); | ||
bannerParameters.setAdSizes(adSizes); | ||
request.setBannerParameters(bannerParameters); | ||
|
||
|
||
subject = new MultiformatAdUnitFacade(configId, request); | ||
AdUnitConfiguration configuration = subject.getConfiguration(); | ||
|
||
|
||
assertEquals(1, configuration.getAdFormats().size()); | ||
assertEquals(AdFormat.BANNER, configuration.getAdFormats().toArray()[0]); | ||
assertEquals(bannerParameters, configuration.getBannerParameters()); | ||
|
||
HashSet<AdSize> configurationSizes = configuration.getSizes(); | ||
assertThat( | ||
new HashSet<>(Arrays.asList(new AdSize(300, 250), new AdSize(320, 50))), | ||
Matchers.equalTo(configurationSizes) | ||
); | ||
} | ||
|
||
@Test | ||
public void configuration_interstitialBannerParameters() { | ||
PrebidRequest request = new PrebidRequest(); | ||
request.setInterstitial(true); | ||
|
||
BannerParameters bannerParameters = new BannerParameters(); | ||
HashSet<AdSize> adSizes = new HashSet<>(Arrays.asList(new AdSize(320, 480))); | ||
bannerParameters.setAdSizes(adSizes); | ||
bannerParameters.setInterstitialMinWidthPercentage(30); | ||
bannerParameters.setInterstitialMinHeightPercentage(30); | ||
request.setBannerParameters(bannerParameters); | ||
|
||
|
||
subject = new MultiformatAdUnitFacade(configId, request); | ||
AdUnitConfiguration configuration = subject.getConfiguration(); | ||
|
||
|
||
assertEquals(1, configuration.getAdFormats().size()); | ||
assertEquals(AdFormat.INTERSTITIAL, configuration.getAdFormats().toArray()[0]); | ||
assertEquals(bannerParameters, configuration.getBannerParameters()); | ||
assertEquals(new AdSize(30, 30), configuration.getMinSizePercentage()); | ||
assertEquals(AdPosition.FULLSCREEN.getValue(), configuration.getAdPositionValue()); | ||
|
||
HashSet<AdSize> configurationSizes = configuration.getSizes(); | ||
assertThat( | ||
new HashSet<>(Arrays.asList(new AdSize(320, 480))), | ||
Matchers.equalTo(configurationSizes) | ||
); | ||
} | ||
|
||
@Test | ||
public void configuration_videoParameters() { | ||
PrebidRequest request = new PrebidRequest(); | ||
|
||
VideoParameters videoParameters = new VideoParameters(Lists.newArrayList("video/mp4")); | ||
videoParameters.setAdSize(new AdSize(300, 250)); | ||
request.setVideoParameters(videoParameters); | ||
|
||
|
||
subject = new MultiformatAdUnitFacade(configId, request); | ||
AdUnitConfiguration configuration = subject.getConfiguration(); | ||
|
||
|
||
assertEquals(1, configuration.getAdFormats().size()); | ||
assertEquals(AdFormat.VAST, configuration.getAdFormats().toArray()[0]); | ||
assertEquals(videoParameters, configuration.getVideoParameters()); | ||
|
||
HashSet<AdSize> configurationSizes = configuration.getSizes(); | ||
assertThat( | ||
new HashSet<>(Arrays.asList(new AdSize(300, 250))), | ||
Matchers.equalTo(configurationSizes) | ||
); | ||
} | ||
|
||
@Test | ||
public void configuration_interstitialVideoParameters() { | ||
PrebidRequest request = new PrebidRequest(); | ||
request.setInterstitial(true); | ||
|
||
VideoParameters videoParameters = new VideoParameters(Lists.newArrayList("video/mp4")); | ||
videoParameters.setAdSize(new AdSize(300, 250)); | ||
request.setVideoParameters(videoParameters); | ||
|
||
|
||
subject = new MultiformatAdUnitFacade(configId, request); | ||
AdUnitConfiguration configuration = subject.getConfiguration(); | ||
|
||
|
||
assertEquals(1, configuration.getAdFormats().size()); | ||
assertEquals(AdFormat.VAST, configuration.getAdFormats().toArray()[0]); | ||
assertEquals(videoParameters, configuration.getVideoParameters()); | ||
assertEquals(PlacementType.INTERSTITIAL.getValue(), configuration.getPlacementTypeValue()); | ||
assertEquals(AdPosition.FULLSCREEN.getValue(), configuration.getAdPositionValue()); | ||
|
||
HashSet<AdSize> configurationSizes = configuration.getSizes(); | ||
assertThat( | ||
new HashSet<>(Arrays.asList(new AdSize(300, 250))), | ||
Matchers.equalTo(configurationSizes) | ||
); | ||
} | ||
|
||
@Test | ||
public void configuration_rewardedVideoParameters() { | ||
PrebidRequest request = new PrebidRequest(); | ||
request.setRewarded(true); | ||
|
||
VideoParameters videoParameters = new VideoParameters(Lists.newArrayList("video/mp4")); | ||
videoParameters.setAdSize(new AdSize(300, 250)); | ||
request.setVideoParameters(videoParameters); | ||
|
||
|
||
subject = new MultiformatAdUnitFacade(configId, request); | ||
AdUnitConfiguration configuration = subject.getConfiguration(); | ||
|
||
|
||
assertEquals(1, configuration.getAdFormats().size()); | ||
assertEquals(AdFormat.VAST, configuration.getAdFormats().toArray()[0]); | ||
assertEquals(videoParameters, configuration.getVideoParameters()); | ||
assertEquals(PlacementType.INTERSTITIAL.getValue(), configuration.getPlacementTypeValue()); | ||
assertEquals(AdPosition.FULLSCREEN.getValue(), configuration.getAdPositionValue()); | ||
assertTrue(configuration.isRewarded()); | ||
|
||
HashSet<AdSize> configurationSizes = configuration.getSizes(); | ||
assertThat( | ||
new HashSet<>(Arrays.asList(new AdSize(300, 250))), | ||
Matchers.equalTo(configurationSizes) | ||
); | ||
} | ||
|
||
@Test | ||
public void configuration_nativeParameters() { | ||
PrebidRequest request = new PrebidRequest(); | ||
|
||
ArrayList<NativeAsset> assets = Lists.newArrayList(); | ||
assets.add(new NativeTitleAsset()); | ||
NativeParameters nativeParameters = new NativeParameters(assets); | ||
request.setNativeParameters(nativeParameters); | ||
|
||
|
||
subject = new MultiformatAdUnitFacade(configId, request); | ||
AdUnitConfiguration configuration = subject.getConfiguration(); | ||
|
||
|
||
assertEquals(1, configuration.getAdFormats().size()); | ||
assertEquals(AdFormat.NATIVE, configuration.getAdFormats().toArray()[0]); | ||
assertEquals(nativeParameters.getNativeConfiguration(), configuration.getNativeConfiguration()); | ||
} | ||
|
||
@Test | ||
public void configuration_allBannerParameters() { | ||
PrebidRequest request = new PrebidRequest(); | ||
|
||
BannerParameters bannerParameters = new BannerParameters(); | ||
HashSet<AdSize> adSizes = new HashSet<>(Arrays.asList(new AdSize(320, 50))); | ||
bannerParameters.setAdSizes(adSizes); | ||
request.setBannerParameters(bannerParameters); | ||
|
||
VideoParameters videoParameters = new VideoParameters(Lists.newArrayList("video/mp4")); | ||
videoParameters.setAdSize(new AdSize(320, 480)); | ||
request.setVideoParameters(videoParameters); | ||
|
||
ArrayList<NativeAsset> assets = Lists.newArrayList(); | ||
assets.add(new NativeTitleAsset()); | ||
NativeParameters nativeParameters = new NativeParameters(assets); | ||
request.setNativeParameters(nativeParameters); | ||
|
||
|
||
subject = new MultiformatAdUnitFacade(configId, request); | ||
AdUnitConfiguration configuration = subject.getConfiguration(); | ||
|
||
|
||
assertEquals(bannerParameters, configuration.getBannerParameters()); | ||
assertEquals(videoParameters, configuration.getVideoParameters()); | ||
assertEquals(nativeParameters.getNativeConfiguration(), configuration.getNativeConfiguration()); | ||
|
||
assertEquals(3, configuration.getAdFormats().size()); | ||
ArrayList<AdFormat> expectedAdFormats = Lists.newArrayList(AdFormat.BANNER, AdFormat.NATIVE, AdFormat.VAST); | ||
assertArrayEquals( | ||
expectedAdFormats.toArray(), | ||
configuration.getAdFormats().toArray() | ||
); | ||
|
||
HashSet<AdSize> configurationSizes = configuration.getSizes(); | ||
assertThat( | ||
new HashSet<>(Arrays.asList(new AdSize(320, 50), new AdSize(320, 480))), | ||
Matchers.equalTo(configurationSizes) | ||
); | ||
} | ||
|
||
@Test | ||
public void configuration_emptyParameters() { | ||
PrebidRequest request = new PrebidRequest(); | ||
|
||
subject = new MultiformatAdUnitFacade(configId, request); | ||
|
||
AdUnitConfiguration configuration = subject.getConfiguration(); | ||
EnumSet<AdFormat> adFormats = configuration.getAdFormats(); | ||
assertTrue(adFormats.isEmpty()); | ||
} | ||
|
||
@Test | ||
public void configuration_additionalParameters() { | ||
PrebidRequest request = new PrebidRequest(); | ||
|
||
ContentObject expectedAppContent = new ContentObject(); | ||
expectedAppContent.addCategory("Category"); | ||
request.setAppContent(expectedAppContent); | ||
|
||
ArrayList<DataObject> expectedUserData = Lists.newArrayList(new DataObject()); | ||
request.setUserData(expectedUserData); | ||
|
||
HashMap<String, Set<String>> expectedExtData = new HashMap<>(); | ||
HashSet<String> data = new HashSet<>(); | ||
data.add("Data 1"); | ||
data.add("Data 2"); | ||
expectedExtData.put("Key", data); | ||
request.setExtData(expectedExtData); | ||
|
||
HashSet<String> expectedExtKeywords = new HashSet<>(); | ||
expectedExtKeywords.add("Keyword 1"); | ||
expectedExtKeywords.add("Keyword 2"); | ||
request.setExtKeywords(expectedExtKeywords); | ||
|
||
subject = new MultiformatAdUnitFacade(configId, request); | ||
|
||
AdUnitConfiguration configuration = subject.getConfiguration(); | ||
|
||
assertEquals( | ||
expectedAppContent, | ||
configuration.getAppContent() | ||
); | ||
assertEquals( | ||
expectedUserData, | ||
configuration.getUserData() | ||
); | ||
assertEquals( | ||
expectedExtData, | ||
configuration.getExtDataDictionary() | ||
); | ||
assertEquals( | ||
expectedExtKeywords, | ||
configuration.getExtKeywordsSet() | ||
); | ||
} | ||
|
||
|
||
} |
Oops, something went wrong.