Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 13 additions & 2 deletions src/org/labkey/test/LabKeySiteWrapper.java
Original file line number Diff line number Diff line change
Expand Up @@ -1300,10 +1300,21 @@ public void setMiniProfilerEnabled(boolean enabled)

@LogMethod(quiet = true)
public void enableEmailRecorder()
{
setEmailRecord(true);
}

@LogMethod(quiet = true)
public void disableEmailRecorder()
{
setEmailRecord(false);
}

private void setEmailRecord(boolean record)
{
assumeTestModules();
int responseCode = getHttpResponse(buildURL("dumbster", "setRecordEmail", Maps.of("record", "true")), "POST").getResponseCode();
assertEquals("Failed to enable email recording", HttpStatus.SC_OK, responseCode);
int responseCode = getHttpResponse(buildURL("dumbster", "setRecordEmail", Maps.of("record", String.valueOf(record))), "POST").getResponseCode();
assertEquals("Failed to " + (record ? "enable" : "disable") + " email recording", HttpStatus.SC_OK, responseCode);
}

public EmailRecordTable goToEmailRecord()
Expand Down
4 changes: 3 additions & 1 deletion src/org/labkey/test/WebTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@

package org.labkey.test;

import org.jetbrains.annotations.Nullable;

import java.net.MalformedURLException;
import java.net.URL;
import java.util.List;
Expand All @@ -32,5 +34,5 @@ public interface WebTest
*/
long beginAt(String url);
URL getURL() throws MalformedURLException;
List<String> getAssociatedModules();
@Nullable List<String> getAssociatedModules();
}
3 changes: 1 addition & 2 deletions src/org/labkey/test/tests/AbstractAdminConsoleTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@
import org.labkey.test.util.ApiPermissionsHelper;
import org.labkey.test.util.PermissionsHelper;

import java.util.Arrays;
import java.util.List;

import static org.labkey.test.util.PermissionsHelper.APP_ADMIN_ROLE;
Expand All @@ -41,7 +40,7 @@ public String getProjectName()
@Override
public List<String> getAssociatedModules()
{
return Arrays.asList("admin");
return null;
}

@Override
Expand Down
27 changes: 24 additions & 3 deletions src/org/labkey/test/tests/AdminConsoleTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
import org.labkey.remoteapi.SimplePostCommand;
import org.labkey.test.BaseWebDriverTest;
import org.labkey.test.Locator;
import org.labkey.test.TestProperties;
import org.labkey.test.WebDriverWrapper;
import org.labkey.test.WebTestHelper;
import org.labkey.test.util.OptionalFeatureHelper;
Expand All @@ -46,6 +47,7 @@
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
import static org.labkey.test.WebTestHelper.buildURL;
import static org.labkey.test.util.PermissionsHelper.APP_ADMIN_ROLE;
import static org.labkey.test.util.PermissionsHelper.READER_ROLE;

Expand Down Expand Up @@ -451,8 +453,27 @@ private void verifyOptionalFeatures(String linkText, List<String> featureIds, Op
@Test
public void testEmailTimeoutSettings()
{
log("Verifying that default email timeout properties are set");
goToAdminConsole().clickTestEmailConfiguration();
assertTextPresent("mail.smtp.writetimeout", "mail.smtp.timeout", "mail.smtp.connectiontimeout");
// Disable email recording if it's on, otherwise we won't see timeouts
boolean emailRecordEnabled = false;
if (!TestProperties.isWithoutTestModules())
{
beginAt(buildURL("dumbster", "begin"));
emailRecordEnabled = isChecked(Locator.checkboxById("emailRecordOn"));
if (emailRecordEnabled)
disableEmailRecorder();
}

try
{
log("Verifying that default email timeout properties are set");
goToAdminConsole().clickTestEmailConfiguration();
assertTextPresent("mail.smtp.writetimeout", "mail.smtp.timeout", "mail.smtp.connectiontimeout");
}
finally
{
// Restore email recorder if it was on
if (emailRecordEnabled)
enableEmailRecorder();
}
}
}