public void CreatedWithAPath_IsDirectoryIsAccurate(string path, bool isDirectory) { var si = new SonosIdentifier { Path = path }; Assert.That(si.IsDirectory, Is.EqualTo(isDirectory)); }
public void FromId_IdIsForAPath_ReturnsAContainer() { var id = new SonosIdentifier { Path = "\\abc\\def" }; var resource = PhysicalResource.FromId(id); Assert.That(resource, Is.TypeOf <Container>()); Assert.That(resource.DisplayName, Is.EqualTo("def")); }
private ResourceCollection GetResources(SonosIdentifier identifier) { if (!identifier.IsDirectory) { return(new ResourceCollection(identifier)); } var directoryEntries = new ResourceCollection(identifier); directoryEntries.AddRange(_fs.Directory.GetDirectories(identifier.Path).Select(ToPhysicalResource <Container>)); directoryEntries.AddRange(_fs.Directory.GetFiles(identifier.Path, "*.mp3", SearchOption.TopDirectoryOnly).Select(ToPhysicalResource <MusicFile>)); return(directoryEntries); }
public List <IRepresentAResource> GetResources(SonosIdentifier identifier) { if (!identifier.IsDirectory) { return(new List <IRepresentAResource>()); } var directoryEntries = new List <IRepresentAResource>(); var path = _config.MusicShare + identifier.Path; directoryEntries.AddRange(Directory.GetDirectories(path).Select(ToContainer)); directoryEntries.AddRange(Directory.GetFiles(path, "*.mp3", SearchOption.TopDirectoryOnly).Select(ToMusicFile)); return(directoryEntries); }
public MusicFile(SonosIdentifier path) : base(path) { }
public string BuildUriForId(SonosIdentifier identifier) { return("x-file-cifs:" + (_config.MusicShare + identifier.Path).Replace("\\", "/")); }
public Container(SonosIdentifier path) : base(path) { }