How to run JustMock elevated features as part of a TeamCity build? I need to enable profiler

23 posts, 0 answers
  1. Chris
    Chris avatar
    9 posts
    Member since:
    Jul 2010

    Posted 30 Aug 2011 Link to this post

    Hi

    I've just got up and running with JustMock to perform tests that need to isolate Microsoft's Exchange Services API, which contains many sealed and internal classes, and so requires the elevated mode in Visual Studio to enable the profiler.  

    Right now these tests are failing my Continuous Integration build on TeamCity because I need to enable the profiler.

    Please can you advise on how to get this up and running.

    Stack trace is as follows:

    Test(s) failed. Telerik.JustMock.MockException : Could not create mock from sealed class when profiler is not enabled.

       at Telerik.JustMock.MockManager.CreateInstance(Container container)

       at Telerik.JustMock.MockManager.SetupMock(Behavior behavior, Boolean static)

       at Telerik.JustMock.MockManager.CreateInstance()

       at Telerik.JustMock.Mock.Create(Type target, Behavior behavior, Object[] args)

       at Telerik.JustMock.Mock.Create(Type target, Object[] args)

       at Telerik.JustMock.Mock.Create[T]()


    Thanks,

    Chris

    FWIW: I'm currently running a private build of JustMock from last week that fixes an issue with covariance and contravariance (see http://www.telerik.com/account/support-tickets/view-ticket.aspx?threadid=457316)
  2. Mihail
    Admin
    Mihail avatar
    75 posts

    Posted 30 Aug 2011 Link to this post

    Hello Chris,

    Thank you for your question. In case you use TeamCity with MSBuild you can use MSBuild tasks. JustMock comes with Telerik.JustMock.MSBuild assembly that contains two MSBuild tasks: JustMockStart and JustMockStop. These tasks are really simple - all they do is to set/clear two environment variables. I am not familiar with TeamCity product but after a quick check in its documentation I found this page http://confluence.jetbrains.net/display/TCD65/Configuring+Build+Parameters that gives me a clue how to configure TeamCity build with predefined environment variables. All you have to do is to set the following environment variables:

    COR_ENABLE_PROFILING=0x1
    COR_PROFILER={D1087F67-BEE8-4f53-B27A-4E01F64F3DA8}

    Please let us know if this helps.


    Regards,
    Mike
    the Telerik team

    Thank you for being the most amazing .NET community! Your unfailing support is what helps us charge forward! We'd appreciate your vote for Telerik in this year's DevProConnections Awards. We are competing in mind-blowing 20 categories and every vote counts! VOTE for Telerik NOW >>

  3. DevCraft R3 2016 release webinar banner
  4. Chris
    Chris avatar
    9 posts
    Member since:
    Jul 2010

    Posted 30 Aug 2011 Link to this post

    Hi

    Unfortunately I'm seeing the same errors as before despite having changed these in TeamCity's build configuration.

    Is there anything special about the installer for JustMock? When running on the build server I only have the DLLs copied over.

    Thanks

    Chris
  5. Mihail
    Admin
    Mihail avatar
    75 posts

    Posted 30 Aug 2011 Link to this post

    Hello Chris,

    When JustTrace works in elevated mode it actually works as .NET profiler so it can overwrite IL code at runtime. To configure a .NET profiler for .NET Framework v2.0/v3.0/v3.5 Microsoft requires to register the profiler as a COM component. The COR_PROFILER environment variable is the GUID for the JustMock COM component. You can find more information on this page http://msdn.microsoft.com/en-us/library/bb384689%28v=VS.90%29.aspx. For .NET Framework v4.0 you can take advantage of COR_PROFILER_PATH environment variable. You can find more information on this page http://msdn.microsoft.com/en-us/library/ee471451.aspx

    I would strongly recommend to install JustMock on the build server because JustMock installation takes care for COM registration. Another option is to register Telerik.CodeWeaver.dll manually for both 32 and 64bits modes. You can use regsvr32.exe tool to accomplish manual registration.

    Kind regards,
    Mike
    the Telerik team

    Thank you for being the most amazing .NET community! Your unfailing support is what helps us charge forward! We'd appreciate your vote for Telerik in this year's DevProConnections Awards. We are competing in mind-blowing 20 categories and every vote counts! VOTE for Telerik NOW >>

  6. Chris
    Chris avatar
    9 posts
    Member since:
    Jul 2010

    Posted 31 Aug 2011 Link to this post

    One of our build administrators has been investigating this, and we're still not able to get it up and running on TeamCity.

    His notes are below and your help would be appreciated!

    --> notes <--

    Running the build failed with “
    Can't load referenced assembly Telerik.CodeWeaver.Hook, Version=1.0.0.0, Culture=neutral, PublicKeyToken=87210992829a189d”

     

    Thinking it had failed to install to the GAC, I uninstalled & re-installed (this time completely successfully), but it still failed with the same error message.

     

    Then I added it to the GAC by hand and it failed with:

     

    [11:10:07]: Step 2/2 (53s)

    [11:10:07]: [Step 2/2] Using runner: NUnit

    [11:10:14]: [Step 2/2] Starting: E:\TeamCityAgents\H\plugins\dotnetPlugin\bin\JetBrains.BuildServer.NUnitLauncher.exe #TeamCityImplicit

    [11:10:14]: [Step 2/2] in directory: D:\TeamCityAgents\H\work\ea4d137355763e53

    [11:10:31]: [Step 2/2] JetBrains dotCover Console Runner v1.0.123.34. Copyright (c) 2009-2011 JetBrains s.r.o. All rights reserved.

    [11:10:58]: [Step 2/2] Coverage session started [8/31/2011 11:10:58 AM]

    [11:10:59]: [Step 2/2] Coverage session failed [8/31/2011 11:10:59 AM]. Can't start application.

    [11:10:59]: [Step 2/2] Bad class token..

    [11:11:01]: [Step 2/2] Process exited with code -30

    [11:11:01]: [Step 2/2] Step failed

     

    Thinking its CLR profiler was clashing with dotCover, I disabled dotCover in the build configuration, and then it started failing with a message indicative of it not loading the profiler even though the environment variables were set correctly and the windows event viewer shows that the profiler was definitely loaded:

     

    [11:38:40]: Step 2/2 (18s)

    [11:38:40]: [Step 2/2] Using runner: NUnit

    [11:38:40]: [Step 2/2] Starting: E:\TeamCityAgents\K\plugins\dotnetPlugin\bin\JetBrains.BuildServer.NUnitLauncher.exe #TeamCityImplicit

    [11:38:40]: [Step 2/2] in directory: D:\TeamCityAgents\K\work\ea4d137355763e53

    [11:38:51]: [Step 2/2] Start TeamCity NUnit Test Runner

    [11:38:51]: [Step 2/2] Running NUnit-2.5.9 tests under .NET Framework v4.0 x86

    [11:38:52]: [Step 2/2] CRM.Tests.Unit.dll (5s)

    [11:38:52]: [CRM.Tests.Unit.dll] CRM.Tests.Unit.ExchangeServices.CreateEmailEntityFromEmailMessageFixture.Should_Create_When_Exchange_Email_Message_Fully_Populated (5s)

    [11:38:57]: [CRM.Tests.Unit.ExchangeServices.CreateEmailEntityFromEmailMessageFixture.Should_Create_When_Exchange_Email_Message_Fully_Populated] Test(s) failed. Telerik.JustMock.MockException : Could not create mock from sealed class when profiler is not enabled.

    [11:38:57]: [CRM.Tests.Unit.ExchangeServices.CreateEmailEntityFromEmailMessageFixture.Should_Create_When_Exchange_Email_Message_Fully_Populated] Test(s) failed. Telerik.JustMock.MockException : Could not create mock from sealed class when profiler is not enabled.

     

    11:38:45 AM: .NET Runtime version 4.0.30319.235 - The profiler was loaded successfully.  Profiler CLSID: '{D1087F67-BEE8-4f53-B27A-4E01F64F3DA8}'.  Process ID (decimal): 11864.  Message ID: [0x2507]. For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

    At this point I’m stuck.  Given that you’ve already got a discussion going with Telerik support, can you please pass the above on, and ask what we should do next.

  7. Mihail
    Admin
    Mihail avatar
    75 posts

    Posted 31 Aug 2011 Link to this post

    Hi Chris,

    Thank you for the detailed log. The log entry from 11:38:45 AM shows that JustMock profiler was loaded successfully into a process with ID = 11864. Still JustMock fails when it is used in your tests. I suppose that the process with ID = 11864 is not the process of the NUnit test runner. To confirm this is would suggest to modify your test (Should_Create_When_Exchange_Email_Message_Fully_Populated) so that the very first line is

    System.Threading.Thread.Sleep(20 * 1000);

    This will give you 20 seconds time to check whether the NUnit test runner process is actually started with COR_* environment variables are set. To see the environment variables for a process you can use Process Explorer tool from www.sysinternals.com (this tool does not require installation and it is designed to be used on build/production servers)

    Another option could be using some NUnit logging feature (I am not sure if there is any). My wild guess is using

    System.Console.Error.WriteLine(Environment.GetEnvironmentVariable("COR_PROFILER"));

    or

    System.Console.WriteLine(Environment.GetEnvironmentVariable("COR_PROFILER"));

    I hope this will print the value of COR_PROFILER variable in your nunit log file. My main goal is to confirm that COR_* variables are set on the process that executes your tests.

    Please let us what you findings are.

    All the best,
    Mike
    the Telerik team

    Thank you for being the most amazing .NET community! Your unfailing support is what helps us charge forward! We'd appreciate your vote for Telerik in this year's DevProConnections Awards. We are competing in mind-blowing 20 categories and every vote counts! VOTE for Telerik NOW >>

  8. Chris
    Chris avatar
    9 posts
    Member since:
    Jul 2010

    Posted 31 Aug 2011 Link to this post

    Okay, so having added code to report the variables we now see the following problem, thus something is still not right:

    Awesome!  I’ve disabled dotCover again and it’s now printing the environment variable.  Can you please send it off to their support team.

     

    [16:05:34]: Step 2/2 (15s)

    [16:05:34]: [Step 2/2] Using runner: NUnit

    [16:05:34]: [Step 2/2] Starting: E:\TeamCityAgents\I\plugins\dotnetPlugin\bin\JetBrains.BuildServer.NUnitLauncher.exe #TeamCityImplicit

    [16:05:34]: [Step 2/2] in directory: D:\TeamCityAgents\I\work\ea4d137355763e53

    [16:05:45]: [Step 2/2] Start TeamCity NUnit Test Runner

    [16:05:45]: [Step 2/2] Running NUnit-2.5.9 tests under .NET Framework v4.0 x86

    [16:05:47]: [Step 2/2] CRM.Tests.Unit.dll (1s)

    [16:05:47]: [CRM.Tests.Unit.dll] CRM.Tests.Unit.ExchangeServices.CreateEmailEntityFromEmailMessageFixture.Should_Create_When_Exchange_Email_Message_Fully_Populated (1s)

    [16:05:48]: [CRM.Tests.Unit.ExchangeServices.CreateEmailEntityFromEmailMessageFixture.Should_Create_When_Exchange_Email_Message_Fully_Populated] [Test Error Output] COR_PROFILER {D1087F67-BEE8-4f53-B27A-4E01F64F3DA8}

    [16:05:49]: [CRM.Tests.Unit.ExchangeServices.CreateEmailEntityFromEmailMessageFixture.Should_Create_When_Exchange_Email_Message_Fully_Populated] Test(s) failed. Telerik.JustMock.MockException : Could not create mock from sealed class when profiler is not enabled.

    [16:05:49]: [CRM.Tests.Unit.ExchangeServices.CreateEmailEntityFromEmailMessageFixture.Should_Create_When_Exchange_Email_Message_Fully_Populated] Test(s) failed. Telerik.JustMock.MockException : Could not create mock from sealed class when profiler is not enabled.

  9. Mihail
    Admin
    Mihail avatar
    75 posts

    Posted 01 Sep 2011 Link to this post

    Hello Chris,

    Once you have confirmed that both COR_PROFILER and COR_ENABLE_PROFILING variables are properly set I would suggest to inspect the JustMock profiler COM registration. From the following log entry

    [16:05:45]: [Step 2/2] Running NUnit-2.5.9 tests under .NET Framework v4.0 x86

    I assume that your NUnit test runner is 32bit process. This means that you have to check the registration of 32bit JustMock profiler. You can do that with regedit.exe tool. If your build server is running on 64bit machine you have to check the following registry key:

    HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{D1087F67-BEE8-4f53-B27A-4E01F64F3DA8}\InprocServer32

    The default value on my machine is  "C:\Program Files (x86)\Telerik\JustMock\Libraries\CodeWeaver\x86\Telerik.CodeWeaver.dll". Please make sure that such file actually exists for your value.

    In case your build server is running on 32bit machine you have to inspect the following registry key:

    HKEY_CLASSES_ROOT\CLSID\{D1087F67-BEE8-4f53-B27A-4E01F64F3DA8}\InprocServer32

    Again the default value should point to a valid file location. In case COM registration is correct I would suggest an extra check. Please modify your test (Should_Create_When_Exchange_Email_Message_Fully_Populated) so it prints the current process ID. As you indicated before this can accomplishied with one of the following statements:

    System.Console.Error.WriteLine(System.Diagnostics.Process.GetCurrentProcess().Id);
    or
    System.Console.WriteLine(System.Diagnostics.Process.GetCurrentProcess().Id);

    My goal is to confirm that the printed process ID would be the same as the value that will be reported in your Application event log (you can filter by Event ID = 1022).

    Please let us what you findings are.

    All the best,
    Mike
    the Telerik team

    Thank you for being the most amazing .NET community! Your unfailing support is what helps us charge forward! We'd appreciate your vote for Telerik in this year's DevProConnections Awards. We are competing in mind-blowing 20 categories and every vote counts! VOTE for Telerik NOW >>

  10. Chris
    Chris avatar
    9 posts
    Member since:
    Jul 2010

    Posted 05 Sep 2011 Link to this post

    A new update from our build master after tweaking the code to add extra logging information and a thread sleep to enable debugging:

    == copied below ==

    [11:12:29]: Step 2/2

    [11:12:29]: [Step 2/2] Using runner: NUnit

    [11:12:29]: [Step 2/2] Starting: E:\TeamCityAgents\I\plugins\dotnetPlugin\bin\JetBrains.BuildServer.NUnitLauncher.exe #TeamCityImplicit

    [11:12:29]: [Step 2/2] in directory: D:\TeamCityAgents\I\work\ea4d137355763e53

    [11:12:40]: [Step 2/2] Start TeamCity NUnit Test Runner

    [11:12:40]: [Step 2/2] Running NUnit-2.5.9 tests under .NET Framework v4.0 x86

    [11:12:42]: [Step 2/2] CRM.Tests.Unit.dll

    [11:12:42]: [CRM.Tests.Unit.dll] CRM.Tests.Unit.ExchangeServices.CreateEmailEntityFromEmailMessageFixture.Should_Create_When_Exchange_Email_Message_Fully_Populated

    [11:12:42]: [CRM.Tests.Unit.ExchangeServices.CreateEmailEntityFromEmailMessageFixture.Should_Create_When_Exchange_Email_Message_Fully_Populated]

     

    [Test Error Output]

     

    COR_ENABLE_PROFILING: 0x1

     

    COR_PROFILER: {D1087F67-BEE8-4f53-B27A-4E01F64F3DA8}

     

    Process Name: JetBrains.TeamCity.PlatformProcessRunner.v4.0.msil

     

    Process ID: 10268

     

    Platform: X86

     

    IsWow64: False

     

    Sleeping for 30 seconds to allow for debugging...

     

    [11:13:13]: [CRM.Tests.Unit.ExchangeServices.CreateEmailEntityFromEmailMessageFixture.Should_Create_When_Exchange_Email_Message_Fully_Populated] Test(s) failed. Telerik.JustMock.MockException : Could not create mock from sealed class when profiler is not enabled.

    [11:13:13]: [CRM.Tests.Unit.ExchangeServices.CreateEmailEntityFromEmailMessageFixture.Should_Create_When_Exchange_Email_Message_Fully_Populated] Test(s) failed. Telerik.JustMock.MockException : Could not create mock from sealed class when profiler is not enabled.

       at Telerik.JustMock.MockManager.CreateInstance(Container container)

       at Telerik.JustMock.MockManager.SetupMock(Behavior behavior, Boolean static)

       at Telerik.JustMock.MockManager.CreateInstance()

       at Telerik.JustMock.Mock.Create(Type target, Behavior behavior, Object[] args)

       at Telerik.JustMock.Mock.Create(Type target, Object[] args)

       at Telerik.JustMock.Mock.Create[T]()

       at CRM.Tests.Unit.ExchangeServices.CreateEmailEntityFromEmailMessageFixture.Should_Create_When_Exchange_Email_Message_Fully_Populated() in d:\TeamCityAgents\I\work\ea4d137355763e53\Source\CRM.Tests.Unit\ExchangeServices\CreateEmailEntityFromEmailMessageFixture.cs:line 34

     

    Then there is this in the event viewer, crucially for the same process ID as was written out above.

     

    11:12:34 AM: .NET Runtime version 4.0.30319.235 - The profiler was loaded successfully.  Profiler CLSID: '{D1087F67-BEE8-4f53-B27A-4E01F64F3DA8}'.  Process ID (decimal): 10268.  Message ID: [0x2507].  For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

     

    Checking the registry key you asked for:

     

    The machine (rg-build01) is a 32-bit machine so actually there's no complicated 32/64 bit registry stuff going on, which also means that the value isn't quite what they expected it to be (it's in Program Files not Program Files (x86)):

     

    HKEY_CLASSES_ROOT\CLSID\{D1087F67-BEE8-4f53-B27A-4E01F64F3DA8}\InprocServer32

     

    Has the value:

     

    C:\Program Files\Telerik\JustMock\Libraries\CodeWeaver\x86\Telerik.CodeWeaver.dll

     

    The saga continues...

  11. Chris
    Chris avatar
    9 posts
    Member since:
    Jul 2010

    Posted 05 Sep 2011 Link to this post

    Following up to that email, I ran the build again, and this time used Process Explorer to verify that the Telerik DLLs were actually loaded:

     
    (see attached image file)

    You can see the Telerik.CodeWeaver.dll loaded at the top there (it’s the one with the TODOs in its description and company name).  Note, that this is not definitive of course, because the tests might have a reference on it, and that’s why it’s loaded.  But coupled with the evidence below from the event viewer saying that it’s loaded, and that the path of that DLL matches the COM registration path, it looks pretty certain that their profiler is being loaded.

     

  12. Mihail
    Admin
    Mihail avatar
    75 posts

    Posted 05 Sep 2011 Link to this post

    Hello Chris,

    Thank you very much for the detailed log and screenshot. I confirm that JustMock profiler is loaded so I examined the code responsible for the exception you see and found issues. Is it an option to send you an internal build that has more verbose logging?

    Kind regards,
    Mike
    the Telerik team

    Thank you for being the most amazing .NET community! Your unfailing support is what helps us charge forward! We'd appreciate your vote for Telerik in this year's DevProConnections Awards. We are competing in mind-blowing 20 categories and every vote counts! VOTE for Telerik NOW >>

  13. Chris
    Chris avatar
    9 posts
    Member since:
    Jul 2010

    Posted 05 Sep 2011 Link to this post

    Yes, please send us a private build so that we can get this issue diagnosed and resolved - I'm keen to make much heavier use of JustMock across several projects so getting this unblocked is a big deal for us
  14. Mihail
    Admin
    Mihail avatar
    75 posts

    Posted 05 Sep 2011 Link to this post

    Hi Chris,

    Please find the attached zip file. It contains an internal JustMock build with additional logging enabled. The log is written into the standard Windows debug console so no need to worry that there will be log files left on the hard disk. To see the log you can use DebugView tool that is available at http://technet.microsoft.com/en-us/sysinternals/bb896647. This tool does not require installation. In order to capture the log DebugView has to be started before you start the test runner on your build server. The tool also allows you to save the log as a plain text file.

    Here is a part from the log on my machine:

    [3836] TestDriven.NET.OnConnection: 0.348
    [3420] JustMock: CoCreateInstance=800401F0
    [3420] JustMock: CoCreateInstance=800401F0
    [3420] JustMock: CoCreateInstance=800401F0
    [3420] JustMock: CoCreateInstance=800401F0
    ...
    [3420] JustMock: CoCreateInstance=800401F0
    [3420] JustMock: CoCreateInstance=0
    [3420] JustMock: AddToROT=0
    [3420] JustMock: Found weaver assembly=True
    [3420] JustMock: Looking for 'TelerikCodeWeaverPlaceholderPID3420' in ROT
    [3420] JustMock: GetRunningObjectTable=0, runningObjectTable=True
    [3420] JustMock: monikerEnumerator=0
    [3420] JustMock: (1) CreateBindCtx=0, ctx=True
    [3420] JustMock: (1) runningObjectName='TelerikCodeWeaverPlaceholderPID3420'
    [3420] JustMock: (1) Found 'TelerikCodeWeaverPlaceholderPID3420'
    [3420] JustMock: IsProfilerActive=True
    [3420] JustMock: profilerEnabled=True
    ...
    [3420] JustMock: Looking for 'TelerikCodeWeaverPlaceholderPID3420' in ROT
    [3420] JustMock: GetRunningObjectTable=0, runningObjectTable=True
    [3420] JustMock: monikerEnumerator=0
    [3420] JustMock: (1) CreateBindCtx=0, ctx=True
    [3420] JustMock: (1) runningObjectName='TelerikCodeWeaverPlaceholderPID3420'
    [3420] JustMock: (1) Found 'TelerikCodeWeaverPlaceholderPID3420'

    The number in square brackets is the ID of the process that writes the log. In your case you have to look for the test runner process ID. I put "JustMock:" prefix so you can easy filter the lines you are interested into.

    Please install the internal build and capture the log from JustMock. Once we have the log I will have a better understanding for the problem and how to help you.

    All the best,
    Mike
    the Telerik team

    Thank you for being the most amazing .NET community! Your unfailing support is what helps us charge forward! We'd appreciate your vote for Telerik in this year's DevProConnections Awards. We are competing in mind-blowing 20 categories and every vote counts! VOTE for Telerik NOW >>

  15. Chris
    Chris avatar
    9 posts
    Member since:
    Jul 2010

    Posted 06 Sep 2011 Link to this post

    Hi

    Fresh log based on the binaries you supplied yesterday.

    Extra context information from our build master below:

    == notes ==

    Installed, and ran; log attached.

    PIDs:

    4744: is our Monitoring system (part of SCOMM)

    1168: is ccservice (which can be ignored, because it’s some unrelated thing CC.net is doing; it is still being used for legacy raisons on other projects)

    11692 is the NUnit process.

    1056 and 8436 and 11720 are other processes that are part of the build, e.g. compiling the source code (because the environment variable is set for the entire build, not just the tests part of it).

    == Log == 

    00000001 6:29:24.759 PM [1056] JustMock: CoCreateInstance=800401F0
    00000002 6:29:24.775 PM [1056] JustMock: CoCreateInstance=800401F0
    00000003 6:29:24.775 PM [1056] JustMock: CoCreateInstance=800401F0
    00000004 6:29:24.775 PM [1056] JustMock: CoCreateInstance=800401F0
    00000005 6:29:24.775 PM [1056] JustMock: CoCreateInstance=800401F0
    00000006 6:29:24.775 PM [1056] JustMock: CoCreateInstance=800401F0
    00000007 6:29:24.775 PM [1056] JustMock: CoCreateInstance=800401F0
    00000008 6:29:24.775 PM [1056] JustMock: CoCreateInstance=800401F0
    00000009 6:29:24.775 PM [1056] JustMock: CoCreateInstance=800401F0
    00000010 6:29:24.775 PM [1056] JustMock: CoCreateInstance=800401F0
    00000011 6:29:24.775 PM [1056] JustMock: CoCreateInstance=800401F0
    00000012 6:29:24.775 PM [1056] JustMock: CoCreateInstance=800401F0
    00000013 6:29:24.790 PM [1056] JustMock: CoCreateInstance=800401F0
    00000014 6:29:24.790 PM [1056] JustMock: CoCreateInstance=800401F0
    00000015 6:29:24.790 PM [1056] JustMock: CoCreateInstance=800401F0
    00000016 6:29:24.790 PM [1056] JustMock: CoCreateInstance=800401F0
    00000017 6:29:24.790 PM [1056] JustMock: CoCreateInstance=800401F0
    00000018 6:29:24.790 PM [1056] JustMock: CoCreateInstance=800401F0
    00000019 6:29:24.790 PM [1056] JustMock: CoCreateInstance=800401F0
    00000020 6:29:24.790 PM [1056] JustMock: CoCreateInstance=800401F0
    00000021 6:29:24.790 PM [1056] JustMock: CoCreateInstance=800401F0
    00000022 6:29:24.790 PM [1056] JustMock: CoCreateInstance=800401F0
    00000023 6:29:24.790 PM [1056] JustMock: CoCreateInstance=800401F0
    00000024 6:29:24.790 PM [1056] JustMock: CoCreateInstance=800401F0
    00000025 6:29:24.790 PM [1056] JustMock: CoCreateInstance=800401F0
    00000026 6:29:24.790 PM [1056] JustMock: CoCreateInstance=800401F0
    00000027 6:29:24.790 PM [1056] JustMock: CoCreateInstance=800401F0
    00000028 6:29:24.790 PM [1056] JustMock: CoCreateInstance=800401F0
    00000029 6:29:24.790 PM [1056] JustMock: CoCreateInstance=800401F0
    00000030 6:29:24.790 PM [1056] JustMock: CoCreateInstance=800401F0
    00000031 6:29:24.790 PM [1056] JustMock: CoCreateInstance=800401F0
    00000032 6:29:24.790 PM [1056] JustMock: CoCreateInstance=800401F0
    00000033 6:29:24.790 PM [1056] JustMock: CoCreateInstance=800401F0
    00000034 6:29:24.806 PM [1056] JustMock: CoCreateInstance=800401F0
    00000035 6:29:24.806 PM [1056] JustMock: CoCreateInstance=800401F0
    00000036 6:29:24.806 PM [1056] JustMock: CoCreateInstance=800401F0
    00000037 6:29:24.806 PM [1056] JustMock: CoCreateInstance=800401F0
    00000038 6:29:24.806 PM [1056] JustMock: CoCreateInstance=800401F0
    00000039 6:29:24.806 PM [1056] JustMock: CoCreateInstance=800401F0
    00000040 6:29:24.806 PM [1056] JustMock: CoCreateInstance=800401F0
    00000041 6:29:24.806 PM [1056] JustMock: CoCreateInstance=800401F0
    00000042 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000043 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000044 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000045 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000046 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000047 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000048 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000049 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000050 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000051 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000052 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000053 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000054 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000055 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000056 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000057 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000058 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000059 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000060 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000061 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000062 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000063 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000064 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000065 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000066 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000067 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000068 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000069 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000070 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000071 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000072 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000073 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000074 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000075 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000076 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000077 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000078 6:29:24.821 PM [1056] JustMock: CoCreateInstance=800401F0
    00000079 6:29:24.837 PM [1056] JustMock: CoCreateInstance=800401F0
    00000080 6:29:24.837 PM [1056] JustMock: CoCreateInstance=800401F0
    00000081 6:29:24.837 PM [1056] JustMock: CoCreateInstance=800401F0
    00000082 6:29:24.837 PM [1056] JustMock: CoCreateInstance=800401F0
    00000083 6:29:24.837 PM [1056] JustMock: CoCreateInstance=800401F0
    00000084 6:29:24.837 PM [1056] JustMock: CoCreateInstance=800401F0
    00000085 6:29:24.837 PM [1056] JustMock: CoCreateInstance=800401F0
    00000086 6:29:24.837 PM [1056] JustMock: CoCreateInstance=800401F0
    00000087 6:29:24.837 PM [1056] JustMock: CoCreateInstance=800401F0
    00000088 6:29:24.837 PM [1056] JustMock: CoCreateInstance=800401F0
    00000089 6:29:24.837 PM [1056] JustMock: CoCreateInstance=800401F0
    00000090 6:29:24.837 PM [1056] JustMock: CoCreateInstance=800401F0
    00000091 6:29:24.837 PM [1056] JustMock: CoCreateInstance=800401F0
    00000092 6:29:24.837 PM [1056] JustMock: CoCreateInstance=800401F0
    00000093 6:29:24.837 PM [1056] JustMock: CoCreateInstance=800401F0
    00000094 6:29:24.837 PM [1056] JustMock: CoCreateInstance=800401F0
    00000095 6:29:24.837 PM [1056] JustMock: CoCreateInstance=800401F0
    00000096 6:29:24.837 PM [1056] JustMock: CoCreateInstance=800401F0
    00000097 6:29:24.837 PM [1056] JustMock: CoCreateInstance=800401F0
    00000098 6:29:24.837 PM [1056] JustMock: CoCreateInstance=800401F0
    00000099 6:29:24.853 PM [1056] JustMock: CoCreateInstance=0
    00000100 6:29:24.853 PM [1056] JustMock: AddToROT=0
    00000101 6:29:28.525 PM [8436] JustMock: CoCreateInstance=0
    00000102 6:29:28.540 PM [8436] JustMock: AddToROT=0
    00000103 6:29:53.650 PM [4744] Script 'MOM Backward Compatibility Service State Monitoring Script' completed with the following output: (empty)
    00000104 6:29:53.728 PM [4744] Script 'MOM Backward Compatibility Service State Monitoring Script' completed with the following output: (empty)
    00000105 6:30:03.619 PM [11720] JustMock: CoCreateInstance=800401F0
    00000106 6:30:03.619 PM [11720] JustMock: CoCreateInstance=800401F0
    00000107 6:30:03.619 PM [11720] JustMock: CoCreateInstance=800401F0
    00000108 6:30:03.619 PM [11720] JustMock: CoCreateInstance=800401F0
    00000109 6:30:03.619 PM [11720] JustMock: CoCreateInstance=800401F0
    00000110 6:30:03.619 PM [11720] JustMock: CoCreateInstance=800401F0
    00000111 6:30:03.619 PM [11720] JustMock: CoCreateInstance=800401F0
    00000112 6:30:03.619 PM [11720] JustMock: CoCreateInstance=800401F0
    00000113 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000114 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000115 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000116 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000117 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000118 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000119 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000120 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000121 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000122 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000123 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000124 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000125 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000126 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000127 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000128 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000129 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000130 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000131 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000132 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000133 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000134 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000135 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000136 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000137 6:30:03.634 PM [11720] JustMock: CoCreateInstance=800401F0
    00000138 6:30:03.650 PM [11720] JustMock: CoCreateInstance=800401F0
    00000139 6:30:03.650 PM [11720] JustMock: CoCreateInstance=800401F0
    00000140 6:30:03.650 PM [11720] JustMock: CoCreateInstance=800401F0
    00000141 6:30:03.650 PM [11720] JustMock: CoCreateInstance=800401F0
    00000142 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000143 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000144 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000145 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000146 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000147 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000148 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000149 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000150 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000151 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000152 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000153 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000154 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000155 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000156 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000157 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000158 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000159 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000160 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000161 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000162 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000163 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000164 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000165 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000166 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000167 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000168 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000169 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000170 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000171 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000172 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000173 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000174 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000175 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000176 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000177 6:30:03.666 PM [11720] JustMock: CoCreateInstance=800401F0
    00000178 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000179 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000180 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000181 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000182 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000183 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000184 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000185 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000186 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000187 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000188 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000189 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000190 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000191 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000192 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000193 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000194 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000195 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000196 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000197 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000198 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000199 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000200 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000201 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000202 6:30:03.681 PM [11720] JustMock: CoCreateInstance=800401F0
    00000203 6:30:03.697 PM [11720] JustMock: CoCreateInstance=0
    00000204 6:30:03.697 PM [11720] JustMock: AddToROT=0
    00000205 6:30:08.884 PM [11692] JustMock: CoCreateInstance=800401F0
    00000206 6:30:08.884 PM [11692] JustMock: CoCreateInstance=800401F0
    00000207 6:30:08.884 PM [11692] JustMock: CoCreateInstance=800401F0
    00000208 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000209 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000210 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000211 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000212 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000213 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000214 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000215 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000216 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000217 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000218 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000219 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000220 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000221 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000222 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000223 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000224 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000225 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000226 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000227 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000228 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000229 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000230 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000231 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000232 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000233 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000234 6:30:08.900 PM [11692] JustMock: CoCreateInstance=800401F0
    00000235 6:30:08.916 PM [11692] JustMock: CoCreateInstance=800401F0
    00000236 6:30:08.916 PM [11692] JustMock: CoCreateInstance=800401F0
    00000237 6:30:08.916 PM [11692] JustMock: CoCreateInstance=800401F0
    00000238 6:30:08.916 PM [11692] JustMock: CoCreateInstance=800401F0
    00000239 6:30:08.916 PM [11692] JustMock: CoCreateInstance=800401F0
    00000240 6:30:08.916 PM [11692] JustMock: CoCreateInstance=800401F0
    00000241 6:30:08.916 PM [11692] JustMock: CoCreateInstance=800401F0
    00000242 6:30:08.916 PM [11692] JustMock: CoCreateInstance=800401F0
    00000243 6:30:08.916 PM [11692] JustMock: CoCreateInstance=800401F0
    00000244 6:30:08.916 PM [11692] JustMock: CoCreateInstance=800401F0
    00000245 6:30:08.931 PM [11692] JustMock: CoCreateInstance=800401F0
    00000246 6:30:08.931 PM [11692] JustMock: CoCreateInstance=800401F0
    00000247 6:30:08.947 PM [11692] JustMock: CoCreateInstance=800401F0
    00000248 6:30:08.947 PM [11692] JustMock: CoCreateInstance=800401F0
    00000249 6:30:08.947 PM [11692] JustMock: CoCreateInstance=800401F0
    00000250 6:30:08.947 PM [11692] JustMock: CoCreateInstance=800401F0
    00000251 6:30:08.963 PM [11692] JustMock: CoCreateInstance=800401F0
    00000252 6:30:08.963 PM [11692] JustMock: CoCreateInstance=800401F0
    00000253 6:30:08.963 PM [11692] JustMock: CoCreateInstance=800401F0
    00000254 6:30:08.963 PM [11692] JustMock: CoCreateInstance=800401F0
    00000255 6:30:08.963 PM [11692] JustMock: CoCreateInstance=800401F0
    00000256 6:30:08.963 PM [11692] JustMock: CoCreateInstance=800401F0
    00000257 6:30:08.963 PM [11692] JustMock: CoCreateInstance=800401F0
    00000258 6:30:08.963 PM [11692] JustMock: CoCreateInstance=800401F0
    00000259 6:30:08.963 PM [11692] JustMock: CoCreateInstance=800401F0
    00000260 6:30:08.963 PM [11692] JustMock: CoCreateInstance=800401F0
    00000261 6:30:08.963 PM [11692] JustMock: CoCreateInstance=800401F0
    00000262 6:30:08.963 PM [11692] JustMock: CoCreateInstance=800401F0
    00000263 6:30:08.963 PM [11692] JustMock: CoCreateInstance=800401F0
    00000264 6:30:08.963 PM [11692] JustMock: CoCreateInstance=800401F0
    00000265 6:30:08.963 PM [11692] JustMock: CoCreateInstance=800401F0
    00000266 6:30:08.963 PM [11692] JustMock: CoCreateInstance=800401F0
    00000267 6:30:08.963 PM [11692] JustMock: CoCreateInstance=800401F0
    00000268 6:30:08.963 PM [11692] JustMock: CoCreateInstance=800401F0
    00000269 6:30:08.963 PM [11692] JustMock: CoCreateInstance=800401F0
    00000270 6:30:08.963 PM [11692] JustMock: CoCreateInstance=800401F0
    00000271 6:30:08.963 PM [11692] JustMock: CoCreateInstance=800401F0
    00000272 6:30:08.963 PM [11692] JustMock: CoCreateInstance=800401F0
    00000273 6:30:08.978 PM [11692] JustMock: CoCreateInstance=800401F0
    00000274 6:30:08.978 PM [11692] JustMock: CoCreateInstance=800401F0
    00000275 6:30:08.978 PM [11692] JustMock: CoCreateInstance=800401F0
    00000276 6:30:08.978 PM [11692] JustMock: CoCreateInstance=800401F0
    00000277 6:30:08.978 PM [11692] JustMock: CoCreateInstance=800401F0
    00000278 6:30:08.978 PM [11692] JustMock: CoCreateInstance=800401F0
    00000279 6:30:08.978 PM [11692] JustMock: CoCreateInstance=800401F0
    00000280 6:30:08.978 PM [11692] JustMock: CoCreateInstance=800401F0
    00000281 6:30:08.978 PM [11692] JustMock: CoCreateInstance=800401F0
    00000282 6:30:08.978 PM [11692] JustMock: CoCreateInstance=800401F0
    00000283 6:30:08.978 PM [11692] JustMock: CoCreateInstance=0
    00000284 6:30:08.978 PM [11692] JustMock: AddToROT=0
    00000285 6:30:14.447 PM [1168] Fail to create a process object to process id 6808
    00000286 6:31:53.636 PM [4744] Script 'MOM Backward Compatibility Service State Monitoring Script' completed with the following output: (empty)
    00000287 6:31:53.698 PM [4744] Script 'MOM Backward Compatibility Service State Monitoring Script' completed with the following output: (empty)



  16. Mihail
    Admin
    Mihail avatar
    75 posts

    Posted 06 Sep 2011 Link to this post

    Hello Chris,

    The log so far confirms that JustMock profiler works correctly. I expected more log entries though. I expected to see something like:

    [3420] JustMock: Found weaver assembly=True
    [3420] JustMock: Looking for 'TelerikCodeWeaverPlaceholderPID3420' in ROT
    [3420] JustMock: GetRunningObjectTable=0, runningObjectTable=True
    [3420] JustMock: monikerEnumerator=0
    [3420] JustMock: (1) CreateBindCtx=0, ctx=True
    [3420] JustMock: (1) runningObjectName='TelerikCodeWeaverPlaceholderPID3420'
    [3420] JustMock: (1) Found 'TelerikCodeWeaverPlaceholderPID3420'
    [3420] JustMock: IsProfilerActive=True
    [3420] JustMock: profilerEnabled=True

    or in your case some of the values should be FALSE. In one of your previous posts you attached a screen shot from Process Explorer tool. It seems that Telerik.CodeWeaver.Hook assembly is loaded from GAC (I conclude this from its image path C:\Windows\assembly\GAC_MSIL\Telerik_CodeWeaver_Hook\1.0.0.0_.....\Telerik.CodeWeaver.Hook.dll). This is not usual for JustMock installation. Is this assembly manually installed in GAC?

    When CLR tries to load an assembly GAC location has highest precedence. I suspect you have an old assembly version deployed in GAC. Is it possible to remove this assembly from GAC or to make sure you replace the assembly with the version from comes with the internal JustMock build?

    Also, can you please confirm that your tests are actually build with the new Telerik.JustMock.dll assembly? I've put logging functionality in both Telerik.JustMock.dll and Telerik.CodeWeaver.Hook.dll assemblies which I dont see. Please let us know what your findings are.

    Best wishes,
    Mike
    the Telerik team

    Thank you for being the most amazing .NET community! Your unfailing support is what helps us charge forward! We'd appreciate your vote for Telerik in this year's DevProConnections Awards. We are competing in mind-blowing 20 categories and every vote counts! VOTE for Telerik NOW >>

  17. Chris
    Chris avatar
    9 posts
    Member since:
    Jul 2010

    Posted 02 Nov 2011 Link to this post

    Hi

    I'm finally back onto looking at this problem and want to get this resolved with our new build master - unfortunately the trial has expired so we can't verify our test :-(

    Is it possible to get a trial extension so we can verify this fix?

    Have the fixed that were made been rolled into an updated live build? We would want to get this rolled out across the team and onto our build server if this proves successful

    Thanks

    Chris
  18. Ricky
    Admin
    Ricky avatar
    467 posts

    Posted 03 Nov 2011 Link to this post

    Hi Chris,
    Thanks again for contacting us. At this point i would ask you to create a support ticket where i can send you an internal build with the required extension.

    Kind Regards,
    Mehfuz
    the Telerik team

    Explore the entire Telerik portfolio by downloading the Ultimate Collection trial package. Get it now >>

  19. DGDev
    DGDev avatar
    42 posts
    Member since:
    Jul 2012

    Posted 03 Mar 2012 Link to this post

    Can anyone update the status on this issue.  I'm having problems using dotCover with JustMock.  JustMock works perfectly when running the tests and debugging, however, whenever I try to run code coverage, many tests fail with the error:
    Profiler must be enabled to mock/assert target ...

    Example:
    Telerik.JustMock.MockException : Profiler must be enabled to mock/assert target KeyedHashProvider.CreateHashAsBase64(String,String,Boolean,DataProtectionScope) method.
    at Telerik.JustMock.Handlers.InterceptorHandler.Create(Object target, MethodInfo methodInfo, Boolean privateMethod)
    at Telerik.JustMock.MockContext`1.SetupMock(MockExpression`1 expression)
    at Telerik.JustMock.Helpers.FluentHelper.<>c__DisplayClass1`2.<Arrange>b__0(MockContext`1 x)
    at Telerik.JustMock.MockContext.Setup(Instruction instruction, Func`2 function)
    at Telerik.JustMock.Helpers.FluentHelper.Arrange(T obj, Expression`1 expression)
    at NContext.Extensions.EnterpriseLibrary.Tests.Unit.KeyedHashProviderTests.CreateHashAsBase64_DefaultWithNoSalt_ReturnsAValidHash() in KeyedHashProviderTests.cs: line 82

    [Test]
    public void CreateHashAsBase64_DefaultWithNoSalt_ReturnsAValidHash()
    {
        Type defaultKeyedHashAlgorithm = typeof(HMACSHA256);
        var mockHashProvider = Mock.Create<KeyedHashProvider>(defaultKeyedHashAlgorithm);
        mockHashProvider.Arrange(p => p.CreateHashAsBase64(Arg.AnyString, Arg.AnyString, false, DataProtectionScope.LocalMachine)).CallOriginal();
     
        var actual = mockHashProvider.CreateHashAsBase64(_SymmetricKey, _PlainText, false);
        var expected = Convert.ToBase64String(new HMACSHA256(_SymmetricKeyBytes).ComputeHash(_PlainTextBytes));
     
        Assert.AreEqual(expected, actual);
    }
  20. Ricky
    Admin
    Ricky avatar
    467 posts

    Posted 08 Mar 2012 Link to this post

    Hi Chris,

    Thanks again for reporting the issue. To make JustMock tests work with dotCover, I would recommend combining your test executable with JustMockRunner.exe. Here, i created a sample project with a coverage.xml that looks like:

    <CoverageParams>
    <TargetExecutable>C:\Program Files (x86)\Telerik\JustMock\Libraries\JustMockRunner.exe</TargetExecutable>
    <TargetArguments>"c:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\MSTest.exe"  "/testContainer:C:\JustMock_Examples\JustMock_Examples\bin\Debug\JustMock_Examples.dll"</TargetArguments>
    <Output>output.dcvr</Output>
    </CoverageParams>

    Next, I created a cover.bat where I pointed the coverage.xml and once executed all tests passed as expected.

    "C:\Program Files (x86)\JetBrains\dotCover\v1.2\Bin\dotcover.exe" cover coverage.xml

    This can also be done from VS-> dotCover -> cover applicaiton option where the value for TestExecutable and TestArguments should be exactly the same as the above coverage.xml.

    However, one glitch i found that dotCover does not display the coverage snapshot properly when combined with JustMockRunner. I will keep a note on that and we will investigate further. However, this could also be an issue that dotcover is not processing the result from JustMockRunner.exe properly as
    when the same method is used with standalone runner for NCover, everything worked as expected.

    Finally, I am including the project for you to take a look. Here I have used the latest Q1 release.

    Kind Regards,
    Mehfuz
    the Telerik team
    Sharpen your .NET Ninja skills! Attend Q1 webinar week and get a chance to win a license! Book your seat now >>
  21. Andrew
    Andrew avatar
    125 posts
    Member since:
    Sep 2008

    Posted 14 Mar 2012 Link to this post

    I am having the same issue with Jenkins. I am getting this error:
    Telerik.JustMock.MockException : Profiler must be enabled to mock/assert target
  22. Ricky
    Admin
    Ricky avatar
    467 posts

    Posted 16 Mar 2012 Link to this post

    Hi Chris,

    Thanks for pointing the issue. However, JustMockRunner.exe is designed to run JustMock tests with third-party tools. If the arguments are set properly then you won’t be having any issues configuring it with Jenkins.

    In addition, if you have some specific problems with Jenkins then feel free to share it with us and we would love to help you out.

    Kind Regards
    Mehfuz
    the Telerik team
    Sharpen your .NET Ninja skills! Attend Q1 webinar week and get a chance to win a license! Book your seat now >>
  23. Andrew
    Andrew avatar
    125 posts
    Member since:
    Sep 2008

    Posted 16 Mar 2012 Link to this post

    ok I got justmockrunner working as:
    "C:\Program Files (x86)\Telerik\JustMock\Libraries\JustMockRunner.exe" "C:\Program Files (x86)\NUnit 2.5.9\bin\net-2.0\nunit-console.exe" %~1

    but how do I rename the results output file for nunit using "/out:Testing.txt" I have tried many ways to change it but it just gets ignored
  24. Ricky
    Admin
    Ricky avatar
    467 posts

    Posted 21 Mar 2012 Link to this post

    Hi Andrew,
    It's great that you got JustMockRunner working. However, I run the following command with NUnit only and the TestResult file is still blank

    "C:\JustMock_Support\JustMockRunner_with_samples_5193F2E9\NUnit-2.6.0.12051\bin\nunit-console.exe" "C:\JustMock_Support\JustMockRunner_with_samples_5193F2E9\JustMockTest\JustMockTrialTests\bin\Debug\JustMockTrialTests.dll" /out:TestResult.txt

    In addition, I found the following message in NUnit website:

    Note:This option only redirects output produced by the tests, together with selected NUnit output that is interspersed with the test output. It does not redirect all console output. If you want to redirect alloutput to a file, you should use command line redirection as supported by the shell you are using. This option exists for the purpose of separating test output from other output, such as the NUnit summary report.

    Therefore, i modified the above line in the following way and it redirected the output properly:

    "C:\JustMock_Support\JustMockRunner_with_samples_5193F2E9\NUnit-2.6.0.12051\bin\nunit-console.exe" "C:\JustMock_Support\JustMockRunner_with_samples_5193F2E9\JustMockTest\JustMockTrialTests\bin\Debug\JustMockTrialTests.dll" > TestResult.txt

    Further, including JustMockRunner.exe it redirected the output as well:

    "C:\Program Files (x86)\Telerik\JustMock\Libraries\JustMockRunner.exe" "C:\JustMock_Support\JustMockRunner_with_samples_5193F2E9\NUnit-2.6.0.12051\bin\nunit-console.exe" "C:\JustMock_Support\JustMockRunner_with_samples_5193F2E9\JustMockTest\JustMockTrialTests\bin\Debug\JustMockTrialTests.dll" > TestResult.txt

    Hope this solves your issue.

    Kind Regards,
    Mehfuz
    the Telerik team

    Sharpen your .NET Ninja skills! Attend Q1 webinar week and get a chance to win a license! Book your seat now >>
Back to Top
DevCraft R3 2016 release webinar banner