aspose_slides_cloud 26.1.0 → 26.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -39,7 +39,7 @@ describe 'UseCases' do
39
39
  AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
40
40
  dto = AsposeSlidesCloud::Shape.new
41
41
  dto.shape_type = 'Callout1'
42
- result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, "password", folder_name)
42
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, nil, "password", folder_name)
43
43
  expect(result).to be_kind_of(AsposeSlidesCloud::Shape)
44
44
  end
45
45
 
@@ -49,7 +49,7 @@ describe 'UseCases' do
49
49
  AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
50
50
  dto = AsposeSlidesCloud::Shape.new
51
51
  begin
52
- result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, "password", folder_name)
52
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, nil, "password", folder_name)
53
53
  fail "Shape with undefined type should not have been created"
54
54
  rescue AsposeSlidesCloud::ApiError => e
55
55
  expect(e.code).to eq(400)
@@ -62,7 +62,7 @@ describe 'UseCases' do
62
62
  AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
63
63
  dto = AsposeSlidesCloud::GraphicalObject.new
64
64
  begin
65
- result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, "password", folder_name)
65
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, nil, "password", folder_name)
66
66
  fail "GraphicalObject should not have been created"
67
67
  rescue AsposeSlidesCloud::ApiError => e
68
68
  expect(e.code).to eq(400)
@@ -77,7 +77,7 @@ describe 'UseCases' do
77
77
  fill = AsposeSlidesCloud::PictureFill.new
78
78
  fill.base64_data = "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXY5g+ffp/AAZTAsWGL27gAAAAAElFTkSuQmCC"
79
79
  dto.picture_fill_format = fill
80
- result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, "password", folder_name)
80
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, nil, "password", folder_name)
81
81
  expect(result).to be_kind_of(AsposeSlidesCloud::PictureFrame)
82
82
  end
83
83
 
@@ -87,7 +87,7 @@ describe 'UseCases' do
87
87
  AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
88
88
  dto = AsposeSlidesCloud::PictureFrame.new
89
89
  begin
90
- result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, "password", folder_name)
90
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, nil, "password", folder_name)
91
91
  fail "PictureFrame with undefinined data should not have been created"
92
92
  rescue AsposeSlidesCloud::ApiError => e
93
93
  expect(e.code).to eq(400)
@@ -100,7 +100,7 @@ describe 'UseCases' do
100
100
  AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
101
101
  dto = AsposeSlidesCloud::AudioFrame.new
102
102
  dto.base64_data = "bXAzc2FtcGxl"
103
- result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, "password", folder_name)
103
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, nil, "password", folder_name)
104
104
  expect(result).to be_kind_of(AsposeSlidesCloud::AudioFrame)
105
105
  end
106
106
 
@@ -110,7 +110,7 @@ describe 'UseCases' do
110
110
  AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
111
111
  dto = AsposeSlidesCloud::AudioFrame.new
112
112
  begin
113
- result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, "password", folder_name)
113
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, nil, "password", folder_name)
114
114
  fail "AudioFrame with undefinined data should not have been created"
115
115
  rescue AsposeSlidesCloud::ApiError => e
116
116
  expect(e.code).to eq(400)
@@ -123,7 +123,7 @@ describe 'UseCases' do
123
123
  AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
124
124
  dto = AsposeSlidesCloud::VideoFrame.new
125
125
  dto.base64_data = "bXAzc2FtcGxl"
126
- result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, "password", folder_name)
126
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, nil, "password", folder_name)
127
127
  expect(result).to be_kind_of(AsposeSlidesCloud::VideoFrame)
128
128
  end
129
129
 
@@ -133,7 +133,7 @@ describe 'UseCases' do
133
133
  AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
134
134
  dto = AsposeSlidesCloud::VideoFrame.new
135
135
  begin
136
- result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, "password", folder_name)
136
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, nil, "password", folder_name)
137
137
  fail "VideoFrame with undefinined data should not have been created"
138
138
  rescue AsposeSlidesCloud::ApiError => e
139
139
  expect(e.code).to eq(400)
@@ -146,7 +146,7 @@ describe 'UseCases' do
146
146
  AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
147
147
  dto = AsposeSlidesCloud::OleObjectFrame.new
148
148
  begin
149
- result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, "password", folder_name)
149
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, nil, "password", folder_name)
150
150
  fail "OleObjectFrame should not have been created"
151
151
  rescue AsposeSlidesCloud::ApiError => e
152
152
  expect(e.code).to eq(400)
@@ -176,7 +176,7 @@ describe 'UseCases' do
176
176
  node2.text = "Second"
177
177
  node2.org_chart_layout = 'Initial'
178
178
  dto.nodes = [ node1, node2 ]
179
- result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, "password", folder_name)
179
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, nil, "password", folder_name)
180
180
  expect(result).to be_kind_of(AsposeSlidesCloud::SmartArt)
181
181
  end
182
182
 
@@ -185,7 +185,7 @@ describe 'UseCases' do
185
185
  file_name = "test.pptx"
186
186
  AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
187
187
  dto = AsposeSlidesCloud::SmartArt.new
188
- result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, "password", folder_name)
188
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, nil, "password", folder_name)
189
189
  expect(result).to be_kind_of(AsposeSlidesCloud::SmartArt)
190
190
  end
191
191
 
@@ -195,7 +195,7 @@ describe 'UseCases' do
195
195
  AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
196
196
  dto = AsposeSlidesCloud::Chart.new
197
197
  begin
198
- result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, "password", folder_name)
198
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, nil, "password", folder_name)
199
199
  fail "Chart with undefinined series should not have been created"
200
200
  rescue AsposeSlidesCloud::ApiError => e
201
201
  expect(e.code).to eq(500)
@@ -268,7 +268,7 @@ describe 'UseCases' do
268
268
  dto.columns = [ column1, column2, column3, column4 ]
269
269
  dto.first_row = true
270
270
  dto.horizontal_banding = true
271
- result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, "password", folder_name)
271
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, nil, "password", folder_name)
272
272
  expect(result).to be_kind_of(AsposeSlidesCloud::Table)
273
273
  end
274
274
 
@@ -278,7 +278,7 @@ describe 'UseCases' do
278
278
  AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
279
279
  dto = AsposeSlidesCloud::Table.new
280
280
  begin
281
- result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, "password", folder_name)
281
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, nil, "password", folder_name)
282
282
  fail "Table with undefinined cell data should not have been created"
283
283
  rescue AsposeSlidesCloud::ApiError => e
284
284
  expect(e.code).to eq(400)
@@ -290,7 +290,7 @@ describe 'UseCases' do
290
290
  file_name = "test.pptx"
291
291
  AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
292
292
  dto = AsposeSlidesCloud::GroupShape.new
293
- result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, "password", folder_name)
293
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, nil, "password", folder_name)
294
294
  expect(result).to be_kind_of(AsposeSlidesCloud::GroupShape)
295
295
  end
296
296
 
@@ -306,7 +306,7 @@ describe 'UseCases' do
306
306
  end_shape = AsposeSlidesCloud::ResourceUri.new
307
307
  end_shape.href = "https://api.aspose.cloud/v3.0/slides/myPresentation.pptx/slides/1/shapes/2"
308
308
  dto.end_shape_connected_to = end_shape
309
- result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, "password", folder_name)
309
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, nil, "password", folder_name)
310
310
  expect(result).to be_kind_of(AsposeSlidesCloud::Connector)
311
311
  end
312
312
 
@@ -315,7 +315,7 @@ describe 'UseCases' do
315
315
  file_name = "test.pptx"
316
316
  AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
317
317
  dto = AsposeSlidesCloud::Connector.new
318
- result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, "password", folder_name)
318
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, nil, "password", folder_name)
319
319
  expect(result).to be_kind_of(AsposeSlidesCloud::Connector)
320
320
  end
321
321
 
@@ -419,7 +419,7 @@ describe 'UseCases' do
419
419
  dto.width = 200
420
420
  dto.height = 100
421
421
  dto.target_slide_index = 2
422
- shape = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, slide_index, dto, nil, nil, password, folder_name)
422
+ shape = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, slide_index, dto, nil, nil, nil, password, folder_name)
423
423
  expect(shape).to be_kind_of(AsposeSlidesCloud::ZoomFrame)
424
424
  expect(shape.target_slide_index).to eq(2)
425
425
  end
@@ -436,7 +436,7 @@ describe 'UseCases' do
436
436
  dto.width = 200
437
437
  dto.height = 100
438
438
  dto.target_section_index = 2
439
- shape = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, slide_index, dto, nil, nil, password, folder_name)
439
+ shape = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, slide_index, dto, nil, nil, nil, password, folder_name)
440
440
  expect(shape).to be_kind_of(AsposeSlidesCloud::SectionZoomFrame)
441
441
  expect(shape.target_section_index).to eq(2)
442
442
  end
@@ -454,7 +454,7 @@ describe 'UseCases' do
454
454
  dto.height = 200
455
455
  dto.link_path = "oleObject.xlsx"
456
456
  dto.object_prog_id = "Excel.Sheet.8"
457
- shape = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, slide_index, dto, nil, nil, password, folder_name)
457
+ shape = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, slide_index, dto, nil, nil, nil, password, folder_name)
458
458
  expect(shape).to be_kind_of(AsposeSlidesCloud::OleObjectFrame)
459
459
  expect(shape.link_path).to eq(dto.link_path)
460
460
  end
@@ -475,7 +475,7 @@ describe 'UseCases' do
475
475
  dto.embedded_file_extension = "xlsx"
476
476
  dto.embedded_file_base64_data = Base64.encode64(source)
477
477
 
478
- shape = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, slide_index, dto, nil, nil, password, folder_name)
478
+ shape = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, slide_index, dto, nil, nil, nil, password, folder_name)
479
479
  expect(shape).to be_kind_of(AsposeSlidesCloud::OleObjectFrame)
480
480
  expect(shape.embedded_file_base64_data).not_to eq(nil)
481
481
  end
@@ -490,7 +490,7 @@ describe 'UseCases' do
490
490
  expect(shapes.shapes_links.length).to eq(0)
491
491
 
492
492
  group_shape = AsposeSlidesCloud::GroupShape.new
493
- AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, slide_index, group_shape, nil, nil, password, folder_name)
493
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, slide_index, group_shape, nil, nil, nil, password, folder_name)
494
494
 
495
495
  shape1 = AsposeSlidesCloud::Shape.new
496
496
  shape1.shape_type = "Rectangle"
@@ -511,9 +511,9 @@ describe 'UseCases' do
511
511
  shape3.width = 50
512
512
  shape3.height = 50
513
513
 
514
- AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, slide_index, shape1, nil, nil, password, folder_name, "", "1")
515
- AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, slide_index, shape2, nil, nil, password, folder_name, "", "1")
516
- AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, slide_index, shape3, nil, nil, password, folder_name, "", "1")
514
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, slide_index, shape1, nil, nil, nil, password, folder_name, "", "1")
515
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, slide_index, shape2, nil, nil, nil, password, folder_name, "", "1")
516
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, slide_index, shape3, nil, nil, nil, password, folder_name, "", "1")
517
517
 
518
518
  shapes = AsposeSlidesCloud::SpecUtils.testSlidesApi.get_shapes(file_name, slide_index, password, folder_name)
519
519
  expect(shapes.shapes_links.length).to eq(1)
@@ -609,5 +609,220 @@ describe 'UseCases' do
609
609
 
610
610
  response = AsposeSlidesCloud::SpecUtils.testSlidesApi.download_shape_from_dto(AsposeSlidesCloud::ShapeExportFormat::PNG, shape)
611
611
  end
612
+
613
+ it 'get shapes' do
614
+ folder_name = "TempSlidesSDK"
615
+ file_name = "test.pptx"
616
+ password = "password"
617
+ slide_index = 3
618
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
619
+ shapes = AsposeSlidesCloud::SpecUtils.testSlidesApi.get_shapes(file_name, slide_index, password, folder_name)
620
+ expect(shapes.shapes_links.length).to eq(2)
621
+ end
622
+
623
+ it 'get shapes by type' do
624
+ folder_name = "TempSlidesSDK"
625
+ file_name = "test.pptx"
626
+ password = "password"
627
+ slide_index = 3
628
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
629
+ shapes = AsposeSlidesCloud::SpecUtils.testSlidesApi.get_shapes(file_name, slide_index, password, folder_name, nil, 'Chart')
630
+ expect(shapes.shapes_links.length).to eq(2)
631
+ end
632
+
633
+ it 'get sub shapes' do
634
+ folder_name = "TempSlidesSDK"
635
+ file_name = "test.pptx"
636
+ password = "password"
637
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
638
+ shapes = AsposeSlidesCloud::SpecUtils.testSlidesApi.get_shapes(file_name, 1, password, folder_name, nil, nil, "4")
639
+ expect(shapes.shapes_links.length).to eq(2)
640
+ end
641
+
642
+ it 'get shape' do
643
+ folder_name = "TempSlidesSDK"
644
+ file_name = "test.pptx"
645
+ password = "password"
646
+ slide_index = 3
647
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
648
+ shape = AsposeSlidesCloud::SpecUtils.testSlidesApi.get_shape(file_name, slide_index, 1, password, folder_name)
649
+ expect(shape.type).to eq('Chart')
650
+ end
651
+
652
+ it 'get sub shape' do
653
+ folder_name = "TempSlidesSDK"
654
+ file_name = "test.pptx"
655
+ password = "password"
656
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
657
+ shape = AsposeSlidesCloud::SpecUtils.testSlidesApi.get_shape(file_name, 1, 4, password, folder_name, nil, "1")
658
+ expect(shape.type).to eq('Shape')
659
+ end
660
+
661
+ it 'smart art text formatting' do
662
+ folder_name = "TempSlidesSDK"
663
+ file_name = "test.pptx"
664
+ password = "password"
665
+ slide_index = 7
666
+ target_node_path = "1/nodes/2"
667
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
668
+ portion = AsposeSlidesCloud::Portion.new
669
+ portion.text = "New text"
670
+ portion.font_height = 24
671
+ portion.font_bold = 'True'
672
+ portion.spacing = 3
673
+ fill = AsposeSlidesCloud::SolidFill.new
674
+ fill.color = "#FFFFFF00"
675
+ portion.fill_format = fill
676
+ response = AsposeSlidesCloud::SpecUtils.testSlidesApi.update_portion(file_name, slide_index, 1, 1, 1, portion, password, folder_name, nil, target_node_path)
677
+ expect(response).not_to be_nil
678
+ expect(response.text).to eq(portion.text)
679
+ expect(response.font_height).to eq(portion.font_height)
680
+ expect(response.font_bold).to eq(portion.font_bold)
681
+ expect(response.spacing).to eq(portion.spacing)
682
+ expect(response.fill_format.color).to eq(fill.color)
683
+ end
684
+
685
+ it 'create sub shape' do
686
+ folder_name = "TempSlidesSDK"
687
+ file_name = "test.pptx"
688
+ password = "password"
689
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
690
+ dto = AsposeSlidesCloud::Shape.new
691
+ dto.shape_type = "Rectangle"
692
+ dto.x = 200
693
+ dto.y = 200
694
+ dto.width = 50
695
+ dto.height = 50
696
+ response = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 1, dto, nil, nil, nil, password, folder_name, nil, "4")
697
+ expect(response).to be_kind_of(AsposeSlidesCloud::Shape)
698
+ end
699
+
700
+ it 'update shape' do
701
+ folder_name = "TempSlidesSDK"
702
+ file_name = "test.pptx"
703
+ password = "password"
704
+ color = "#FFF5FF8A"
705
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
706
+ dto = AsposeSlidesCloud::Shape.new
707
+ dto.width = 200
708
+ dto.height = 200
709
+ fill = AsposeSlidesCloud::SolidFill.new
710
+ fill.color = color
711
+ dto.fill_format = fill
712
+ response = AsposeSlidesCloud::SpecUtils.testSlidesApi.update_shape(file_name, 1, 3, dto, password, folder_name)
713
+ expect(response).to be_kind_of(AsposeSlidesCloud::Shape)
714
+ expect(response.width).to eq(dto.width)
715
+ expect(response.height).to eq(dto.height)
716
+ expect(response.fill_format).to be_kind_of(AsposeSlidesCloud::SolidFill)
717
+ end
718
+
719
+ it 'update sub shape' do
720
+ folder_name = "TempSlidesSDK"
721
+ file_name = "test.pptx"
722
+ password = "password"
723
+ color = "#FFF5FF8A"
724
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
725
+ dto = AsposeSlidesCloud::Shape.new
726
+ dto.width = 200
727
+ dto.height = 200
728
+ fill = AsposeSlidesCloud::GradientFill.new
729
+ fill.shape = 'Linear'
730
+ fill.direction = 'FromCorner1'
731
+ stop1 = AsposeSlidesCloud::GradientFillStop.new
732
+ stop1.color = color
733
+ stop1.position = 0
734
+ stop2 = AsposeSlidesCloud::GradientFillStop.new
735
+ stop2.color = color
736
+ stop2.position = 1
737
+ fill.stops = [stop1, stop2]
738
+ dto.fill_format = fill
739
+ response = AsposeSlidesCloud::SpecUtils.testSlidesApi.update_shape(file_name, 1, 4, dto, password, folder_name, nil, "1")
740
+ expect(response).to be_kind_of(AsposeSlidesCloud::Shape)
741
+ expect(response.width).to eq(dto.width)
742
+ expect(response.height).to eq(dto.height)
743
+ expect(response.fill_format).to be_kind_of(AsposeSlidesCloud::GradientFill)
744
+ end
745
+
746
+ it 'delete shapes' do
747
+ folder_name = "TempSlidesSDK"
748
+ file_name = "test.pptx"
749
+ password = "password"
750
+ slide_index = 3
751
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
752
+ shapes = AsposeSlidesCloud::SpecUtils.testSlidesApi.delete_shapes(file_name, slide_index, nil, password, folder_name)
753
+ expect(shapes.shapes_links.length).to eq(0)
754
+ end
755
+
756
+ it 'delete shapes by indexes' do
757
+ folder_name = "TempSlidesSDK"
758
+ file_name = "test.pptx"
759
+ password = "password"
760
+ slide_index = 3
761
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
762
+ shapes = AsposeSlidesCloud::SpecUtils.testSlidesApi.delete_shapes(file_name, slide_index, [2], password, folder_name)
763
+ expect(shapes.shapes_links.length).to eq(1)
764
+ end
765
+
766
+ it 'delete sub shapes' do
767
+ folder_name = "TempSlidesSDK"
768
+ file_name = "test.pptx"
769
+ password = "password"
770
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
771
+ shapes = AsposeSlidesCloud::SpecUtils.testSlidesApi.delete_shapes(file_name, 1, nil, password, folder_name, nil, "4")
772
+ expect(shapes.shapes_links.length).to eq(0)
773
+ end
774
+
775
+ it 'delete sub shapes by indexes' do
776
+ folder_name = "TempSlidesSDK"
777
+ file_name = "test.pptx"
778
+ password = "password"
779
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
780
+ shapes = AsposeSlidesCloud::SpecUtils.testSlidesApi.delete_shapes(file_name, 1, [2], password, folder_name, nil, "4")
781
+ expect(shapes.shapes_links.length).to eq(1)
782
+ end
783
+
784
+ it 'delete shape' do
785
+ folder_name = "TempSlidesSDK"
786
+ file_name = "test.pptx"
787
+ password = "password"
788
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
789
+ shapes = AsposeSlidesCloud::SpecUtils.testSlidesApi.delete_shape(file_name, 1, 4, password, folder_name)
790
+ expect(shapes.shapes_links.length).to eq(3)
791
+ end
792
+
793
+ it 'delete sub shape' do
794
+ folder_name = "TempSlidesSDK"
795
+ file_name = "test.pptx"
796
+ password = "password"
797
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
798
+ shapes = AsposeSlidesCloud::SpecUtils.testSlidesApi.delete_shape(file_name, 1, 4, password, folder_name, nil, "1")
799
+ expect(shapes.shapes_links.length).to eq(1)
800
+ end
801
+
802
+ it "smart art node default paragraph format" do
803
+ folder_name = "TempSlidesSDK"
804
+ file_name = "test.pptx"
805
+ password = "password"
806
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
807
+ existing = AsposeSlidesCloud::SpecUtils.testSlidesApi.get_shape(file_name, 7, 1, password, folder_name)
808
+ paragraph_format = AsposeSlidesCloud::ParagraphFormat.new
809
+ bullet_fill = AsposeSlidesCloud::SolidFill.new
810
+ bullet_fill.color = "#FFFF0000"
811
+ paragraph_format.bullet_fill_format = bullet_fill
812
+ existing.nodes[0].default_paragraph_format = paragraph_format
813
+ updated = AsposeSlidesCloud::SpecUtils.testSlidesApi.update_shape(file_name, 7, 1, existing, password, folder_name)
814
+ expect(updated.nodes[0].default_paragraph_format).not_to be_nil
815
+ expect(updated.nodes[0].default_paragraph_format.bullet_fill_format.type).to eq("Solid")
816
+ expect(updated.nodes[0].default_paragraph_format.bullet_fill_format.color).to eq("#FFFF0000")
817
+ end
818
+
819
+ it "shape clone from slide" do
820
+ folder_name = "TempSlidesSDK"
821
+ file_name = "test.pptx"
822
+ password = "password"
823
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
824
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, 3, nil, 1, 1, nil, nil, password, folder_name)
825
+ expect(result).not_to be_nil
826
+ end
612
827
  end
613
828
  end
@@ -388,5 +388,26 @@ describe 'UseCases' do
388
388
 
389
389
  expect(result.items.length).to eq(1)
390
390
  end
391
+
392
+ it "import table from workbook" do
393
+ folder_name = "TempSlidesSDK"
394
+ file_name = "test.pptx"
395
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
396
+ source = File.binread("TestData/oleObject.xlsx")
397
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.import_table_from_workbook(
398
+ file_name, 9, "Sheet1", "A1:B5", source, nil, nil, nil, nil, "password", folder_name)
399
+ expect(result.type).to eq("Table")
400
+ end
401
+
402
+ it "import table from workbook by path" do
403
+ folder_name = "TempSlidesSDK"
404
+ file_name = "test.pptx"
405
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
406
+ source = File.binread("TestData/oleObject.xlsx")
407
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.upload_file(folder_name + "/oleObject.xlsx", source)
408
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.import_table_from_workbook(
409
+ file_name, 9, "Sheet1", "A1:B5", nil, nil, nil, folder_name + "/oleObject.xlsx", nil, "password", folder_name)
410
+ expect(result.type).to eq("Table")
411
+ end
391
412
  end
392
413
  end
@@ -67,7 +67,7 @@ describe 'UseCases' do
67
67
  #threeDFormat.camera_type = "PerspectiveContrastingRightFacing"
68
68
  dto.text_frame_format.three_d_format = threeDFormat;
69
69
 
70
- result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, slide_index, dto, nil, nil, password, folder_name)
70
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, slide_index, dto, nil, nil, nil, password, folder_name)
71
71
  expect(result).to be_kind_of(AsposeSlidesCloud::Shape)
72
72
  end
73
73
 
@@ -97,7 +97,7 @@ describe 'UseCases' do
97
97
  solidFill.color = "#FF0000"
98
98
  dto.text_frame_format.default_paragraph_format.bullet_fill_format = solidFill
99
99
 
100
- result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, slide_index, dto, nil, nil, password, folder_name)
100
+ result = AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, slide_index, dto, nil, nil, nil, password, folder_name)
101
101
  expect(result).to be_kind_of(AsposeSlidesCloud::Shape)
102
102
  end
103
103
  end
@@ -0,0 +1,67 @@
1
+ =begin
2
+ Copyright (c) 2019 Aspose Pty Ltd
3
+
4
+ Permission is hereby granted, free of charge, to any person obtaining a copy
5
+ of this software and associated documentation files (the "Software"), to deal
6
+ in the Software without restriction, including without limitation the rights
7
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8
+ copies of the Software, and to permit persons to whom the Software is
9
+ furnished to do so, subject to the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be included in all
12
+ copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20
+ SOFTWARE.
21
+ =end
22
+
23
+ require 'spec_helper'
24
+
25
+ describe 'UseCases' do
26
+ describe 'Video' do
27
+ it 'caption tracks' do
28
+ folder_name = "TempSlidesSDK"
29
+ file_name = "test.pptx"
30
+ password = "password"
31
+ slide_index = 3
32
+ shape_index = 3
33
+ track1_label = "track1"
34
+ track2_label = "track2"
35
+ track1_data = "WEBVTT\n\n00:00:00.000--> 00:00:10.000\nCaption 1 text."
36
+ track2_data = "WEBVTT\n\n00:00:00.000--> 00:00:10.000\nCaption 2 text."
37
+
38
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.copy_file("TempTests/" + file_name, folder_name + "/" + file_name)
39
+
40
+ dto = AsposeSlidesCloud::VideoFrame.new
41
+ dto.base64_data = "bXAzc2FtcGxl"
42
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.create_shape(file_name, slide_index, dto, nil, nil, nil, password, folder_name)
43
+
44
+ captions = AsposeSlidesCloud::SpecUtils.testSlidesApi.get_caption_tracks(file_name, slide_index, shape_index, nil, password, folder_name)
45
+ expect(captions.items.length).to eq(0)
46
+
47
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.create_caption_track(file_name, slide_index, shape_index, track1_label, track1_data, password, folder_name)
48
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.create_caption_track(file_name, slide_index, shape_index, track2_label, track2_data, password, folder_name)
49
+ captions = AsposeSlidesCloud::SpecUtils.testSlidesApi.get_caption_tracks(file_name, slide_index, shape_index, true, password, folder_name)
50
+ expect(captions.items.length).to eq(2)
51
+ expect(captions.items[0].label).to eq(track1_label)
52
+ expect(captions.items[0].data_as_string).to eq(track1_data)
53
+ expect(captions.items[1].label).to eq(track2_label)
54
+ expect(captions.items[1].data_as_string).to eq(track2_data)
55
+
56
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.delete_caption_track(file_name, slide_index, shape_index, 1, password, folder_name)
57
+ captions = AsposeSlidesCloud::SpecUtils.testSlidesApi.get_caption_tracks(file_name, slide_index, shape_index, false, password, folder_name)
58
+ expect(captions.items.length).to eq(1)
59
+ expect(captions.items[0].label).to eq(track2_label)
60
+ expect(captions.items[0].data_as_string).to eq(nil)
61
+
62
+ AsposeSlidesCloud::SpecUtils.testSlidesApi.delete_caption_tracks(file_name, slide_index, shape_index, password, folder_name)
63
+ captions = AsposeSlidesCloud::SpecUtils.testSlidesApi.get_caption_tracks(file_name, slide_index, shape_index, true, password, folder_name)
64
+ expect(captions.items.length).to eq(0)
65
+ end
66
+ end
67
+ end
data/testRules.json CHANGED
@@ -99,6 +99,7 @@
99
99
  { "Value": "NewTestFolder", "Parameter": "Path", "Method": "CreateFolder" },
100
100
  { "Value": "TempSlidesSDK", "Parameter": "Path", "Method": "DeleteFolder" },
101
101
  { "Value": "TempSlidesSDK/changedtest.pptx", "Parameter": "DestPath" },
102
+ { "Value": "TempSlidesSDK/oleObject.xlsx", "InvalidValue": "invalid%v", "Parameter": "workbookPath" },
102
103
  { "Value": "TempSlidesSDK/test.pptx", "InvalidValue": "invalid%v", "Parameter": "CloneFrom" },
103
104
  { "Value": "TempSlidesSDK/test.pptx", "InvalidValue": "invalid%v", "Parameter": "Source" },
104
105
  { "Value": "TempSlidesSDK/out.pdf", "Parameter": "OutPath" },
@@ -111,6 +112,9 @@
111
112
  { "Value": "Arial", "Parameter": "FontName" },
112
113
  { "Value": "Calibri", "Parameter": "FontName", "Method": "/SetEmbeddedFont/" },
113
114
  { "Value": "Calibri Light", "Parameter": "FontName", "Method": "/DeleteEmbeddedFont/" },
115
+ { "Value": "Sheet1", "Parameter": "WorksheetName" },
116
+ { "Value": "A1:C10", "Parameter": "CellRange" },
117
+ { "Value": null, "Parameter": "ChartName" },
114
118
  { "Value": null, "Parameter": "Author" },
115
119
  { "Value": "#FF0000dd", "Parameter": "Color" },
116
120
  { "Value": "pdf", "Parameter": "Format" },
@@ -231,6 +235,9 @@
231
235
  { "Message": "Placeholder with index %v doesn't exist.", "Parameter": "PlaceholderIndex" },
232
236
  { "Message": " is out of bounds. Valid index range is between ", "Type": "int[]" },
233
237
  { "Code": 404, "Message": "is not found", "Parameter": "FontNames" },
238
+ { "Message": "worksheet in the workbook", "Parameter": "WorksheetName" },
239
+ { "Message": "cell range", "Parameter": "CellRange" },
240
+ { "Message": "index on the worksheet", "Parameter": "ChartIndex" },
234
241
  { "Message": "Invalid value for ", "Parameter": "SlideType" },
235
242
  { "Message": "Invalid value for ", "Parameter": "Format" },
236
243
  { "Message": " required parameter", "Type": "stream" },
@@ -239,11 +246,7 @@
239
246
  { "Message": "Error processing presentation ", "Parameter": "Files" },
240
247
  { "Message": " required parameter", "Type": "model" },
241
248
  { "Message": "Failed to load the presentation", "Parameter": "Request", "Method": "/Merge.*Online/" },
242
- { "Message": "Invalid Request", "Parameter": "VersionId" },
243
- { "Message": "Invalid version", "Parameter": "VersionId", "Method": "Download" },
244
- { "Message": "AmazonS3 Storage exception", "Parameter": "VersionId", "Method": "ObjectExists" },
245
- { "Message": "Invalid version id specified", "Parameter": "VersionId", "Method": "DeleteFile" },
246
- { "Message": "Invalid version id specified", "Parameter": "VersionId", "Method": "DownloadFile" },
249
+ { "Message": "AmazonS3 Storage exception", "Parameter": "VersionId" },
247
250
  { "Message": "AmazonS3 Storage exception", "Parameter": "SrcPath", "Method": "CopyFile" },
248
251
  { "Message": "Error parsing XML template data", "Parameter": "Data" },
249
252
  { "Message": "Color must be in format #FF000000", "Parameter": "Color" }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aspose_slides_cloud
3
3
  version: !ruby/object:Gem::Version
4
- version: 26.1.0
4
+ version: 26.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Victor Putrov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-01-24 00:00:00.000000000 Z
11
+ date: 2026-06-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -577,9 +577,11 @@ files:
577
577
  - spec/use_cases/abstract_class_spec.rb
578
578
  - spec/use_cases/animation_spec.rb
579
579
  - spec/use_cases/async_api_spec.rb
580
+ - spec/use_cases/audio_spec.rb
580
581
  - spec/use_cases/auth_spec.rb
581
582
  - spec/use_cases/chart_spec.rb
582
583
  - spec/use_cases/comment_spec.rb
584
+ - spec/use_cases/convert_spec.rb
583
585
  - spec/use_cases/create_spec.rb
584
586
  - spec/use_cases/font_spec.rb
585
587
  - spec/use_cases/header_footer_spec.rb
@@ -605,10 +607,11 @@ files:
605
607
  - spec/use_cases/text_spec.rb
606
608
  - spec/use_cases/timeout_spec.rb
607
609
  - spec/use_cases/vba_spec.rb
610
+ - spec/use_cases/video_spec.rb
608
611
  - spec/use_cases/watermark_spec.rb
609
612
  - testConfig.json
610
613
  - testRules.json
611
- homepage: https://github.com/aspose-slides-cloud/aspose-slides-cloud-ruby
614
+ homepage: https://github.com/aspose-slides-cloud/Aspose.Slides-Cloud-SDK-for-Ruby
612
615
  licenses:
613
616
  - MIT
614
617
  metadata: {}
@@ -639,9 +642,11 @@ test_files:
639
642
  - spec/use_cases/abstract_class_spec.rb
640
643
  - spec/use_cases/animation_spec.rb
641
644
  - spec/use_cases/async_api_spec.rb
645
+ - spec/use_cases/audio_spec.rb
642
646
  - spec/use_cases/auth_spec.rb
643
647
  - spec/use_cases/chart_spec.rb
644
648
  - spec/use_cases/comment_spec.rb
649
+ - spec/use_cases/convert_spec.rb
645
650
  - spec/use_cases/create_spec.rb
646
651
  - spec/use_cases/font_spec.rb
647
652
  - spec/use_cases/header_footer_spec.rb
@@ -667,4 +672,5 @@ test_files:
667
672
  - spec/use_cases/text_spec.rb
668
673
  - spec/use_cases/timeout_spec.rb
669
674
  - spec/use_cases/vba_spec.rb
675
+ - spec/use_cases/video_spec.rb
670
676
  - spec/use_cases/watermark_spec.rb