|
1 | 1 | package com.cloudinary.analytics; |
2 | 2 |
|
| 3 | +import com.cloudinary.AuthToken; |
3 | 4 | import com.cloudinary.Cloudinary; |
4 | 5 | import com.cloudinary.utils.Analytics; |
5 | 6 | import org.junit.*; |
6 | 7 | import org.junit.rules.TestName; |
7 | 8 |
|
| 9 | +import static org.junit.Assert.assertEquals; |
| 10 | + |
8 | 11 | public class AnalyticsTest { |
9 | 12 |
|
| 13 | + public static final String KEY = "00112233FF99"; |
| 14 | + |
10 | 15 | private Cloudinary cloudinary; |
11 | 16 |
|
12 | 17 | @Rule |
13 | 18 | public TestName currentTest = new TestName(); |
14 | 19 |
|
15 | 20 | @Before |
16 | 21 | public void setUp() { |
| 22 | + System.out.println("Running " + this.getClass().getName() + "." + currentTest.getMethodName()); |
17 | 23 | this.cloudinary = new Cloudinary("cloudinary://a:b@test123?load_strategies=false"); |
18 | 24 | } |
19 | 25 |
|
| 26 | + @Test |
| 27 | + public void testEncodeVersion() { |
| 28 | + Analytics analytics = new Analytics(); |
| 29 | + analytics.setSDKSemver("1.24.0"); |
| 30 | + String result = analytics.toQueryParam(); |
| 31 | + Assert.assertEquals(result, "_a=AGAlhAN0"); |
| 32 | + |
| 33 | + analytics.setSDKSemver("12.0"); |
| 34 | + result = analytics.toQueryParam(); |
| 35 | + Assert.assertEquals(result, "_a=AGAMAN0"); |
| 36 | + |
| 37 | + analytics.setSDKSemver("43.21.26"); |
| 38 | + result = analytics.toQueryParam(); |
| 39 | + Assert.assertEquals(result, "_a=AG///AN0"); |
| 40 | + |
| 41 | + analytics.setSDKSemver("0.0.0"); |
| 42 | + result = analytics.toQueryParam(); |
| 43 | + Assert.assertEquals(result, "_a=AGAAAAN0"); |
| 44 | + |
| 45 | + analytics.setSDKSemver("43.21.27"); |
| 46 | + result = analytics.toQueryParam(); |
| 47 | + Assert.assertEquals(result, "_a=E"); |
| 48 | + |
| 49 | + } |
| 50 | + |
20 | 51 | @Test |
21 | 52 | public void testToQueryParam() { |
22 | 53 | Analytics analytics = new Analytics("F", "2.0.0", "1.8.0"); |
@@ -76,6 +107,21 @@ public void testErrorAnalytics() { |
76 | 107 | Assert.assertEquals(result, "_a=E"); |
77 | 108 | } |
78 | 109 |
|
| 110 | + @Test |
| 111 | + public void testUrlNoAnalyticsWithQueryParams() { |
| 112 | + final AuthToken authToken = new AuthToken(KEY).duration(300); |
| 113 | + authToken.startTime(11111111); // start time is set for test purposes |
| 114 | + cloudinary.config.authToken = authToken; |
| 115 | + cloudinary.config.cloudName = "test123"; |
| 116 | + |
| 117 | + cloudinary.config.analytics = true; |
| 118 | + cloudinary.setAnalytics(new Analytics("F", "2.0.0", System.getProperty("java.version"))); |
| 119 | + cloudinary.config.privateCdn = true; |
| 120 | + String url = cloudinary.url().signed(true).type("authenticated").generate("test"); |
| 121 | + assertEquals(url,"http://test123-res.cloudinary.com/image/authenticated/test?__cld_token__=st=11111111~exp=11111411~hmac=735a49389a72ac0b90d1a84ac5d43facd1a9047f153b39e914747ef6ed195e53"); |
| 122 | + cloudinary.config.privateCdn = false; |
| 123 | + } |
| 124 | + |
79 | 125 | @After |
80 | 126 | public void tearDown() { |
81 | 127 | cloudinary.config.analytics = false; |
|
0 commit comments