@@ -594,3 +594,248 @@ func TestRemoveAllDir(t *testing.T) {
594
594
t .Errorf ("Directory should have been removed: %s" , testDir )
595
595
}
596
596
}
597
+
598
+ func TestFileSize (t * testing.T ) {
599
+ fm := New ()
600
+ testDir , err := os .MkdirTemp ("" , "testFileSize" )
601
+ if err != nil {
602
+ t .Fatalf ("Failed to create temp dir: %v" , err )
603
+ }
604
+ defer os .RemoveAll (testDir )
605
+
606
+ testFile := filepath .Join (testDir , "testFile.txt" )
607
+ data := []byte ("test data" )
608
+ if err := os .WriteFile (testFile , data , 0644 ); err != nil {
609
+ t .Fatalf ("Failed to write test file: %v" , err )
610
+ }
611
+
612
+ size , err := fm .FileSizeBytes (testFile )
613
+ if err != nil {
614
+ t .Fatalf ("Failed to get file size: %v" , err )
615
+ }
616
+
617
+ if size != int64 (len (data )) {
618
+ t .Errorf ("Expected file size: %d, got: %d" , len (data ), size )
619
+ }
620
+ }
621
+
622
+ func TestCompareSize (t * testing.T ) {
623
+ fm := New ()
624
+ testDir , err := os .MkdirTemp ("" , "testCompareSize" )
625
+ if err != nil {
626
+ t .Fatalf ("Failed to create temp dir: %v" , err )
627
+ }
628
+ defer os .RemoveAll (testDir )
629
+
630
+ testFile1 := filepath .Join (testDir , "testFile1.txt" )
631
+ data1 := []byte ("test data" )
632
+ if err := os .WriteFile (testFile1 , data1 , 0644 ); err != nil {
633
+ t .Fatalf ("Failed to write test file1: %v" , err )
634
+ }
635
+
636
+ testFile2 := filepath .Join (testDir , "testFile2.txt" )
637
+ data2 := []byte ("test data" )
638
+ if err := os .WriteFile (testFile2 , data2 , 0644 ); err != nil {
639
+ t .Fatalf ("Failed to write test file2: %v" , err )
640
+ }
641
+
642
+ ok , err := fm .CompareSize (testFile1 , testFile2 )
643
+ if err != nil {
644
+ t .Fatalf ("Failed to compare file sizes: %v" , err )
645
+ }
646
+
647
+ if ! ok {
648
+ t .Errorf ("File sizes should match: %s, %s" , testFile1 , testFile2 )
649
+ }
650
+
651
+ }
652
+
653
+ func TestReadFileLines (t * testing.T ) {
654
+ fm := New ()
655
+ testDir , err := os .MkdirTemp ("" , "testReadFileLines" )
656
+ if err != nil {
657
+ t .Fatalf ("Failed to create temp dir: %v" , err )
658
+ }
659
+ defer os .RemoveAll (testDir )
660
+
661
+ testFile := filepath .Join (testDir , "testFile.txt" )
662
+ data := []byte ("line1\n line2\n line3" )
663
+ if err := os .WriteFile (testFile , data , 0644 ); err != nil {
664
+ t .Fatalf ("Failed to write test file: %v" , err )
665
+ }
666
+
667
+ lines , err := fm .ReadFileLines (testFile )
668
+ if err != nil {
669
+ t .Fatalf ("Failed to read file lines: %v" , err )
670
+ }
671
+
672
+ expectedLines := []string {"line1" , "line2" , "line3" }
673
+ if len (lines ) != len (expectedLines ) {
674
+ t .Fatalf ("Expected %d lines, got %d" , len (expectedLines ), len (lines ))
675
+ }
676
+
677
+ for i , line := range lines {
678
+ if line != expectedLines [i ] {
679
+ t .Errorf ("Expected line: %s, got: %s" , expectedLines [i ], line )
680
+ }
681
+ }
682
+
683
+ }
684
+
685
+ func TestReadFileLinesBytes (t * testing.T ) {
686
+ fm := New ()
687
+ testDir , err := os .MkdirTemp ("" , "testReadFileLinesBytes" )
688
+ if err != nil {
689
+ t .Fatalf ("Failed to create temp dir: %v" , err )
690
+ }
691
+ defer os .RemoveAll (testDir )
692
+
693
+ testFile := filepath .Join (testDir , "testFile.txt" )
694
+ data := []byte ("line1\n line2\n line3" )
695
+ if err := os .WriteFile (testFile , data , 0644 ); err != nil {
696
+ t .Fatalf ("Failed to write test file: %v" , err )
697
+ }
698
+
699
+ lines , err := fm .ReadFileLinesBytes (testFile )
700
+ if err != nil {
701
+ t .Fatalf ("Failed to read file lines: %v" , err )
702
+ }
703
+
704
+ expectedLines := [][]byte {[]byte ("line1" ), []byte ("line2" ), []byte ("line3" )}
705
+ if len (lines ) != len (expectedLines ) {
706
+ t .Fatalf ("Expected %d lines, got %d" , len (expectedLines ), len (lines ))
707
+ }
708
+
709
+ for i , line := range lines {
710
+ if string (line ) != string (expectedLines [i ]) {
711
+ t .Errorf ("Expected line: %s, got: %s" , expectedLines [i ], line )
712
+ }
713
+ }
714
+ }
715
+
716
+ func TestReadFileLinesDelimiter (t * testing.T ) {
717
+ fm := New ()
718
+ testDir , err := os .MkdirTemp ("" , "testReadFileLinesDelimiter" )
719
+ if err != nil {
720
+ t .Fatalf ("Failed to create temp dir: %v" , err )
721
+ }
722
+ defer os .RemoveAll (testDir )
723
+
724
+ testFile := filepath .Join (testDir , "testFile.txt" )
725
+ data := []byte ("line1\n line2\n line3" )
726
+ if err := os .WriteFile (testFile , data , 0644 ); err != nil {
727
+ t .Fatalf ("Failed to write test file: %v" , err )
728
+ }
729
+
730
+ lines , err := fm .ReadFileLines (testFile , SLASH_N )
731
+ if err != nil {
732
+ t .Fatalf ("Failed to read file lines: %v" , err )
733
+ }
734
+
735
+ expectedLines := []string {"line1" , "line2" , "line3" }
736
+ if len (lines ) != len (expectedLines ) {
737
+ t .Fatalf ("Expected %d lines, got %d" , len (expectedLines ), len (lines ))
738
+ }
739
+
740
+ for i , line := range lines {
741
+ if line != expectedLines [i ] {
742
+ t .Errorf ("Expected line: %s, got: %s" , expectedLines [i ], line )
743
+ }
744
+ }
745
+ }
746
+
747
+ func TestFileSizeMB (t * testing.T ) {
748
+ fm := New ()
749
+ testDir , err := os .MkdirTemp ("" , "testFileSizeMB" )
750
+ if err != nil {
751
+ t .Fatalf ("Failed to create temp dir: %v" , err )
752
+ }
753
+ defer os .RemoveAll (testDir )
754
+
755
+ testFile := filepath .Join (testDir , "testFile.txt" )
756
+ data := []byte ("test data" )
757
+ if err := os .WriteFile (testFile , data , 0644 ); err != nil {
758
+ t .Fatalf ("Failed to write test file: %v" , err )
759
+ }
760
+
761
+ size , err := fm .FileSizeMB (testFile )
762
+ if err != nil {
763
+ t .Fatalf ("Failed to get file size: %v" , err )
764
+ }
765
+
766
+ if size != 0 {
767
+ t .Errorf ("Expected file size: 0 MB, got: %d MB" , size )
768
+ }
769
+ }
770
+
771
+ func TestFileSizeGB (t * testing.T ) {
772
+ fm := New ()
773
+ testDir , err := os .MkdirTemp ("" , "testFileSizeGB" )
774
+ if err != nil {
775
+ t .Fatalf ("Failed to create temp dir: %v" , err )
776
+ }
777
+ defer os .RemoveAll (testDir )
778
+
779
+ testFile := filepath .Join (testDir , "testFile.txt" )
780
+ data := []byte ("test data" )
781
+ if err := os .WriteFile (testFile , data , 0644 ); err != nil {
782
+ t .Fatalf ("Failed to write test file: %v" , err )
783
+ }
784
+
785
+ size , err := fm .FileSizeGB (testFile )
786
+ if err != nil {
787
+ t .Fatalf ("Failed to get file size: %v" , err )
788
+ }
789
+
790
+ if size != 0 {
791
+ t .Errorf ("Expected file size: 0 GB, got: %d GB" , size )
792
+ }
793
+ }
794
+
795
+ func TestFileSizeKB (t * testing.T ) {
796
+ fm := New ()
797
+ testDir , err := os .MkdirTemp ("" , "testFileSizeKB" )
798
+ if err != nil {
799
+ t .Fatalf ("Failed to create temp dir: %v" , err )
800
+ }
801
+ defer os .RemoveAll (testDir )
802
+
803
+ testFile := filepath .Join (testDir , "testFile.txt" )
804
+ data := []byte ("test data" )
805
+ if err := os .WriteFile (testFile , data , 0644 ); err != nil {
806
+ t .Fatalf ("Failed to write test file: %v" , err )
807
+ }
808
+
809
+ size , err := fm .FileSizeKB (testFile )
810
+ if err != nil {
811
+ t .Fatalf ("Failed to get file size: %v" , err )
812
+ }
813
+
814
+ if size != 0 {
815
+ t .Errorf ("Expected file size: 0 KB, got: %d KB" , size )
816
+ }
817
+ }
818
+
819
+ func TestFileSizeTB (t * testing.T ) {
820
+ fm := New ()
821
+ testDir , err := os .MkdirTemp ("" , "testFileSizeTB" )
822
+ if err != nil {
823
+ t .Fatalf ("Failed to create temp dir: %v" , err )
824
+ }
825
+ defer os .RemoveAll (testDir )
826
+
827
+ testFile := filepath .Join (testDir , "testFile.txt" )
828
+ data := []byte ("test data" )
829
+ if err := os .WriteFile (testFile , data , 0644 ); err != nil {
830
+ t .Fatalf ("Failed to write test file: %v" , err )
831
+ }
832
+
833
+ size , err := fm .FileSizeTB (testFile )
834
+ if err != nil {
835
+ t .Fatalf ("Failed to get file size: %v" , err )
836
+ }
837
+
838
+ if size != 0 {
839
+ t .Errorf ("Expected file size: 0 TB, got: %d TB" , size )
840
+ }
841
+ }
0 commit comments