1 #pragma warning disable 0612, 0618 4 using System.Collections.Generic;
9 [TestFixture, Category(
"Standard Event SDK")]
10 public partial class AnalyticsEventTests
12 readonly Dictionary<string, object> m_CustomData =
new Dictionary<string, object>();
13 AnalyticsResult m_Result = AnalyticsResult.Ok;
16 public void TestCaseSetUp()
18 m_Result = AnalyticsResult.Ok;
21 m_CustomData.Add(
"custom_param",
"test");
25 public void SdkVersion_FormatTest()
27 int major, minor, patch;
28 var versions = AnalyticsEvent.sdkVersion.Split(
'.');
30 Assert.AreEqual(3, versions.Length,
"Number of integer fields in version format");
32 Assert.IsTrue(
int.TryParse(versions[0], out major),
"Major version is an integer");
33 Assert.IsTrue(
int.TryParse(versions[1], out minor),
"Minor version is an integer");
34 Assert.IsTrue(
int.TryParse(versions[2], out patch),
"Patch version is an integer");
36 Assert.LessOrEqual(0, major,
"Major version");
37 Assert.LessOrEqual(0, minor,
"Minor version");
38 Assert.LessOrEqual(0, patch,
"Patch version");
42 public void Custom_EventNameTest(
43 [Values(
"custom_event",
"",
null)]
string eventName
46 if (
string.IsNullOrEmpty(eventName))
48 Assert.Throws<ArgumentException>(() => m_Result = AnalyticsEvent.Custom(eventName));
52 Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.Custom(eventName));
53 EvaluateAnalyticsResult(m_Result);
58 public void Custom_EventDataTest()
60 var eventName =
"custom_event";
62 Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.Custom(eventName, m_CustomData));
64 EvaluateAnalyticsResult(m_Result);
68 public void Custom_RegisterUnregisterUnnamedTest()
70 Action<IDictionary<string, object>> myAction =
71 eventData => eventData.Add(
"my_key",
"my_value");
73 AnalyticsEvent.Register(myAction);
75 var eventName =
"custom_event";
77 Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.Custom(eventName, m_CustomData));
80 EvaluateAnalyticsResult(m_Result);
82 AnalyticsEvent.Unregister(myAction);
88 Assert.AreEqual(1, customData.Count,
"Custom param count");
94 Assert.AreEqual(2, customData.Count,
"Custom param count");
97 public static void EvaluateAnalyticsResult(AnalyticsResult result)
101 case AnalyticsResult.Ok:
103 case AnalyticsResult.InvalidData:
104 Assert.Fail(
"Event data is invalid.");
106 case AnalyticsResult.TooManyItems:
107 Assert.Fail(
"Event data consists of too many parameters.");
110 Debug.LogFormat(
"A result of {0} is passable for the purpose of this test.", result);
static void EvaluateCustomData(IDictionary< string, object > customData)
Normal. Unregistered.
static void EvaluateRegisteredCustomData(IDictionary< string, object > customData)
For Registered case.