mirror of
https://github.com/google/nomulus.git
synced 2025-08-03 00:12:11 +02:00
Read from bloom filter for premium pricing checks
This also cleans up the PremiumList API so that it only has one method for checking premium prices, which is by TLD, rather than two. I will be refactoring a lot of the static methods currently residing in the PremiumList class into a separate utils class, but I don't want to include too many changes in this one CL. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=148475345
This commit is contained in:
parent
3ac74fa449
commit
3ca9bb6aeb
18 changed files with 328 additions and 282 deletions
|
@ -15,9 +15,11 @@
|
|||
package google.registry.tools.server;
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
import static google.registry.model.registry.label.PremiumList.getPremiumPrice;
|
||||
import static google.registry.testing.DatastoreHelper.createTlds;
|
||||
import static javax.servlet.http.HttpServletResponse.SC_OK;
|
||||
|
||||
import google.registry.model.registry.Registry;
|
||||
import google.registry.model.registry.label.PremiumList;
|
||||
import google.registry.testing.AppEngineRule;
|
||||
import google.registry.testing.ExceptionRule;
|
||||
|
@ -81,10 +83,7 @@ public class CreatePremiumListActionTest {
|
|||
action.override = true;
|
||||
action.run();
|
||||
assertThat(response.getStatus()).isEqualTo(SC_OK);
|
||||
PremiumList premiumList = PremiumList.get("zanzibar").get();
|
||||
assertThat(premiumList.getPremiumListEntries()).hasSize(1);
|
||||
assertThat(premiumList.getPremiumPrice("zanzibar")).hasValue(Money.parse("USD 100"));
|
||||
assertThat(premiumList.getPremiumPrice("diamond")).isAbsent();
|
||||
assertThat(PremiumList.get("zanzibar").get().loadPremiumListEntries()).hasSize(1);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -93,9 +92,8 @@ public class CreatePremiumListActionTest {
|
|||
action.inputData = "rich,USD 25\nricher,USD 1000\n";
|
||||
action.run();
|
||||
assertThat(response.getStatus()).isEqualTo(SC_OK);
|
||||
PremiumList premiumList = PremiumList.get("foo").get();
|
||||
assertThat(premiumList.getPremiumListEntries()).hasSize(2);
|
||||
assertThat(premiumList.getPremiumPrice("rich")).hasValue(Money.parse("USD 25"));
|
||||
assertThat(premiumList.getPremiumPrice("diamond")).isAbsent();
|
||||
assertThat(PremiumList.get("foo").get().loadPremiumListEntries()).hasSize(2);
|
||||
assertThat(getPremiumPrice("rich", Registry.get("foo"))).hasValue(Money.parse("USD 25"));
|
||||
assertThat(getPremiumPrice("diamond", Registry.get("foo"))).isAbsent();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -17,7 +17,6 @@ package google.registry.tools.server;
|
|||
import static google.registry.testing.DatastoreHelper.persistPremiumList;
|
||||
|
||||
import com.google.common.base.Optional;
|
||||
import google.registry.model.registry.label.PremiumList;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
|
@ -35,10 +34,6 @@ public class ListPremiumListsActionTest extends ListActionTestCase {
|
|||
public void init() throws Exception {
|
||||
persistPremiumList("xn--q9jyb4c", "rich,USD 100");
|
||||
persistPremiumList("how", "richer,JPY 5000");
|
||||
PremiumList.get("how").get().asBuilder()
|
||||
.setDescription("foobar")
|
||||
.build()
|
||||
.saveAndUpdateEntries();
|
||||
action = new ListPremiumListsAction();
|
||||
}
|
||||
|
||||
|
|
|
@ -15,9 +15,11 @@
|
|||
package google.registry.tools.server;
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
import static google.registry.model.registry.label.PremiumList.getPremiumPrice;
|
||||
import static google.registry.testing.DatastoreHelper.createTlds;
|
||||
import static javax.servlet.http.HttpServletResponse.SC_OK;
|
||||
|
||||
import google.registry.model.registry.Registry;
|
||||
import google.registry.model.registry.label.PremiumList;
|
||||
import google.registry.testing.AppEngineRule;
|
||||
import google.registry.testing.ExceptionRule;
|
||||
|
@ -79,11 +81,11 @@ public class UpdatePremiumListActionTest {
|
|||
action.inputData = "rich,USD 75\nricher,USD 5000\npoor, USD 0.99";
|
||||
action.run();
|
||||
assertThat(response.getStatus()).isEqualTo(SC_OK);
|
||||
PremiumList premiumList = PremiumList.get("foo").get();
|
||||
assertThat(premiumList.getPremiumListEntries()).hasSize(3);
|
||||
assertThat(premiumList.getPremiumPrice("rich")).hasValue(Money.parse("USD 75"));
|
||||
assertThat(premiumList.getPremiumPrice("richer")).hasValue(Money.parse("USD 5000"));
|
||||
assertThat(premiumList.getPremiumPrice("poor")).hasValue(Money.parse("USD 0.99"));
|
||||
assertThat(premiumList.getPremiumPrice("diamond")).isAbsent();
|
||||
Registry registry = Registry.get("foo");
|
||||
assertThat(PremiumList.get("foo").get().loadPremiumListEntries()).hasSize(3);
|
||||
assertThat(getPremiumPrice("rich", registry)).hasValue(Money.parse("USD 75"));
|
||||
assertThat(getPremiumPrice("richer", registry)).hasValue(Money.parse("USD 5000"));
|
||||
assertThat(getPremiumPrice("poor", registry)).hasValue(Money.parse("USD 0.99"));
|
||||
assertThat(getPremiumPrice("diamond", registry)).isAbsent();
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue