fake_spec.cpp 1.0 KB

123456789101112131415161718192021222324252627282930313233343536
  1. #include "fake_spec.h"
  2. namespace NYql {
  3. namespace NPureCalc {
  4. NYT::TNode MakeFakeSchema(bool pg) {
  5. auto itemType = NYT::TNode::CreateList();
  6. itemType.Add(pg ? "PgType" : "DataType");
  7. itemType.Add(pg ? "int4" : "Int32");
  8. auto itemNode = NYT::TNode::CreateList();
  9. itemNode.Add("Name");
  10. itemNode.Add(std::move(itemType));
  11. auto items = NYT::TNode::CreateList();
  12. items.Add(std::move(itemNode));
  13. auto schema = NYT::TNode::CreateList();
  14. schema.Add("StructType");
  15. schema.Add(std::move(items));
  16. return schema;
  17. }
  18. TFakeInputSpec FakeIS(ui32 inputsNumber, bool pg) {
  19. auto spec = TFakeInputSpec();
  20. spec.Schemas = TVector<NYT::TNode>(inputsNumber, MakeFakeSchema(pg));
  21. return spec;
  22. }
  23. TFakeOutputSpec FakeOS(bool pg) {
  24. auto spec = TFakeOutputSpec();
  25. spec.Schema = MakeFakeSchema(pg);
  26. return spec;
  27. }
  28. }
  29. }