| /******************************************************************************* |
| * Copyright (c) 2014 Bosch Software Innovations GmbH and others. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * and Eclipse Distribution License v1.0 which accompany this distribution. |
| * |
| * The Eclipse Public License is available at |
| * http://www.eclipse.org/legal/epl-v10.html |
| * The Eclipse Distribution License is available at |
| * http://www.eclipse.org/org/documents/edl-v10.php. |
| * |
| * Contributors: |
| * Bosch Software Innovations GmbH - Please refer to git log |
| * |
| *******************************************************************************/ |
| package org.eclipse.vorto.codegen.examples.webdevice.tests.templates |
| |
| import org.eclipse.vorto.codegen.examples.webdevice.tasks.templates.ServiceClassTemplate |
| import org.eclipse.vorto.codegen.examples.webdevice.tests.tasks.TestFunctionblockModelFactory |
| import org.junit.Test |
| |
| import static org.junit.Assert.assertEquals |
| |
| class ServiceClassTemplateTest { |
| |
| @Test |
| def testGeneration() { |
| var model = TestFunctionblockModelFactory.populateFBmodelWithProperties(); |
| |
| var result = new ServiceClassTemplate().getContent(model); |
| assertEquals(fetchExpected, result); |
| } |
| |
| private def String fetchExpected() { |
| '''package com.bosch.iot.fridge.service; |
| |
| import java.util.logging.Logger; |
| |
| import javax.ws.rs.GET; |
| import javax.ws.rs.PUT; |
| import javax.ws.rs.Path; |
| import javax.ws.rs.Produces; |
| import javax.ws.rs.core.MediaType; |
| |
| import com.bosch.iot.fridge.model.Fridge; |
| |
| @Path("/Fridge") |
| public class FridgeService { |
| private static Logger logger = Logger.getLogger("Fridge"); |
| private static Fridge fridgeinstance = new Fridge(); |
| |
| @GET |
| @Path("/instance") |
| @Produces(MediaType.APPLICATION_JSON) |
| public Fridge getInstance(){ |
| return fridgeinstance ; |
| } |
| |
| /** |
| * Turn device on |
| */ |
| @PUT |
| @Path("/on") |
| public void on() { |
| //Please handle your operation here |
| logger.info("on invoked"); |
| } |
| |
| /** |
| * Turn device off |
| */ |
| @PUT |
| @Path("/Off") |
| public void Off() { |
| //Please handle your operation here |
| logger.info("Off invoked"); |
| } |
| |
| /** |
| * Toggle device |
| */ |
| @PUT |
| @Path("/Toggle") |
| public void Toggle() { |
| //Please handle your operation here |
| logger.info("Toggle invoked"); |
| } |
| |
| }''' |
| } |
| } |