-
-
Notifications
You must be signed in to change notification settings - Fork 182
/
Copy pathLoggerEngineDataSelector_Tests_Network.cls
71 lines (57 loc) · 3.4 KB
/
LoggerEngineDataSelector_Tests_Network.cls
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
//------------------------------------------------------------------------------------------------//
// This file is part of the Nebula Logger project, released under the MIT License. //
// See LICENSE file or go to https://github.com/jongpie/NebulaLogger for full license details. //
//------------------------------------------------------------------------------------------------//
@SuppressWarnings('PMD.ApexDoc, PMD.CyclomaticComplexity, PMD.ExcessiveParameterList, PMD.MethodNamingConventions')
@IsTest(IsParallel=true)
private class LoggerEngineDataSelector_Tests_Network {
private static final String EXPERIENCE_CLOUD_GUEST_PROFILE_NAME = 'Logger Test LWR Site Guest Profile';
private static final String EXPERIENCE_CLOUD_NETWORK_NAME = 'Logger Test LWR Site';
private static final String GUEST_USER_TYPE = 'Guest';
private static final String LOG_CREATOR_PERMISSION_SET_NAME = 'LoggerLogCreator';
@IsTest
static void it_returns_cached_network() {
if (LoggerEngineDataSelector.IS_EXPERIENCE_CLOUD_ENABLED == false) {
return;
}
Id expectedNetworkId = (Id) getExperienceCloudNetwork().get('Id');
System.Assert.isNotNull(expectedNetworkId);
System.Assert.areEqual(1, System.Limits.getQueries());
Integer expectedQueryCount = System.Limits.getQueries() + 1;
LoggerSObjectProxy.Network returnedNetworkProxy = LoggerEngineDataSelector.getInstance().getCachedNetworkProxy(expectedNetworkId);
System.Assert.isNotNull(returnedNetworkProxy);
System.Assert.areEqual(expectedQueryCount, System.Limits.getQueries());
LoggerEngineDataSelector.getInstance().getCachedNetworkProxy(expectedNetworkId);
System.Assert.areEqual(expectedQueryCount, System.Limits.getQueries(), 'Query results should have been cached');
System.Assert.areEqual(expectedNetworkId, returnedNetworkProxy?.Id);
}
@IsTest
static void it_returns_null_when_network_id_is_null() {
if (LoggerEngineDataSelector.IS_EXPERIENCE_CLOUD_ENABLED == false) {
return;
}
LoggerParameter.setMock(new LoggerParameter__mdt(DeveloperName = 'QueryNetworkData', Value__c = String.valueOf(false)));
System.Assert.isFalse(LoggerParameter.QUERY_NETWORK_DATA);
Id expectedNetworkId = null;
System.Assert.areEqual(0, System.Limits.getQueries());
LoggerSObjectProxy.Network returnedNetworkProxy = LoggerEngineDataSelector.getInstance().getCachedNetworkProxy(expectedNetworkId);
System.Assert.areEqual(0, System.Limits.getQueries());
System.Assert.isNull(returnedNetworkProxy);
}
@IsTest
static void it_returns_null_when_querying_network_is_disabled() {
if (LoggerEngineDataSelector.IS_EXPERIENCE_CLOUD_ENABLED == false) {
return;
}
LoggerParameter.setMock(new LoggerParameter__mdt(DeveloperName = 'QueryNetworkData', Value__c = String.valueOf(false)));
System.Assert.isFalse(LoggerParameter.QUERY_NETWORK_DATA);
Id expectedNetworkId = (Id) getExperienceCloudNetwork().get('Id');
System.Assert.areEqual(1, System.Limits.getQueries());
LoggerSObjectProxy.Network returnedNetworkProxy = LoggerEngineDataSelector.getInstance().getCachedNetworkProxy(expectedNetworkId);
System.Assert.areEqual(1, System.Limits.getQueries());
System.Assert.isNull(returnedNetworkProxy);
}
static SObject getExperienceCloudNetwork() {
return System.Database.query('SELECT Id, Name, UrlPathPrefix FROM Network WHERE Name = :EXPERIENCE_CLOUD_NETWORK_NAME');
}
}