Assamese translation updated
[profile/ivi/rygel.git] / tests / rygel-http-get-test.vala
index 3c93ceb..3893e08 100644 (file)
@@ -43,16 +43,20 @@ public class Rygel.ClientHacks {
         }
     }
 
-    public void apply (MediaItem? item) {
+    public void apply (MediaObject? item) {
+    }
+
+    public bool force_seek () {
+        return false;
     }
 }
 
 public class Rygel.TestRequestFactory {
     public Soup.Message msg;
-    public Soup.KnownStatusCode expected_code;
+    public Soup.Status expected_code;
 
     public TestRequestFactory (Soup.Message msg,
-                               Soup.KnownStatusCode expected_code) {
+                               Soup.Status expected_code) {
         this.msg = msg;
         this.expected_code = expected_code;
     }
@@ -94,6 +98,11 @@ public class Rygel.HTTPGetTest : GLib.Object {
             return -1;
         }
 
+        /* Avoid some warnings about unused methods: */
+        var item = new VideoItem();
+        assert (!item.is_live_stream());
+        assert (!item.streamable());
+
         return 0;
     }
 
@@ -123,66 +132,66 @@ public class Rygel.HTTPGetTest : GLib.Object {
 
         Soup.Message request = new Soup.Message ("POST", this.server.uri);
         requests.add (new TestRequestFactory (request,
-                      Soup.KnownStatusCode.BAD_REQUEST));
+                      Soup.Status.BAD_REQUEST));
 
         request = new Soup.Message ("HEAD", this.server.uri);
-        requests.add (new TestRequestFactory (request, Soup.KnownStatusCode.OK));
+        requests.add (new TestRequestFactory (request, Soup.Status.OK));
 
         request = new Soup.Message ("GET", this.server.uri);
-        requests.add (new TestRequestFactory (request, Soup.KnownStatusCode.OK));
+        requests.add (new TestRequestFactory (request, Soup.Status.OK));
 
         string uri = this.server.create_uri ("VideoItem");
         uri = uri + "/tr/MP3";
         request = new Soup.Message ("HEAD", uri);
-        requests.add (new TestRequestFactory (request, Soup.KnownStatusCode.OK));
+        requests.add (new TestRequestFactory (request, Soup.Status.OK));
 
         request = new Soup.Message ("GET", this.server.uri);
         request.request_headers.append ("transferMode.dlna.org", "Streaming");
-        requests.add (new TestRequestFactory (request, Soup.KnownStatusCode.OK));
+        requests.add (new TestRequestFactory (request, Soup.Status.OK));
 
         request = new Soup.Message ("GET", this.server.uri);
         request.request_headers.append ("transferMode.dlna.org", "Interactive");
         requests.add (new TestRequestFactory (request,
-                      Soup.KnownStatusCode.NOT_ACCEPTABLE));
+                      Soup.Status.NOT_ACCEPTABLE));
 
         request = new Soup.Message ("GET", this.server.uri);
         request.request_headers.append ("Range", "bytes=1-2");
         requests.add (new TestRequestFactory (request,
-                      Soup.KnownStatusCode.OK));
+                      Soup.Status.OK));
 
         uri = this.server.create_uri ("AudioItem");
         uri = uri + "/th/0";
 
         request = new Soup.Message ("GET", uri);
         requests.add (new TestRequestFactory (request,
-                      Soup.KnownStatusCode.NOT_FOUND));
+                      Soup.Status.NOT_FOUND));
 
         request = new Soup.Message ("GET", this.server.uri);
         request.request_headers.append ("TimeSeekRange.dlna.org", "0");
         requests.add (new TestRequestFactory (request,
-                      Soup.KnownStatusCode.NOT_ACCEPTABLE));
+                      Soup.Status.NOT_ACCEPTABLE));
 
         uri = this.server.create_uri ("AudioItem");
         request = new Soup.Message ("GET", uri);
         request.request_headers.append ("TimeSeekRange.dlna.org", "0");
         requests.add (new TestRequestFactory (request,
-                      Soup.KnownStatusCode.BAD_REQUEST));
+                      Soup.Status.BAD_REQUEST));
 
         uri = this.server.create_uri ("AudioItem");
         request = new Soup.Message ("GET", uri);
         request.request_headers.append ("TimeSeekRange.dlna.org", "npt=1-2049");
         requests.add (new TestRequestFactory (request,
-                      Soup.KnownStatusCode.REQUESTED_RANGE_NOT_SATISFIABLE));
+                      Soup.Status.REQUESTED_RANGE_NOT_SATISFIABLE));
 
         request = new Soup.Message ("GET", this.server.uri);
         request.request_headers.append ("clienthacks.test.rygel", "f");
         requests.add (new TestRequestFactory (request,
-                      Soup.KnownStatusCode.OK));
+                      Soup.Status.OK));
 
         request = new Soup.Message ("GET", this.server.uri);
         request.request_headers.append ("clienthacks.test.rygel", "t");
         requests.add (new TestRequestFactory (request,
-                      Soup.KnownStatusCode.OK));
+                      Soup.Status.OK));
     }
 
     private HTTPGet create_request (Soup.Message msg) throws Error {
@@ -217,7 +226,7 @@ public class Rygel.HTTPGetTest : GLib.Object {
 
             yield request.run ();
 
-            assert ((request as HTTPGet).item != null);
+            assert ((request as HTTPGet).object != null);
 
             debug ("status.code: %d", (int) msg.status_code);
             assert (msg.status_code == this.current_request.expected_code);
@@ -373,10 +382,14 @@ internal class Rygel.HTTPIdentityHandler : Rygel.HTTPGetHandler {
     public HTTPIdentityHandler (Cancellable cancellable) {}
 }
 
+internal class Rygel.HTTPPlaylistHandler : Rygel.HTTPGetHandler {
+    public HTTPPlaylistHandler (string? arg, Cancellable cancellable) {}
+
+    public static bool is_supported (string? arg) { return true; }
+}
+
 public abstract class Rygel.MediaItem : Rygel.MediaObject {
     public long size = 1024;
-    public ArrayList<Subtitle> subtitles = new ArrayList<Subtitle> ();
-    public ArrayList<Thumbnail> thumbnails = new ArrayList<Thumbnail> ();
     public ArrayList<string> uris = new ArrayList<string> ();
 
     public bool place_holder = false;
@@ -438,7 +451,7 @@ private class Rygel.VideoItem : AudioItem, VisualItem {
         protected set {}
     }
 
-    public ArrayList<Subtitle> subtitles;
+    public ArrayList<Subtitle> subtitles = new ArrayList<Subtitle> ();
 }
 
 private class Rygel.MusicItem : AudioItem {
@@ -478,7 +491,7 @@ internal class Rygel.HTTPResponse : Rygel.StateMachine, GLib.Object {
 
         yield;
 
-        this.msg.set_status (Soup.KnownStatusCode.OK);
+        this.msg.set_status (Soup.Status.OK);
         this.server.unpause_message (msg);
 
         this.completed ();