private IEnumerator GetMetadata() { if (_meta != null) { yield break; } var req = UnityWebRequest.Get(MetadataUrl); yield return(req.SendWebRequest()); if (!string.IsNullOrEmpty(req.error)) { Fail(); yield break; } var json = req.downloadHandler.text; Debug.Log($"Received metadata: {json}"); _meta = JsonUtility.FromJson <PromoMetadata>(json); if (Developers.Enabled && SkipCaching) { _meta.version = StencilRandom.Range(0, int.MaxValue); } }
public void TestTimeRemaining(int impressionTimeSpan, int offerDuratonTimeSpan, int remainingTime) { var metadata = new PromoMetadata { impressionDate = DateTime.Now.Add(-TimeSpan.FromSeconds(impressionTimeSpan)), offerDuration = TimeSpan.FromSeconds(offerDuratonTimeSpan) }; Assert.That(metadata.timeRemaining, Is.EqualTo(TimeSpan.FromSeconds(remainingTime)).Within(1).Seconds); }
public void TestTimeRemaining() { foreach (var tt in timeRemainingTestData) { var metadata = new PromoMetadata { impressionDate = tt.firstImpressionDate, offerDuration = tt.offerDuration }; Assert.That(metadata.timeRemaining, Is.EqualTo(tt.timeRemaining).Within(1).Seconds); } }
public void TestIsExpired() { foreach (var tt in isExpiredTestData) { var metadata = new PromoMetadata { impressionDate = tt.firstImpressionDate, offerDuration = tt.offerDuration }; Assert.That(metadata.isExpired, Is.EqualTo(tt.isExpired)); } }
public void TestIsPremium(string productId, bool isPremium) { var metadata = new PromoMetadata { premiumProduct = { productId = productId } }; Assert.That(metadata.isPremium, Is.EqualTo(isPremium)); }