145208ae00457d92ae4bb5889a35597a155074457Derek Murray# Copyright 2017 The TensorFlow Authors. All Rights Reserved. 245208ae00457d92ae4bb5889a35597a155074457Derek Murray# 345208ae00457d92ae4bb5889a35597a155074457Derek Murray# Licensed under the Apache License, Version 2.0 (the "License"); 445208ae00457d92ae4bb5889a35597a155074457Derek Murray# you may not use this file except in compliance with the License. 545208ae00457d92ae4bb5889a35597a155074457Derek Murray# You may obtain a copy of the License at 645208ae00457d92ae4bb5889a35597a155074457Derek Murray# 745208ae00457d92ae4bb5889a35597a155074457Derek Murray# http://www.apache.org/licenses/LICENSE-2.0 845208ae00457d92ae4bb5889a35597a155074457Derek Murray# 945208ae00457d92ae4bb5889a35597a155074457Derek Murray# Unless required by applicable law or agreed to in writing, software 1045208ae00457d92ae4bb5889a35597a155074457Derek Murray# distributed under the License is distributed on an "AS IS" BASIS, 1145208ae00457d92ae4bb5889a35597a155074457Derek Murray# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1245208ae00457d92ae4bb5889a35597a155074457Derek Murray# See the License for the specific language governing permissions and 1345208ae00457d92ae4bb5889a35597a155074457Derek Murray# limitations under the License. 1445208ae00457d92ae4bb5889a35597a155074457Derek Murray# ============================================================================== 1545208ae00457d92ae4bb5889a35597a155074457Derek Murray"""Tests for tf.GrpcServer.""" 1645208ae00457d92ae4bb5889a35597a155074457Derek Murray 1745208ae00457d92ae4bb5889a35597a155074457Derek Murrayfrom __future__ import absolute_import 1845208ae00457d92ae4bb5889a35597a155074457Derek Murrayfrom __future__ import division 1945208ae00457d92ae4bb5889a35597a155074457Derek Murrayfrom __future__ import print_function 2045208ae00457d92ae4bb5889a35597a155074457Derek Murray 2145208ae00457d92ae4bb5889a35597a155074457Derek Murrayfrom tensorflow.python.client import session 2245208ae00457d92ae4bb5889a35597a155074457Derek Murrayfrom tensorflow.python.framework import constant_op 2345208ae00457d92ae4bb5889a35597a155074457Derek Murrayfrom tensorflow.python.framework import ops 2445208ae00457d92ae4bb5889a35597a155074457Derek Murrayfrom tensorflow.python.platform import test 2545208ae00457d92ae4bb5889a35597a155074457Derek Murrayfrom tensorflow.python.training import server_lib 2645208ae00457d92ae4bb5889a35597a155074457Derek Murray 2745208ae00457d92ae4bb5889a35597a155074457Derek Murray 2845208ae00457d92ae4bb5889a35597a155074457Derek Murrayclass SparseJobTest(test.TestCase): 2945208ae00457d92ae4bb5889a35597a155074457Derek Murray 3045208ae00457d92ae4bb5889a35597a155074457Derek Murray # TODO(b/34465411): Starting multiple servers with different configurations 3145208ae00457d92ae4bb5889a35597a155074457Derek Murray # in the same test is flaky. Move this test case back into 3245208ae00457d92ae4bb5889a35597a155074457Derek Murray # "server_lib_test.py" when this is no longer the case. 3345208ae00457d92ae4bb5889a35597a155074457Derek Murray def testSparseJob(self): 3445208ae00457d92ae4bb5889a35597a155074457Derek Murray server = server_lib.Server({"local": {37: "localhost:0"}}) 3545208ae00457d92ae4bb5889a35597a155074457Derek Murray with ops.device("/job:local/task:37"): 3645208ae00457d92ae4bb5889a35597a155074457Derek Murray a = constant_op.constant(1.0) 3745208ae00457d92ae4bb5889a35597a155074457Derek Murray 3845208ae00457d92ae4bb5889a35597a155074457Derek Murray with session.Session(server.target) as sess: 3945208ae00457d92ae4bb5889a35597a155074457Derek Murray self.assertEqual(1.0, sess.run(a)) 4045208ae00457d92ae4bb5889a35597a155074457Derek Murray 4145208ae00457d92ae4bb5889a35597a155074457Derek Murray 4245208ae00457d92ae4bb5889a35597a155074457Derek Murrayif __name__ == "__main__": 4345208ae00457d92ae4bb5889a35597a155074457Derek Murray test.main() 44