public void RenderTemplateDirective_ListTemplate1()
        {
            const string TestDataFile       = @"TestData\ResponseWithRenderTemplateDirectiveAndListTemplate1.json";
            var          expectedJSONObject = JObject.Parse(File.ReadAllText(TestDataFile));

            var renderTemplateDirective = new RenderTemplateDirective();
            var listTemplate            = new ListTemplate1
            {
                Title = "List Template 1 Title",
                Token = "listtemplate1token"
            };

            AddListItemPlaceHolder(listTemplate, 1);
            AddListItemPlaceHolder(listTemplate, 2);
            AddListItemPlaceHolder(listTemplate, 3);
            renderTemplateDirective.Template = listTemplate;

            var testResponse = new SpeechletResponse();

            testResponse.Directives.Add(renderTemplateDirective);

            var responseEnvelope = new SpeechletResponseEnvelope();

            responseEnvelope.Response = testResponse;
            var jsonResponse = responseEnvelope.ToJson();

            Assert.Equal(JsonConvert.SerializeObject(expectedJSONObject), jsonResponse);
        }
 private static void AddListItemPlaceHolder(ListTemplate1 listTemplate, int indexId)
 {
     listTemplate.ListItems.Add(new ListItem
     {
         Token       = $"item{indexId}",
         TextContent = new TextContent {
             PrimaryText = new TextContentItem {
                 Type = "PlainText", Text = $"Item {indexId}"
             }
         },
         Image = new ImageContent {
             Sources = new List <ImageItem> {
                 new ImageItem {
                     Url = $"placeholder{indexId}"
                 }
             }
         }
     });
 }
		private async Task Update ()
		{
			Boolean isGpsEnabled = currentPlataform.IsGpsEnabled ();

			var p = hud.Loading ("Download");
			ListTemplate1 l = new ListTemplate1 (ListTemplate1.TipoFormEnum.Dettaglio);
			await DownloadFiles ();
			await testTables ();
			await ApplyFilters ();

			//if (isGpsEnabled)
			//Global.currentPosition = await l.GetCurrentGPSPosition (true, false);
			Global.calculateDistance ();
			var ret = await createMenu (b1, MenuKindEnum.Level1Macro);

			//hud.HideLoading ();
			p.Hide ();


			if (Device.OS == TargetPlatform.Android) {
				if (isGpsEnabled == false) {
					string msg = "Imago richiede che il gps sia attivo; vuoi cambiare le impostazioni ora?";
					var dresult = await this.DisplayAlert ("Imago", msg, "Si", "No");
					if (dresult) {
						currentPlataform.EnableGpsByCode ();
					}
				}


				//string msg = "Imago richiede gps attivo, vai in impostazioni ed attiva la modalità alta precisione o solo dispositivo";
				//await DisplayAlert ("Imago", msg, "OK");
			}
				


		}
        public void Create_ListTemplate1()
        {
            var actual = new ListTemplate1
            {
                Token = "list_template_one",
                Title = "Pizzas",
                Items = new List <ListItem>
                {
                    new ListItem
                    {
                        Token   = "item_1",
                        Content = new TemplateContent
                        {
                            Primary = new TemplateText
                            {
                                Text = "<font size='7'>Supreme</font> <br/> Large Pan Pizza $17.00",
                                Type = TextType.Rich
                            },
                            Secondary = new TemplateText
                            {
                                Text = "Secondary Text",
                                Type = TextType.Plain
                            },
                            Tertiary = new TemplateText
                            {
                                Text = string.Empty,
                                Type = TextType.Plain
                            }
                        },
                        Image = new TemplateImage
                        {
                            Sources = new List <ImageSource> {
                                new ImageSource
                                {
                                    Url = "http://www.example.com/images/thumb/SupremePizza1.jpg"
                                }
                            },
                            ContentDescription = "Supreme Large Pan Pizza"
                        }
                    },
                    new ListItem
                    {
                        Token   = "item_2",
                        Content = new TemplateContent
                        {
                            Primary = new TemplateText
                            {
                                Text = "<font size='7'>Meat Eater</font> <br/> Large Pan Pizza $19.00",
                                Type = TextType.Rich
                            }
                        },
                        Image = new TemplateImage
                        {
                            Sources = new List <ImageSource> {
                                new ImageSource
                                {
                                    Url = "http://www.example.com/images/thumb/MeatEaterPizza1.jpg"
                                }
                            },
                            ContentDescription = "Meat Eater Large Pan Pizza"
                        }
                    },
                }
            };

            Assert.True(CompareJson(actual, "TemplateListTemplate1.json"));
        }