private MethodPacket BuildUpdateScenesPacket(IEnumerable <MixPlayConnectedSceneModel> scenes) { Validator.ValidateList(scenes, "scenes"); MixPlayConnectedSceneCollectionModel collection = new MixPlayConnectedSceneCollectionModel(); foreach (MixPlayConnectedSceneModel scene in scenes) { // Need to strip out all of the non-updateable fields in order for the API to not return a 403 error collection.scenes.Add(JSONSerializerHelper.Clone <MixPlayConnectedSceneModel>(scene)); } return(new MethodParamsPacket("updateScenes", JObject.FromObject(collection))); }
private async Task <MixPlayConnectedSceneModel> CreateScene(MixPlayClient client) { this.ClearPackets(); MixPlayConnectedSceneCollectionModel scenes = await client.CreateScenesWithResponse(new List <MixPlayConnectedSceneModel>() { new MixPlayConnectedSceneModel() { sceneID = SceneID } }); Assert.IsNotNull(scenes); Assert.IsNotNull(scenes.scenes); Assert.IsTrue(scenes.scenes.Count >= 1); MixPlayConnectedSceneModel testScene = scenes.scenes.FirstOrDefault(s => s.sceneID.Equals(SceneID)); Assert.IsNotNull(testScene); return(await this.GetScene(client)); }
public void CreateGetUpdateDeleteScene() { this.MixPlayWrapper(async(MixerConnection connection, MixPlayClient client) => { MixPlayConnectedSceneModel testScene = await this.CreateScene(client); this.ClearPackets(); MixPlayConnectedSceneCollectionModel scenes = await client.UpdateScenesWithResponse(new List <MixPlayConnectedSceneModel>() { testScene }); Assert.IsNotNull(scenes); Assert.IsNotNull(scenes.scenes); Assert.IsTrue(scenes.scenes.Count >= 1); testScene = scenes.scenes.FirstOrDefault(s => s.sceneID.Equals(SceneID)); await this.DeleteScene(client, testScene); }); }