Where or how can I find what interfaces an out of the box Apex class implements?Test Queueable Apex: Methods defined as TestMethod do not support Web service callouts, test skippedHitting system limits with my testClassThe Apex class 'ParkLocator' does not appear to be calling the SOAP endpointREST integration and testTest class is creating ApexAsyncJob recordsattempt to de-reference null object in test classTesting future callout methodHow to deserialize into interface type when concrete type is unknownUsing ApexMocks for a class that implements Queueable InterfaceHow to test Database.Error piece code in the Scheduled job (Apex class implements Schedulable)
Why does the autopilot disengage even when it does not receive pilot input?
Do native speakers use ZVE or CPU?
What's a moment that's more impactful on a reread called?
Is Arc Length always irrational between two rational points?
During copyediting, journal disagrees about spelling of paper's main topic
What is temperature on a quantum level
The monorail explodes before I can get on it
Correct use of ergeben?
Keep milk (or milk alternative) for a day without a fridge
Why are Hobbits so fond of mushrooms?
Would letting a multiclass character rebuild their character to be single-classed be game-breaking?
Why do players in the past play much longer tournaments than today's top players?
Credit union holding car note, refuses to provide details of how payments have been applied
Dropping outliers based on "2.5 times the RMSE"
Repeating redundant information after dialogues, to avoid or not?
If a specific mass of air is polluted, will the pollution stick with it?
<schwitz>, <zwinker> etc. Does German always use 2nd Person Singular Imperative verbs for emoticons? If so, why?
How the name "craqueuhhe" is read
Is `curl something | sudo bash -` a reasonably safe installation method?
diff shows a file that does not exist
Optimising Table wrapping over a Select
Does Google Maps take into account hills/inclines for route times?
As the Dungeon Master, how do I handle a player that insists on a specific class when I already know that choice will cause issues?
I have a ruthless DM and I'm considering leaving the party. What are my options to minimize the negative impact to the rest of the group?
Where or how can I find what interfaces an out of the box Apex class implements?
Test Queueable Apex: Methods defined as TestMethod do not support Web service callouts, test skippedHitting system limits with my testClassThe Apex class 'ParkLocator' does not appear to be calling the SOAP endpointREST integration and testTest class is creating ApexAsyncJob recordsattempt to de-reference null object in test classTesting future callout methodHow to deserialize into interface type when concrete type is unknownUsing ApexMocks for a class that implements Queueable InterfaceHow to test Database.Error piece code in the Scheduled job (Apex class implements Schedulable)
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;
Is there a method of discovering (or a place to look up) all of the interfaces that an out of the box Salesforce class (Like LoginHistory) implements?
The reason I ask:
I'm attempting to test a method which interacts with a LoginHistory object that's passed in as a parameter. The method accesses the UserId and LoginTime fields on the object. Salesforce won't allow me to new up this object and assign values to these properties for my test. If the object's class implements an interface, I think I could create a mock object from it use it instead for this testing.
Is there a better solution to my problem?
apex unit-test class interface apexmock
add a comment |
Is there a method of discovering (or a place to look up) all of the interfaces that an out of the box Salesforce class (Like LoginHistory) implements?
The reason I ask:
I'm attempting to test a method which interacts with a LoginHistory object that's passed in as a parameter. The method accesses the UserId and LoginTime fields on the object. Salesforce won't allow me to new up this object and assign values to these properties for my test. If the object's class implements an interface, I think I could create a mock object from it use it instead for this testing.
Is there a better solution to my problem?
apex unit-test class interface apexmock
add a comment |
Is there a method of discovering (or a place to look up) all of the interfaces that an out of the box Salesforce class (Like LoginHistory) implements?
The reason I ask:
I'm attempting to test a method which interacts with a LoginHistory object that's passed in as a parameter. The method accesses the UserId and LoginTime fields on the object. Salesforce won't allow me to new up this object and assign values to these properties for my test. If the object's class implements an interface, I think I could create a mock object from it use it instead for this testing.
Is there a better solution to my problem?
apex unit-test class interface apexmock
Is there a method of discovering (or a place to look up) all of the interfaces that an out of the box Salesforce class (Like LoginHistory) implements?
The reason I ask:
I'm attempting to test a method which interacts with a LoginHistory object that's passed in as a parameter. The method accesses the UserId and LoginTime fields on the object. Salesforce won't allow me to new up this object and assign values to these properties for my test. If the object's class implements an interface, I think I could create a mock object from it use it instead for this testing.
Is there a better solution to my problem?
apex unit-test class interface apexmock
apex unit-test class interface apexmock
asked 10 hours ago
SF1DevSF1Dev
4535 silver badges19 bronze badges
4535 silver badges19 bronze badges
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
sObject classes don't implement interfaces at all. Unfortunately, that won't be a viable solution here.
One very common solution to this issue (needing to create an object and populate non-writeable fields) is JSON deserialization. It's viable here; an example:
LoginHistory l;
l = (LoginHistory)JSON.deserialize(
'"UserId": "'+UserInfo.getUserId()+'", "LoginTime": ' + JSON.serialize(DateTime.now()) + '',
LoginHistory.class
);
System.debug(l);
This works for a wide variety of objects you cannot otherwise construct or populate, although it might require some experimentation to get it just right. The pattern is the same: you construct some JSON string representing the object's properties and deserialize it, giving the class of the desired object.
add a comment |
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "459"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsalesforce.stackexchange.com%2fquestions%2f269293%2fwhere-or-how-can-i-find-what-interfaces-an-out-of-the-box-apex-class-implements%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
sObject classes don't implement interfaces at all. Unfortunately, that won't be a viable solution here.
One very common solution to this issue (needing to create an object and populate non-writeable fields) is JSON deserialization. It's viable here; an example:
LoginHistory l;
l = (LoginHistory)JSON.deserialize(
'"UserId": "'+UserInfo.getUserId()+'", "LoginTime": ' + JSON.serialize(DateTime.now()) + '',
LoginHistory.class
);
System.debug(l);
This works for a wide variety of objects you cannot otherwise construct or populate, although it might require some experimentation to get it just right. The pattern is the same: you construct some JSON string representing the object's properties and deserialize it, giving the class of the desired object.
add a comment |
sObject classes don't implement interfaces at all. Unfortunately, that won't be a viable solution here.
One very common solution to this issue (needing to create an object and populate non-writeable fields) is JSON deserialization. It's viable here; an example:
LoginHistory l;
l = (LoginHistory)JSON.deserialize(
'"UserId": "'+UserInfo.getUserId()+'", "LoginTime": ' + JSON.serialize(DateTime.now()) + '',
LoginHistory.class
);
System.debug(l);
This works for a wide variety of objects you cannot otherwise construct or populate, although it might require some experimentation to get it just right. The pattern is the same: you construct some JSON string representing the object's properties and deserialize it, giving the class of the desired object.
add a comment |
sObject classes don't implement interfaces at all. Unfortunately, that won't be a viable solution here.
One very common solution to this issue (needing to create an object and populate non-writeable fields) is JSON deserialization. It's viable here; an example:
LoginHistory l;
l = (LoginHistory)JSON.deserialize(
'"UserId": "'+UserInfo.getUserId()+'", "LoginTime": ' + JSON.serialize(DateTime.now()) + '',
LoginHistory.class
);
System.debug(l);
This works for a wide variety of objects you cannot otherwise construct or populate, although it might require some experimentation to get it just right. The pattern is the same: you construct some JSON string representing the object's properties and deserialize it, giving the class of the desired object.
sObject classes don't implement interfaces at all. Unfortunately, that won't be a viable solution here.
One very common solution to this issue (needing to create an object and populate non-writeable fields) is JSON deserialization. It's viable here; an example:
LoginHistory l;
l = (LoginHistory)JSON.deserialize(
'"UserId": "'+UserInfo.getUserId()+'", "LoginTime": ' + JSON.serialize(DateTime.now()) + '',
LoginHistory.class
);
System.debug(l);
This works for a wide variety of objects you cannot otherwise construct or populate, although it might require some experimentation to get it just right. The pattern is the same: you construct some JSON string representing the object's properties and deserialize it, giving the class of the desired object.
answered 9 hours ago
David Reed♦David Reed
47.2k8 gold badges27 silver badges65 bronze badges
47.2k8 gold badges27 silver badges65 bronze badges
add a comment |
add a comment |
Thanks for contributing an answer to Salesforce Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsalesforce.stackexchange.com%2fquestions%2f269293%2fwhere-or-how-can-i-find-what-interfaces-an-out-of-the-box-apex-class-implements%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown