summaryrefslogtreecommitdiff
path: root/indra/llcommon/tests/lltrace_test.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/llcommon/tests/lltrace_test.cpp')
-rw-r--r--indra/llcommon/tests/lltrace_test.cpp186
1 files changed, 93 insertions, 93 deletions
diff --git a/indra/llcommon/tests/lltrace_test.cpp b/indra/llcommon/tests/lltrace_test.cpp
index 0a9d85ad00..8851f87b91 100644
--- a/indra/llcommon/tests/lltrace_test.cpp
+++ b/indra/llcommon/tests/lltrace_test.cpp
@@ -1,4 +1,4 @@
-/**
+/**
* @file llsingleton_test.cpp
* @date 2011-08-11
* @brief Unit test for the LLSingleton class
@@ -34,14 +34,14 @@
namespace LLUnits
{
- // using powers of 2 to allow strict floating point equality
- LL_DECLARE_BASE_UNIT(Ounces, "oz");
- LL_DECLARE_DERIVED_UNIT(TallCup, "", Ounces, / 12);
- LL_DECLARE_DERIVED_UNIT(GrandeCup, "", Ounces, / 16);
- LL_DECLARE_DERIVED_UNIT(VentiCup, "", Ounces, / 20);
-
- LL_DECLARE_BASE_UNIT(Grams, "g");
- LL_DECLARE_DERIVED_UNIT(Milligrams, "mg", Grams, * 1000);
+ // using powers of 2 to allow strict floating point equality
+ LL_DECLARE_BASE_UNIT(Ounces, "oz");
+ LL_DECLARE_DERIVED_UNIT(TallCup, "", Ounces, / 12);
+ LL_DECLARE_DERIVED_UNIT(GrandeCup, "", Ounces, / 16);
+ LL_DECLARE_DERIVED_UNIT(VentiCup, "", Ounces, / 20);
+
+ LL_DECLARE_BASE_UNIT(Grams, "g");
+ LL_DECLARE_DERIVED_UNIT(Milligrams, "mg", Grams, * 1000);
}
LL_DECLARE_UNIT_TYPEDEFS(LLUnits, Ounces);
@@ -54,89 +54,89 @@ LL_DECLARE_UNIT_TYPEDEFS(LLUnits, Milligrams);
namespace tut
{
- using namespace LLTrace;
- struct trace
- {
- ThreadRecorder mRecorder;
- };
-
- typedef test_group<trace> trace_t;
- typedef trace_t::object trace_object_t;
- tut::trace_t tut_singleton("LLTrace");
-
- static CountStatHandle<S32> sCupsOfCoffeeConsumed("coffeeconsumed", "Delicious cup of dark roast.");
- static SampleStatHandle<F32Milligrams> sCaffeineLevelStat("caffeinelevel", "Coffee buzz quotient");
- static EventStatHandle<S32Ounces> sOuncesPerCup("cupsize", "Large, huge, or ginormous");
-
- static F32 sCaffeineLevel(0.f);
- const F32Milligrams sCaffeinePerOz(18.f);
-
- void drink_coffee(S32 num_cups, S32Ounces cup_size)
- {
- add(sCupsOfCoffeeConsumed, num_cups);
- for (S32 i = 0; i < num_cups; i++)
- {
- record(sOuncesPerCup, cup_size);
- }
-
- sCaffeineLevel += F32Ounces(num_cups * cup_size).value() * sCaffeinePerOz.value();
- sample(sCaffeineLevelStat, sCaffeineLevel);
- }
-
- // basic data collection
- template<> template<>
- void trace_object_t::test<1>()
- {
- sample(sCaffeineLevelStat, sCaffeineLevel);
-
- Recording all_day;
- Recording at_work;
- Recording after_3pm;
-
- all_day.start();
- {
- // warm up with one grande cup
- drink_coffee(1, S32TallCup(1));
-
- // go to work
- at_work.start();
- {
- // drink 3 tall cups, 1 after 3 pm
- drink_coffee(2, S32GrandeCup(1));
- after_3pm.start();
- drink_coffee(1, S32GrandeCup(1));
- }
- at_work.stop();
- drink_coffee(1, S32VentiCup(1));
- }
- // don't need to stop recordings to get accurate values out of them
- //after_3pm.stop();
- //all_day.stop();
-
- ensure("count stats are counted when recording is active",
- at_work.getSum(sCupsOfCoffeeConsumed) == 3
- && all_day.getSum(sCupsOfCoffeeConsumed) == 5
- && after_3pm.getSum(sCupsOfCoffeeConsumed) == 2);
- ensure("measurement sums are counted when recording is active",
- at_work.getSum(sOuncesPerCup) == S32Ounces(48)
- && all_day.getSum(sOuncesPerCup) == S32Ounces(80)
- && after_3pm.getSum(sOuncesPerCup) == S32Ounces(36));
- ensure("measurement min is specific to when recording is active",
- at_work.getMin(sOuncesPerCup) == S32GrandeCup(1)
- && all_day.getMin(sOuncesPerCup) == S32TallCup(1)
- && after_3pm.getMin(sOuncesPerCup) == S32GrandeCup(1));
- ensure("measurement max is specific to when recording is active",
- at_work.getMax(sOuncesPerCup) == S32GrandeCup(1)
- && all_day.getMax(sOuncesPerCup) == S32VentiCup(1)
- && after_3pm.getMax(sOuncesPerCup) == S32VentiCup(1));
- ensure("sample min is specific to when recording is active",
- at_work.getMin(sCaffeineLevelStat) == sCaffeinePerOz * ((S32Ounces)S32TallCup(1)).value()
- && all_day.getMin(sCaffeineLevelStat) == F32Milligrams(0.f)
- && after_3pm.getMin(sCaffeineLevelStat) == sCaffeinePerOz * ((S32Ounces)S32TallCup(1) + (S32Ounces)S32GrandeCup(2)).value());
- ensure("sample max is specific to when recording is active",
- at_work.getMax(sCaffeineLevelStat) == sCaffeinePerOz * ((S32Ounces)S32TallCup(1) + (S32Ounces)S32GrandeCup(3)).value()
- && all_day.getMax(sCaffeineLevelStat) == sCaffeinePerOz * ((S32Ounces)S32TallCup(1) + (S32Ounces)S32GrandeCup(3) + (S32Ounces)S32VentiCup(1)).value()
- && after_3pm.getMax(sCaffeineLevelStat) == sCaffeinePerOz * ((S32Ounces)S32TallCup(1) + (S32Ounces)S32GrandeCup(3) + (S32Ounces)S32VentiCup(1)).value());
- }
+ using namespace LLTrace;
+ struct trace
+ {
+ ThreadRecorder mRecorder;
+ };
+
+ typedef test_group<trace> trace_t;
+ typedef trace_t::object trace_object_t;
+ tut::trace_t tut_singleton("LLTrace");
+
+ static CountStatHandle<S32> sCupsOfCoffeeConsumed("coffeeconsumed", "Delicious cup of dark roast.");
+ static SampleStatHandle<F32Milligrams> sCaffeineLevelStat("caffeinelevel", "Coffee buzz quotient");
+ static EventStatHandle<S32Ounces> sOuncesPerCup("cupsize", "Large, huge, or ginormous");
+
+ static F32 sCaffeineLevel(0.f);
+ const F32Milligrams sCaffeinePerOz(18.f);
+
+ void drink_coffee(S32 num_cups, S32Ounces cup_size)
+ {
+ add(sCupsOfCoffeeConsumed, num_cups);
+ for (S32 i = 0; i < num_cups; i++)
+ {
+ record(sOuncesPerCup, cup_size);
+ }
+
+ sCaffeineLevel += F32Ounces(num_cups * cup_size).value() * sCaffeinePerOz.value();
+ sample(sCaffeineLevelStat, sCaffeineLevel);
+ }
+
+ // basic data collection
+ template<> template<>
+ void trace_object_t::test<1>()
+ {
+ sample(sCaffeineLevelStat, sCaffeineLevel);
+
+ Recording all_day;
+ Recording at_work;
+ Recording after_3pm;
+
+ all_day.start();
+ {
+ // warm up with one grande cup
+ drink_coffee(1, S32TallCup(1));
+
+ // go to work
+ at_work.start();
+ {
+ // drink 3 tall cups, 1 after 3 pm
+ drink_coffee(2, S32GrandeCup(1));
+ after_3pm.start();
+ drink_coffee(1, S32GrandeCup(1));
+ }
+ at_work.stop();
+ drink_coffee(1, S32VentiCup(1));
+ }
+ // don't need to stop recordings to get accurate values out of them
+ //after_3pm.stop();
+ //all_day.stop();
+
+ ensure("count stats are counted when recording is active",
+ at_work.getSum(sCupsOfCoffeeConsumed) == 3
+ && all_day.getSum(sCupsOfCoffeeConsumed) == 5
+ && after_3pm.getSum(sCupsOfCoffeeConsumed) == 2);
+ ensure("measurement sums are counted when recording is active",
+ at_work.getSum(sOuncesPerCup) == S32Ounces(48)
+ && all_day.getSum(sOuncesPerCup) == S32Ounces(80)
+ && after_3pm.getSum(sOuncesPerCup) == S32Ounces(36));
+ ensure("measurement min is specific to when recording is active",
+ at_work.getMin(sOuncesPerCup) == S32GrandeCup(1)
+ && all_day.getMin(sOuncesPerCup) == S32TallCup(1)
+ && after_3pm.getMin(sOuncesPerCup) == S32GrandeCup(1));
+ ensure("measurement max is specific to when recording is active",
+ at_work.getMax(sOuncesPerCup) == S32GrandeCup(1)
+ && all_day.getMax(sOuncesPerCup) == S32VentiCup(1)
+ && after_3pm.getMax(sOuncesPerCup) == S32VentiCup(1));
+ ensure("sample min is specific to when recording is active",
+ at_work.getMin(sCaffeineLevelStat) == sCaffeinePerOz * ((S32Ounces)S32TallCup(1)).value()
+ && all_day.getMin(sCaffeineLevelStat) == F32Milligrams(0.f)
+ && after_3pm.getMin(sCaffeineLevelStat) == sCaffeinePerOz * ((S32Ounces)S32TallCup(1) + (S32Ounces)S32GrandeCup(2)).value());
+ ensure("sample max is specific to when recording is active",
+ at_work.getMax(sCaffeineLevelStat) == sCaffeinePerOz * ((S32Ounces)S32TallCup(1) + (S32Ounces)S32GrandeCup(3)).value()
+ && all_day.getMax(sCaffeineLevelStat) == sCaffeinePerOz * ((S32Ounces)S32TallCup(1) + (S32Ounces)S32GrandeCup(3) + (S32Ounces)S32VentiCup(1)).value()
+ && after_3pm.getMax(sCaffeineLevelStat) == sCaffeinePerOz * ((S32Ounces)S32TallCup(1) + (S32Ounces)S32GrandeCup(3) + (S32Ounces)S32VentiCup(1)).value());
+ }
}