diff --git a/python/bigdl/dllib/nn/layer.py b/python/bigdl/dllib/nn/layer.py
index <HASH>..<HASH> 100644
--- a/python/bigdl/dllib/nn/layer.py
+++ b/python/bigdl/dllib/nn/layer.py
@@ -728,10 +728,14 @@ class Model(Container):
         if jvalue:
             self.value = jvalue
             self.bigdl_type = bigdl_type
-        elif model_type == "bigdl":
+        elif model_type == "bigdl" and (isinstance(inputs, list) or isinstance(inputs, Node)):
             super(Model, self).__init__(None, bigdl_type,
                                         to_list(inputs),
                                         to_list(outputs))
+        elif model_type == "bigdl" and isinstance(inputs, Layer):
+            self.value = callBigDlFunc(
+                bigdl_type, "createModelPreprocessor", inputs, outputs)
+            self.bigdl_type = bigdl_type
         else:
             from bigdl.util.tf_utils import convert
             model = convert(to_list(inputs), to_list(outputs), byte_order, bigdl_type)
Add document for wrap preprocessor and model in one graph and add its python API (#<I>)

* add document for wrap preprocessor and model in one graph and add its python API



* enable junit report for pytest



* fix failed unit test



* fix unit test