summaryrefslogtreecommitdiff
path: root/indra/newview/tests
AgeCommit message (Collapse)Author
2010-07-29Yet more cleanup around llmediadataclient.Monroe Linden
In LLVOVolume, added a count of LLMediaDataClientObjectImpl objects referencing each LLVOVolume object. This allows LLVOVolume::markDead() to skip the relatively expensive calls to removeFromQueue() when the LLVOVolume is known to have no active references. Refactored LLMediaDataClient and its two child classes so that only LLObjectMediaDataClient has the round-robin queue (LLObjectMediaNavigateClient doesn't need it), and cleaned up some of the virtual function hierarchy around queue processing. In LLMediaDataClient, added tracking for requests that aren't currently in a queue (i.e. requests that are in flight or waiting for retries) so they can be found when their objects are marked dead. LLMediaDataClient::Request now directly keeps track of the object ID and face associated with the request. Removed the "markedSent" concept from requests. Requests that have been sent are no longer kept in a queue. The Retry timer now references the Request object instead of the Responder. Replaced LLMediaDataClient::findOrRemove() with separate template functions for find and remove.
2010-07-21Miscellaneous cleanup in and around llmediadataclient.Monroe Linden
Added tags to some media-related logging in LLVOVolume. Made LLMediaDataClient::Responder do most of its work in tick() instead of its destructor. Added a comment to llmediadataclient.cpp that explains the idea behind the two-queue system. Made LLMediaDataClient::sortQueue() remove requests from the queue that hold references to dead items. This should make teleporting away solve many of the pathological queueing cases. Updated llmediadataclient test cases to reflect the change in behavior in sortQueue(). Removed some unnecessary const-ness in LLMediaDataClient::enqueue, which caused it to have to use const_cast.
2010-07-26(hairy) merge from viewer-releaseTofu Linden
2010-07-23Fixed PROJECT_secondlife-bin_TEST_lllogininstance unit test to fix Linux build.Sergei Litovchuk
--HG-- branch : product-engine
2010-07-15Fix for SNOW-742 compile & link errors under certain gcc versions due to ↵brad kittenbrink
violation of One Definition Rule. reviewed by Moss.
2010-05-27automated mergeRoxie Linden
2010-05-27EXT-7388 - --grid command-line argument does nothingRoxie Linden
Fix up overriding of --loginuri --loginpage --helperuri
2010-05-27EXT-7388 - --grid command-line argument does nothingRoxie Linden
QAR-3119 --grid command-line argument does nothing Made --grid specifier case insensitive. Fixed some issues with specifying non-well-known-grids Fixed some issues with specifying --loginuri, --loginpage and --helperuri
2010-05-26Add new mechanism for getting a unique machine id.karina
2010-05-24Few more touchups for the cert performance codeRoxie Linden
2010-05-24Fixup some certificate related unit testsRoxie Linden
2010-05-24DEV-50173 - investigate certificate code performanceRoxie Linden
DEV-50166 - LLBasicCertificateChain::validate calls in log Added caching of certificates that have been validated. The sha1 hash for the certificate is stored and is associated with the from and to times. When the certificate is validated, the code determines whether the certificate has successfully been validated before by looking for it in the cache, and then checks the date of the cert. If that is successful, the validation calls with success. Otherwise, it proceeds to do a full validation of the certificate.
2010-05-18Add missing debug gridsRoxie Linden
2010-04-29Add test for sha1WithRSAEncryption signed certs. Also removed redundant ↵Roxie Linden
openssl initialization
2010-04-26Fix issue parsing wildcard cns in certificatesRoxie Linden
CR: Karina
2010-04-22Fix test build breakRoxie Linden
2010-04-22DEV-49332 - cryptic error message when typing in single username when ↵Roxie Linden
logging into maingrid. Needs to be changed when IE is checked in, of course. Now we check the expected credential formats for a given grid against the format that is typed in, and throw an error if it's invalid.
2010-04-21Show beta grids depending on a settings.xml setting. for SLE, this will be ↵Roxie Linden
turned off. For trunk, it's turned on. Also, fixed an issue with manual entry of locations into the location dropdown.
2010-04-07Re-insert backed out SLE checkin so we can fix itRoxie Linden
2010-04-07Backed out changeset 63b699f90efdTofu Linden
2010-03-01Automated merge from trunkRoxie Linden
2010-03-01Automated merge with a few fixups for code review commentsRoxie Linden
2010-02-28Hopefully fix this test case after the EXT-5820 fixTofu Linden
2010-02-26automated mergeRoxie Linden
2010-02-26automated mergeRoxie Linden
2010-02-25automated mergeRoxie Linden
2010-02-25automated mergeRoxie Linden
2010-02-25Automated mergeRoxie Linden
2010-02-12Changing viewer unit test licenses to viewergplMark Palange (Mani)
2010-01-29CID-319Tofu Linden
Checker: UNINIT_CTOR Function: LLViewerLogin::LLViewerLogin() File: /indra/newview/tests/lllogininstance_test.cpp
2010-01-29CID-328Tofu Linden
Checker: UNINIT_CTOR Function: LLAgent::LLAgent() File: /indra/newview/tests/llviewerhelputil_test.cpp
2010-01-15EXT-4340: Fixed llviewerhelputil_test.cpp on Linux.Lynx Linden
The gcc compiler will strip out the stubbed isGodlike() method under an optimized build. There's no way to stop this without either putting the definition in another cpp file, which is hard to do with our unit test infrastructure, or disabling gcc's inlining of the method. So I did the latter, using __attribute__ ((noinline).
2010-01-15EXT-4340: Fixed and re-enabled the llviewerhelputil unit test.Lynx Linden
2010-01-05Better unit test for date math, works on PC but system problem on Mac/LinuxJames Cook
2009-12-15EXT-3441: Support various substitutions for Search URL.Lynx Linden
The search URL is now specified in app_settings/settings.xml (instead of in floater_search.xml), and it is now defined more flexibly with support for various substitution strings, such as [QUERY], [AUTH_KEY], [MATURITY], [GODLIKE], etc. I pulled the common substitution code out into a new static method, LLWeb::expandURLSubstitutions(). This provides support for common strings like [VERSION], [CHANNEL], [LANGUAGE], [OS], etc. The Help and Home sidetray code has been updated to use this new function, to avoid replicating this behavior 3 times. I also cleaned up the app_settings/settings.xml file and removed the old search keys of: SearchURLDefault, SearchURLQuery, and SearchURLSuffix2.
2009-12-14Yet again more fixups for compile errors after the last merge...brad kittenbrink
2009-12-10PARTIAL DEV-43869 - add "isInterestingEnough()" to the queue calculationRick Pasetto
This change bumps the queue sizes way up, because we think that the "isInterestingEnough()" call will prevent loading more media data than we think is necessary. Still need to implement it in LLVOVolume, though
2009-12-10PARTIAL DEV-43869: LLMediaDataClient now uses two queuesRick Pasetto
This is a fairly major change that addresses the issue of an object with constantly-updating media. Before, that object would be put into our single queue and sorted to a particular spot, and since it continuously updates, it would "always be there". That means that nothing "behind" it would ever get serviced. This change introduces two queues for each MDC: one is the same "sorted" queue as before, and the other is unsorted, and "round-robins". New objects go into the sorted queue, objects whose media we already know about get put into the unsorted queue. The two queues are interleaved when serviced (one then the other is serviced -- if one is empty we try the other -- until they are both drained). The round-robin queue works a little differently: after an item is fetched from that queue (remember this would be an item we already know about), that request is marked and put back at the end of the queue. If that object gets a UDP update while in the queue, that mark is "cleared". When it gets to the front of the queue again, if it still marked, it is thrown away. If it is not marked, it is fetched, and again marked and put at the end. This makes the queue self-limiting in how big it can get. I have also made some other changes: - The sorting comparator now just delegates to the object for its "interest" calculation. A higher value = more interesting. LLVOVolume now uses its PixelArea for its "interest" calculation, which seems apparently better (the prior distance calculation was wrong anyway). - The score is cached before the sort operation is performed, so that it won't be expensive to sort - Now, the media version that is fetched is saved in the LLVOVolume, and we do not update if it is not newer (this is not very useful...yet.) - I've introduced hard limits (settable by debug settings) on the size of the queues. The sorted queue will be culled (after sort) to that count. NOTE: this will probably get removed in a later checkin, as I've already gotten feedback that this is not desirable - I've reorganized LLMediaDataClient so it makes more sense. - I've made the request object a little smaller, so the queue won't take up so much memory (more work could be done here) - Added a unit test for the two-queue case (though more tests are needed!)
2009-12-08DEV-43439: Created new LLVersionInfo API.Lynx Linden
Renamed llviewerversion to llversioninfo, to avoid confusion with llversionviewer in llcommon (llversion is already used by llwindow). Created new LLVersionInfo class with the following methods: static S32 getMajor(); static S32 getMinor(); static S32 getPatch(); static S32 getBuild(); static const std::string &getVersion(); static const std::string &getShortVersion(); static const std::string &getChannel(); All viewer code has been updated to use this API. Viewer code no longer directly includes llversionviewer.h from llcommon.
2009-12-07DEV-43439: Rename llviewerbuild.{cpp|h} -> llviewerversion.{cpp|h}Lynx Linden
This module now contains general viewer version routines, not just access to the viewer build number, so I've renamed it from llviewerbuild to llviewerversion.
2009-12-07DEV-43439: Added calls to query the viewer version.Lynx Linden
Rather than copy/paste the same version string formatting pattern again, I added new string-based version routines: /// return the full viewer version as a string like "2.0.0.200030" const std::string &llGetViewerVersion(); /// return the viewer version as a string like "2.0.0" const std::string &llGetViewerShortVersion(); /// return the viewer build version as a string, e.g., "200130" const std::string &llGetViewerBuildVersion();
2009-11-24DEV-41998 - refactor mediadataclient to use a std::list, and re-sort every ↵Rick Pasetto
time an item is pulled off the queue Review #43 This change refactors mediadataclient to no longer use a PriorityQueue (which sorts only on insertion), but rather just use a std::list which is re-sorted on insert, and also when "popped" (at the time the queue timer goes off). Also implemented a unit test to make sure re-sorting occurs on timer tick.
2009-11-20mergeJames Cook
2009-11-19Made LLMediaDataClient not send requests on behalf of objects that are ↵Monroe Linden
marked as dead. When LLMediaDataClient::QueueTimer::tick() encounters an object at the head of the queue that's dead, it will now remove that object and loop, instead of sending a request and waiting for the tick timer to fire again. Added an isDead() function to LLMediaDataClientObject, and an additional unit test that verifies the handling of dead objects.
2009-11-18EXT-1743 People inspectors should show Age, not Date born, fixed date mathJames Cook
Changed date math to correctly account for month lengths and leap years. Extended unit test. Review pending.
2009-11-12mergeMark Palange (Mani)
2009-11-11Changes to fix an LLERRS caused by SRV request timeout.Mark Palange (Mani)
Added settings to config SRV request params Increased timeout to 10 seconds Changed timeout to generate login failure event instead of an error. Added unit test to cover SRV failure event.
2009-11-10FIX DEV-41991: do not allow media settings panel to come up if media data is ↵Rick Pasetto
in flight Review #33 This change marks the current selection "not editable" if any objects in the selection are currently "in flight" (i.e. their media data has not been fetched yet, or is in the process of being fetched). This involved adding API to LLMediaDataClient to query whether an object is in the process of being fetched (i.e. in the queue). I've added a unit test for this new API.
2009-11-06merge from texture-pipelineSteve Bennetts
2009-11-06merge QAR-1829: texture pipeline branch in viewer-2.0.0.3Xiaohong Bao