You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

StringsApiTest.cs 1.6 kB

5 years ago
5 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. using Microsoft.VisualStudio.TestTools.UnitTesting;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Text;
  5. using static Tensorflow.Binding;
  6. namespace Tensorflow.UnitTest.TF_API
  7. {
  8. [TestClass]
  9. public class StringsApiTest
  10. {
  11. [TestMethod]
  12. public void StringFromBytes()
  13. {
  14. var jpg = tf.constant(new byte[] { 0x41, 0xff, 0xd8, 0xff }, tf.@string);
  15. var strings = jpg.ToString();
  16. Assert.AreEqual(strings, @"tf.Tensor: shape=(), dtype=string, numpy=A\xff\xd8\xff");
  17. }
  18. [TestMethod]
  19. public void StringEqual()
  20. {
  21. var str1 = tf.constant("Hello1");
  22. var str2 = tf.constant("Hello2");
  23. var result = tf.equal(str1, str2);
  24. Assert.IsFalse(result.ToScalar<bool>());
  25. var str3 = tf.constant("Hello1");
  26. result = tf.equal(str1, str3);
  27. Assert.IsTrue(result.ToScalar<bool>());
  28. var str4 = tf.strings.substr(str1, 0, 5);
  29. var str5 = tf.strings.substr(str2, 0, 5);
  30. result = tf.equal(str4, str5);
  31. Assert.IsTrue(result.ToScalar<bool>());
  32. }
  33. [TestMethod]
  34. public void ImageType()
  35. {
  36. var imgPath = TestHelper.GetFullPathFromDataDir("shasta-daisy.jpg");
  37. var contents = tf.io.read_file(imgPath);
  38. var substr = tf.strings.substr(contents, 0, 3);
  39. var jpg = Encoding.UTF8.GetString(new byte[] { 0xff, 0xd8, 0xff });
  40. var jpg_tensor = tf.constant(jpg);
  41. var result = math_ops.equal(substr, jpg_tensor);
  42. }
  43. }
  44. }